[libre-riscv-dev] libresoc memory architecture
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Wed Jun 24 15:54:33 BST 2020
On Wed, Jun 24, 2020 at 2:24 PM Michael Nolan <mtnolan2640 at gmail.com> wrote:
> > 1) a TestMemoryLoadStoreUnit that contains a TestMemory instance and
> > presents a LoadStoreInterface.
> Ok, this seems reasonably straightforward. I'll give it a go.
star. a look-ahead towards the integration testing: a
reconfigureable-class that (just like minerva) does runtime-selection
of which type of LoadStoreInterface-compatible "thing" to instantiate
would be good:
class ConfigureableLoadStoreUnit:
def __init__(self, ifacetype, *args, **kwargs):
if ifacetype == "testmem":
self.lsi = TestMemoryLoadStoreUnit(*args, **kwargs)
elif ifacetype == "bare_wb":
self.lsi = BareLoadStoreUnit(*args, **kwargs)
elif ifacetype == "cache_wb":
self.lsi = CacheLoadStoreUnit(*args, **kwargs)
although from experience that might be better to use pspec which
contains parameters and so is a bit less of a mess when it comes to
setting up.
l.
More information about the libre-riscv-dev
mailing list