Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

1And in Conclusion\dots

In order to pipeline, we separate the datapath into 5 discrete stages, each completing a different function and accessing different resources on the way to executing an entire instruction. Recall the five stages:

These 5 stages, divided by registers, allow operating different stages of the datapath in the same clock period.

"Combined summary diagram of five-stage datapath and associated pipelined control paths."

Figure 6:Five-stage RISC-V processor diagram: datapath and control.

The RISC-V ISA is designed for pipelining:

2Textbook Readings

P&H 4.6, 4.7, 4.8

3Additional References

4Exercises

Check your knowledge!

4.1Short Exercises

Solution to Exercise 1 #

False. Because we insert registers between each stage in the datapath, the time it takes for an instruction to finish execution through the 5 stages will be longer than the single-cycle datapath. A single instruction will take multiple clock cycles to get through all the stages, with the clock cycle based on the critical path (the stage with the longest timing).

Solution to Exercise 2 #

True. Recall that throughput is the number of instructions processed per unit time. Pipelining results in a higher throughput because multiple instructions can be in a different stage of the datapath at the same time.