Answer from cs61c-aj (Kevin Li 15855812) 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.