RTUEE / EC / EEEYr 2024 · Sem 62024

Q3Computer Architecture

Question

4 marks

Q.3. Differentiate hard wired control unit with microprogrammed control unit in detail.

Answer

A hardwired control unit generates control signals using fixed combinational logic circuits (fast but inflexible), while a microprogrammed control unit generates control signals by sequentially reading pre-stored microinstructions from a control memory (control store), offering greater flexibility and easier modification/debugging at the cost of somewhat lower speed due to the additional control-memory-access overhead.

Hardwired Control Unit: implements the control logic using fixed combinational and sequential logic circuits (built from gates, flip-flops, and counters) specifically designed to generate the correct sequence of control signals for each possible instruction and processor state; the mapping from instruction opcode and processor state to the required control signals is essentially 'burned into' the physical circuit design.

Microprogrammed Control Unit: generates control signals by sequentially fetching and executing a series of microinstructions stored in a dedicated, fast, read-only (or occasionally writable) control memory called the control store; each machine-level instruction, upon being decoded, triggers execution of its own corresponding sequence (a 'microprogram') of microinstructions, with each microinstruction directly specifying the particular set of control signals to be asserted during that specific micro-step, and a microprogram sequencer (as discussed further in another question) determining which microinstruction address to fetch next.

  • Speed: hardwired control is generally faster, since control signals are generated directly and immediately by combinational logic, without the additional memory-access delay inherent in fetching each microinstruction from the control store.
  • Flexibility: microprogrammed control is far more flexible, since modifying or adding to the processor's instruction set (or fixing a control-logic bug) can often be accomplished simply by updating the microprogram stored in the control store, without needing to redesign the underlying hardware circuitry; hardwired control requires a complete hardware redesign for any such change.
  • Design complexity: hardwired control unit design becomes disproportionately complex and difficult to design/verify correctly as the instruction set grows larger and more complex (a significant limitation for rich, CISC-style instruction sets); microprogrammed control unit design scales more gracefully to larger, more complex instruction sets, since each instruction's behavior is expressed as a relatively straightforward sequential microprogram rather than requiring entirely new combinational logic.
  • Cost and chip area: hardwired control, once designed, can potentially require less chip area for very simple instruction sets (no separate control-store memory needed); microprogrammed control requires additional chip area for the control-store memory itself, though this becomes a smaller relative overhead as overall chip complexity increases.
  • Typical application: hardwired control is generally preferred for simpler, high-performance RISC processors, where speed is paramount and the instruction set is deliberately kept small and simple; microprogrammed control has historically been strongly associated with complex CISC processors, where the flexibility to support a large, complex instruction set outweighs the modest speed penalty of the extra control-store access step.

In modern processor design, many high-performance CISC processors (such as x86 implementations) actually use a hybrid approach — a microprogrammed control mechanism to decode and sequence the more complex, less frequently used instructions, combined with hardwired control logic (or hardwired-generated micro-operation sequences) for the most common, performance-critical simple instructions, gaining the flexibility benefit of microprogramming for the full instruction set while still achieving near-hardwired speed for the most frequently executed instruction types.

Back to Paper