In a pipelined processor we use decode stage to decode an instruction and forward the control signals that were found until they are used. Why we don’t pipeline the whole instruction and let each stage decode what it needs from the instruction? That would lead in fewer registers being used on each stage(just 1 for the instruction, instead of many for the signals) and to less code complexity(no need to use a stage to generate signals).
↧