5

Number of general purpose registers → ISA (we need to know what we have access to)

Number of read ports in the physical register file → UARCH

Size of a virtual memory page → ISA

  • maybe software page table walker
  • OS must know how to build page tables that the hardware can walk!

6

a)

The software interlocking machine has internal register file forwarding, but we still need to stall 2 cycles.
This is because W→ID is possible, but not W→EX without data forwarding

  • W→EX works only because there is an extra wire with which the data from W overwrites the registers between ID/EX.
  • ID is where the values actually get read.

8 GPU

d)

Cursed ah analytical expression

9. Branch Prediction

1.

I completely forgot B1 for every single question here.

11. Prefetching

a)

It can go faster as well if the prefetch requests from the dropped instructions were worse.