目录 ← 首页
CS61C

Summary

And in Conclusion\dots

Our single-cycle datapath is a synchronous digital system that has the capabilities of executing RISC-V instructions in one cycle each. It is divided into multiple stages of execution, where each stage is responsible for a completing a certain task.

  1. IF Instruction Fetch:
    • Send address to the instruction memory (IMEM), and read IMEM at that address.
    • Hardware units: PC register, +4 adder, PCSel mux, IMEM
  2. ID Instruction Decode:
    • Generate control signals from the instruction bits, generate the immediate, and read registers from the RegFile.
    • Hardware units: RegFile, ImmGen
  3. EX Execute:
    • Perform ALU operations, and do branch comparison.
    • Hardware units: ASel mux, BSel mux, branch comparator, ALU
  4. MEM Memory
    • Read from or write to the data memory (DMEM).
    • Hardware units: DMEM
  5. WB Writeback
    • Write back either PC + 4, the result of the ALU operation, or data from memory to the RegFile.
    • Hardware units: WBSel mux, RegFile

The critical path changes based on instruction. Not all instructions use all hardware units, and therefore not all instructions are active in all five phases of execution (“stages” is the terminology we use for pipelined processors).

The controller (e.g., control logic subcircuit) specifies how to execute instructions and it is implemented as ROM (read-only-memory) or as logic gates.

Textbook Readings

P&H 4.1, 4.3, 4.4, 4.5

Exercises