[libre-riscv-dev] GPU design

Luke Kenneth Casson Leighton lkcl at lkcl.net
Tue Dec 4 12:30:43 GMT 2018


https://passlab.github.io/CSE564/notes/lecture18_ILP_DynamicMultIssueSpeculationAdvanced.pdf

page 8.  i had a feeling this might be the case: a standard scoreboard
with explicit register-renaming requires a "real" register file that's
larger than the one that the ISA has.  we *already* have an absolutely
massive register file: 2x 128 64-bit.

by contrast, tomasulo style reservation stations don't actually have
registers at *all*.  the registers are eliminated, being replaced by
"values" (or copies of values), having temporary "ROB" tag-indexes
that replace the registers.  multiple copies of those end up in the
reservation stations leading to the ALUs, as well as in the LOAD
buffer.

thus, the resources needed for renaming are fixed: each ALU will have
2 or possibly 3 sets of reservation stations, and the LOAD buffer has
a fixed number of entries.

l.



More information about the libre-riscv-dev mailing list