Quiz submission record for quiz6-1-1 at Sun Jul 25 22:50:19 2004: Your Answer for Question 1: If the controls were not pipeline then one control for the first excution would have its control signals in the wires connecting to the various part of the CPU such as the memory, registers, ALU, etc. BUT because control is not pipeline these same controls will stay around for 5 cycles where the datapath is pipeline and mix data signals will be everywhere causing complete chaos. It would make no sense to not have a pipeline control with a pipeline datapath. The control signals would be mixed during the cycles. Your Answer for Question 2: The first one comes from the actual registers. The instruction sequence that give this would be add $1 $2 $3 The second one comes from MEM/WB pipeline register. The instruction sequence that give this would be add $1 $2 $3 and $4 $5 $6 or $7 $1 $8 where $1 in the or instruction would get its value from the MEM/WB pipeline register. The third one comes from EX/MEM pipeline register. The instruction sequence that give this would be add $1 $2 $3 and $4 $1 $5 where $1 in the and instruction would get its value from the EX/MEM pipeline register. Your Answer for Question 3: A bubble is inserted by setting all the controls fields of the pipeline register to 0. This is an equivalent to a nop. PC counter will remain the same and won't be incremented, IF is restarted with the same line. The hazard detection unit knows that it only needs to stall once. Once the stall occurs it checks the conditions again: if (ID/EX.MemRead and ((ID.EX.RegisterRt = IF/ID.RegisterRs) or (ID/EX.RegisterRt = IF/ID.RegisterRt))) would fail which means that it will not stall or insert the same bubble no more. Your unique submission ID is quiz6-1-1-cs61c-aj-1090821019-532.