Instruction pipelining
= Instruction pipelining
<Instruction pipelining> divides execution into stages with stored intermediate state, allowing different instructions to occupy different stages simultaneously. The <processor clock period> is constrained by stage timing; moving a <barrel shifter> and <arithmetic logic unit> into the same stage can lengthen that stage's <combinational critical path>.