COA Notes
Hardwired control unit design, state machine implementation, advantages and limitations.
Introduction
A hardwired control unit generates control signals using fixed combinational and sequential logic circuits. There's no memory, no microprogram — just gates, flip-flops, and decoders wired together to produce the exact signals needed at each step of every instruction. It's like a complex mechanical clock: every gear (gate) is designed to produce exactly the right movement (signal) at exactly the right time. Fast and efficient, but changing the design means redesigning the hardware.
Basic Architecture
Components
1. Timing Generator (Ring Counter/Sequence Counter)
Produces timing signals T0, T1, T2, ... that mark each micro-step:
| Clock cycle 1 | T0 = 1, T1 = 0, T2 = 0, T3 = 0, ... |
| Clock cycle 2 | T0 = 0, T1 = 1, T2 = 0, T3 = 0, ... |
| Clock cycle 3 | T0 = 0, T1 = 0, T2 = 1, T3 = 0, ... |
Resets after the last step of each instruction.
2. Instruction Decoder
Decodes the opcode field of IR into one-hot signals:
- n-bit opcode → 2ⁿ output lines, exactly one active at a time
- Example: 4-bit opcode → 16 instruction signals (ADD, SUB, LOAD, STORE, etc.)
3. Control Logic Matrix
Combinational logic that combines timing, instruction, and flag inputs to produce each control signal:
Each control signal is defined by a Boolean equation specifying exactly when it should be active.
Design Process
Step 1: Define the RTL for each instruction
| ADD R1,R2 | T0: MAR←PC |
| T1 | MBR←M[MAR], PC←PC+1 |
| T2 | IR←MBR |
| T3 | R1←R1+R2 |
| LOAD R1,[X] | T0: MAR←PC |
| T1 | MBR←M[MAR], PC←PC+1 |
| T2 | IR←MBR |
| T3 | MAR←IR(addr) |
| T4 | MBR←M[MAR] |
| T5 | R1←MBR |
Step 2: Derive control signals from RTL
For each control signal, identify WHEN it's needed:
| MAR_in | Needed at T0(all instructions) + T3(LOAD) + T3(STORE) |
| PC_out | Needed at T0(all instructions) |
| MEM_read | Needed at T1(all) + T4(LOAD) |
| ALU_ADD | Needed at T3(ADD instruction) |
Step 3: Write Boolean equations
Step 4: Implement with gates
Each equation becomes a logic circuit:
This is literally an OR gate fed by T0 and two AND gates.
Timing Diagram Example
For ADD R1, R2 instruction:
| Clock | ┐ ┌──┐ ┌──┐ ┌──┐ ┌──┐ ┌ |
| T0 | ████ |
| T1 | ████ |
| T2 | ████ |
| T3 | ████ |
| PC_out | ████ |
| MAR_in | ████ |
| MEM_read | ████ |
| IR_in | ████ |
| ALU_ADD | ████ |
| R1_load | ████ |
Advantages of Hardwired Control
- Speed: No memory access for control signals — pure combinational logic delay
- Efficiency: Minimal hardware for simple instruction sets
- Deterministic: Fixed timing, no variability
- Power efficient: No control memory to power
Disadvantages of Hardwired Control
- Inflexible: Adding new instructions requires redesigning logic
- Complex for large ISAs: Hundreds of instructions → enormous logic equations
- Difficult to debug: Logic errors hard to trace
- Long design time: Must be done manually or with specialized CAD tools
- Bug fixes: Require new silicon (can't patch)
Where Hardwired Control is Used
- RISC processors: Simple, regular instruction sets with few formats (ARM, MIPS, RISC-V)
- High-performance designs: Where maximum speed is needed
- Embedded processors: Where simplicity and deterministic timing matter
- GPU shader units: Simple, repetitive operations at high speed
Hardwired vs Microprogrammed Comparison
| Feature | Hardwired | Microprogrammed |
|---|---|---|
| Speed | Faster | Slower (memory read per step) |
| Flexibility | Rigid | Easily modifiable |
| Design complexity | Increases with ISA size | Constant (just add microcode) |
| Best for | RISC, simple ISA | CISC, complex ISA |
| Bug fixing | New chip required | Update microcode ROM |
| Cost for simple ISA | Lower | Higher (needs control memory) |
| Cost for complex ISA | Much higher | Lower |
Key Takeaways
- Hardwired control uses combinational logic to directly generate control signals
- Inputs: timing counter (T-states), instruction decoder, and condition flags
- Each control signal is a Boolean function of these inputs
- Design process: RTL specification → signal identification → Boolean equations → gate implementation
- Advantages: maximum speed, efficient for simple instruction sets
- Disadvantages: inflexible, difficult to modify, impractical for complex ISAs
- Dominant in modern RISC processors where speed trumps flexibility
Exam Focus
Revise definitions, diagrams, examples, and short-answer points for Hardwired Control Unit.
Interview Use
Prepare one clear explanation, one practical example, and one common mistake for this Computer Organization & Architecture topic.
Search Terms
computer-organization, computer organization & architecture, computer, organization, cpu, hardwired, control, unit
Related Computer Organization & Architecture Topics