[libre-riscv-dev] morphing 6600 code to use power decoder
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Thu Apr 16 16:41:31 BST 2020
adding multi-read and multi-write register port selection is a massive
ripple-effect change, going through virtually absolutely every module
involved in the 6600 layout.
* PriorityPicker can no longer be used, it has to be
MultiPriorityPicker because that's the class which can arbitrate
exclusive access to multiple register file ports
* Group Picker uses PriorityPicker, which is told not just which
read/write ports are being requested, it has to be told which ones are
safe to read/write
* Function-Unit to Function-Unit Matrices need to be multi-port aware
* Function-Unit to Register Matrices need to be multi-port aware
* Computation Units need to be multi-port aware
all this because we need to have a separate register file for POWER
branch/condition/link registers, which needs its own separate port
"management" signals from the INT/FP regfile.
gaah.
l.
More information about the libre-riscv-dev
mailing list