Answer from cs61c-ev (Roland Carlos 16583196) for Question 3 The hazard unit insert bubbles using a hazard detection unit. It first checks to see if the instruction is a load (which is the only instruction that could cause a stall). Then it checks to see if the destination register field of the load in the EX stage matches either source register of the instruction in the ID stage. If the condition holds, the instruction stalls 1 clock cycle. The hazard unit avoids inserting the same bubble over and over by the checks in the detection unit. Then it knows after the stall that forwarding is possible, so there is no need to continually bubble.