[Libre-soc-dev] daily kan-ban update 24nov2021

Luke Kenneth Casson Leighton lkcl at lkcl.net
Wed Nov 24 23:23:16 GMT 2021

* helping veera with subfic
* helping dmitry clarify binutils/gas work needed
* sorted out an error in the FSM version of TestIssuer
  (accidentally enabled hazard-checking)
* abandoned use of a regfile for the bitvectors and used
   R-Priority SRLatch (actually a DFF but hey) instead.
* fixed write-after-write hazard detection
* wrote a unit test for write-to-same-read-register
   (addi 5, 5, #2)

this latter - write-to-same-read-register - is going to throw a
royal spanner in the works of the entire engine.  i need to
think about it, and to be absolutely honest, with having worked
out that the current hazard bitvectors are absolutely identical
in every single possible way to FU-Regs Dependency Matrices,
and now having hit write-to-same-read-register which is easily
solved by (get this:) deploying a FU-FU Dependency Matrix,
i'm considering moving entirely to a standard 6600 precise-augmented

the amount of time it would take to arse about re-inventing how
to protect write-to-same-read-register instructions - and also have
those instructions also be protected by both read-after-write
and write-after-read hazards, is sufficiently great that it's worth
considering just going "screw it" and doing 6600 scoreboards

the write-to-same-read register protection is covered in a ridiculously
simple fashion in FU-FU Dependency Matrices:

where the row number equals the column number, the latches

this represents the situation where any given FU is NOT dependent...
ON ITSELF... for either read-after-write or write-after-read hazards.

absolutely dead simple.

right now there is a great big ORing going on of the bitvectors,
which substitutes for that FU-FU Matrix.  trying to work out
how the hell to exclude the case where FU-depends-on-itself
is precisely and exactly what an FU-FU Matrix does, is, honestly,
i feel, a waste of time, given that the solution is, quite frankly,
likely to end up duplicating FU-FU Dependency Matrices.



crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68

More information about the Libre-soc-dev mailing list