Single-cycle processors suffer from poor speed performance. Control and data signals must propagate completely
through the processor in a single cycle, which means that cycle times need to be long, and many parts of the
hardware tend to be dormant for much of the cycle.
Multi-Cycle Stages =
Multi-cycle processors break up the instruction into its fundamental parts, and executes each part of the instruction in
a different clock cycle. Since signals have less distance to travel in a single cycle, the cycle times can be sped up
considerably.
Typically, an instruction is executed over at least 5 cycles, which are named as such:
IF
Fetch the instruction from memory
ID
Decode the instruction, and generate the necessary control signals
EX
Feed the necessary control signals into the ALU and produce a result
MEM
Read from memory, if specified
WB
Write the result back to the register file or to memory.