Luke Kenneth Casson Leighton
lkcl at lkcl.net
Mon Apr 22 17:26:17 BST 2019
ok daniel, c/f above, i added in a "mode" argument to
SetAssociativeCache which selects a random set/entry in the MemorySet
array (MemorySet: new class), and if that mode is True, it uses the
new LFSR2 (thank you to jacob).
what i don't know is whether i got that right or not. also i
introduced a bug where the PLRU encoder was not connected properly,
i've corrected that.
unit tests are going to be pretty critical for this. also i may do
some ASCII art as i am *really* losing track of the connections
between the modules, it's really not obvious.
so, i am proobably done / happy now... looong day.... lots of TODO
comments added, where i think flush/invalidate and flush_all are
needed (if you can do that?), also error handling, i think it goes
into a lock-up in the read FSM on a multi-hit, can you check?
More information about the libre-riscv-dev