Design a Simple Pipelined CPU
摘要
This chapter extends the single-cycle CPU into a pipelined design. It covers pipeline stage division, interstage buffering, and handling hazards like data dependencies and control conflicts. Techniques such as stalling and forwarding are introduced to resolve pipeline stalls. Advanced topics include clock frequency optimization, branch prediction, and debugging methods using trace comparison. Practical tasks focus on implementing non-hazard-aware pipelines, stalling mechanisms, and forwarding logic.