Definition
Multi-cycle Instruction
A multi-cycle instruction is an instruction whose execute stage spans multiple clock cycles.
Typical examples are multiplication, division, and floating-point operations. The arithmetic cannot be completed in a single cycle at the target clock frequency, so the execute stage repeats until the result is ready.
Effect on the pipeline
In a static in-order pipeline, a multi-cycle instruction occupies the execute stage for several cycles. All later instructions stall, even if they are independent.
A pipelined functional unit splits the multi-cycle operation into stages so that consecutive independent instructions of the same type can overlap without stalling.