From: Luke Kenneth Casson Leighton Date: Mon, 24 Jan 2022 14:11:07 +0000 (+0000) Subject: hmm there seems to have been an error in DTLB Read, X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9c10fda22f62420e78048fa3139e3772744b53fe;p=soc.git hmm there seems to have been an error in DTLB Read, where if a write *and* a read occurred at the same time, the old DTLB-valid entry was given. add similar "forwarding" that is used in Memory. DTLB-valid is actually a register not a Memory, where the DTLB way/tags are a Memory, hence the bug --- diff --git a/src/soc/experiment/dcache.py b/src/soc/experiment/dcache.py index f12a736e..bbb655f0 100644 --- a/src/soc/experiment/dcache.py +++ b/src/soc/experiment/dcache.py @@ -558,18 +558,24 @@ class DTLBUpdate(Elaboratable): #comb += wr_valid.en.eq(1<