kuznia-rdzeni / coreblocks

RISC-V out-of-order core for education and research purposes
https://kuznia-rdzeni.github.io/coreblocks/
BSD 3-Clause "New" or "Revised" License
38 stars 16 forks source link

Clean up `MemoryBank` #730

Closed tilk closed 2 months ago

tilk commented 2 months ago

This PR fixes something which bothered me for a long time. I couldn't wrap my head around why @lekcyjna123's MemoryBank implementation is so weird and complex. Finally, I understood the problem: in the version of Amaranth we are using, the read ports are transparent by default (!), and @lekcyjna123 basically tried to make non-transparent reads from a transparent read port.

What was changed: