Skip to content
Related Articles

Related Articles

Differences between Single Cycle and Multiple Cycle Datapath

Improve Article
Save Article
Like Article
  • Difficulty Level : Basic
  • Last Updated : 31 Mar, 2022

1. Single Cycle Datapaths : Single Datapaths is equivalent to the original single-cycle datapath The data memory has only one Address input. The actual memory operation can be determined from the MemRead and MemWrite control signals. There are separate memories for instructions and data. There are 2 adders for PC-based computations and one ALU. The control signals are the same. 2. Multiple Cycle Datapaths : Multi-cycle datapaths break up instructions into separate steps. Each step takes a single clock cycle Each functional unit can be used more than once in an instruction, as long as it is used in different clock cycles. It reduces the amount of hardware needed. It reduces average instruction time. Differences between Single Cycle and Multiple Cycle Datapath :

S.No.Single Cycle DatapathMultiple Cycle Datapath
1Instructions are not subdivided.Instructions are divided into arbitrary number of steps.
2Clock cycles are long enough for the lowest instruction.Clock cycles are short but long enough for the lowest instruction.
3There are only 1 instruction that can be executed at the same time.There are only 1 instruction that can be executed at the same time.
4There is 1 cycle per instruction, i, e., CPI = 1.There is a variable number of clock cycles per instructions.
5Control unit generates signals for the entire instruction.Control unit generates signals for the instruction’s current step and keeps track of the current step.
6There is duplicate hardware, because we can use a functional unit for at most one subtask per instruction.There is no duplicate hardware, because the instructions generally are broken into single FU steps.
7Extra registers are not required.Extra registers are required to hold the result of one step for use in the next step.
8Performance is baseline.Performance is slightly slower to moderately faster than single cycle, latter when the instructions steps are well balanced and a significantly fractions of the instructions take less than the maximum number of cycles.
My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!