Displaying 2 results from an estimated 2 matches for "p5600unitfp".
2014 Jan 24
2
[LLVMdev] New machine model questions
Hi Andrew,
I seem to be making good progress on the P5600 scheduler using the new machine model but I've got a few questions about it.
How would you represent an instruction that splits into two micro-ops and is dispatched to two different reservation stations?
For example, I have two reservation stations (AGQ and FPQ). An FPU load instruction is split into a load micro-op which is
2014 Jan 28
3
[LLVMdev] New machine model questions
...hat level of precision is critical [1]. Another option is extending the new model. [2]
I will assume that each queue is fully pipelined (4 ACQ ops can be in-flight).
Forcing all this information into a single SchedWriteRes def would look like this:
def P5600FLD : SchedWriteRes <[P5600UnitAGQ, P5600UnitFP]> {
let Latency = 5; // 4 cycle load + 1 cycle FP writeback
let NumMicroOps = 2;
}
This is bad (for an in-order processor) because it prevents FPLoad + FPx from being scheduled in the same cycle and fails to detect a conflict on FP ops 5 scheduled cycles ahead.
A better way to express it w...