Skip to main content
← All posts

Part 3: Processor Datapath Design: Single-Cycle, Multi-Cycle & Control Units

Md. Harun-Or-RoshidNov 5, 20263 min readArticle
Part 3: Processor Datapath Design: Single-Cycle, Multi-Cycle & Control Units

Processor Control & Data Routing

A central processing unit is conceptually partitioned into two complementary subsystems: the Datapath (the collection of state storage elements, ALUs, multiplexers, and buses that manipulate operational data) and the Control Unit (the supervisory finite-state engine that asserts control signals directing the datapath). How an instruction is scheduled across clock cycles defines the CPU architecture: from Single-Cycle Datapaths where every instruction completes in one elongated clock period, to Multi-Cycle Datapaths that decompose execution into distinct functional phases. In this article, we dissect datapath topologies and evaluate Hardwired vs Microprogrammed control units.

1. State Elements & Combinational Blocks

A datapath is constructed from two distinct classes of digital logic components:

  • State (Sequential) Elements: Storage devices whose outputs reflect internal memory latched on active clock edges (D flip-flops). Key state elements include the Program Counter (PC), the Register File (dual-read, single-write multiport memory), and Data Memory (RAM).
  • Combinational Elements: Logic blocks that operate purely on current inputs without memory (e.g. ALU, Adders, Multiplexers, and Sign-Extension Units).

2. Single-Cycle Datapath: Strengths & Inefficiencies

In a Single-Cycle Processor, every instruction begins and finishes its complete execution lifecycle (Instruction Fetch → Decode → ALU → Memory Access → Register Write-Back) within exactly one clock cycle:

The Clock Period Dilemma: In synchronous digital systems, the master clock period must be engineered to accommodate the critical path—the longest possible propagation delay required by the slowest instruction in the Instruction Set Architecture (ISA).

Instruction TypeI-Mem (Fetch)Reg ReadALU OpD-Mem (RAM)Reg WriteTotal Latency
R-type (ADD, SUB)200 ps100 ps200 ps0 ps (idle)100 ps600 ps
Branch (BEQ)200 ps100 ps200 ps0 ps (idle)0 ps500 ps
Load Word (LW)200 ps100 ps200 ps200 ps100 ps800 ps (Critical Path)

Because Load Word (LW) requires 800 ps, the clock period for every instruction must be set to at least 800 ps (capping frequency at 1.25 GHz). Faster instructions (such as branches taking only 500 ps) are forced to waste 300 ps idling.

3. Multi-Cycle Datapath: Resource Sharing & Variable CPI

The Multi-Cycle Datapath breaks down instruction execution into multiple shorter clock cycles (e.g. 200 ps each). An instruction executes across only as many cycles as it strictly requires:

  • Branch instructions complete in 3 cycles ($3 \times 200\text{ ps} = 600\text{ ps}$).
  • R-type instructions complete in 4 cycles ($4 \times 200\text{ ps} = 800\text{ ps}$).
  • Load instructions complete in 5 cycles ($5 \times 200\text{ ps} = 1000\text{ ps}$).

Hardware Reuse: Because different functional units are active in different clock cycles, a multi-cycle datapath can share a single unified memory block for both instructions and data, and reuse a single ALU for both PC incrementing and arithmetic, substantially reducing chip die area.

4. Control Unit Synthesis: Hardwired vs. Microprogrammed

Hardwired Control (RISC)

Implemented as fixed combinational logic networks (PLA, decoders, logic gates). The instruction opcode directly drives multiplexers and ALU function select lines with zero memory latency.

Advantage: Maximum execution speed; ideal for RISC processors.

Microprogrammed Control (CISC)

Originated by Maurice Wilkes in 1951. Control signals are stored as binary bit patterns ("microinstructions") in a dedicated high-speed Control Store (ROM). Complex CISC instructions trigger a microcode routine that emits control signals sequentially.

Advantage: Supreme flexibility; permits CPU security patches via firmware microcode updates.

Share:
Share on X
Share on LinkedIn
Share on Facebook
Share on Reddit
Share on WhatsApp
Share on Telegram
Copy link

Related reading