Answer from cs61c-ej (Leon Wang 16247444) for Question 3 The separate add unit is used to add the PC with the offset. I think you can use a single ALU, however, the datapath would be much more complicated. You would need hardware that would let one ALU computation to go before the other and you would need to save the first result somewhere.