Question 1 12 pts
The processor has split load and store queues. It retires stores in order, forwards values from older unretired stores to younger loads, allows load speculation, and detects memory ordering violations. For each instruction, identify whether it can issue by cycle 15. Each instruction is given as (address, cycle dispatched, cycle operand ready):
load A, 4, 10load B, 5, 20store C, 6, 8store A, 7, 11store B, 8, 18load A, 9, 11load B, 10, 12
| Instruction | Can issue by cycle 15? |
|---|---|
load A, 4, 10 | Yes (given as the example; operand ready before cycle 15). |
load B, 5, 20 | No (operand not ready until cycle 20). |
store C, 6, 8 | Yes (older stores do not block it; operand ready by cycle 15). |
store A, 7, 11 | Yes (older store C is ready, and this store is ready by cycle 15). |
store B, 8, 18 | No (store operand not ready until cycle 18). |
load A, 9, 11 | Yes (can receive forwarded value from older store A, which is ready by cycle 15). |
load B, 10, 12 | Yes (handwritten mark — but see verification). |