From 44017df54f875600efc1ea54cdfe19725211208a Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Sun, 22 Mar 2020 14:38:37 +0000 Subject: [PATCH] get AddrSplitter working for data len=8 --- src/soc/scoreboard/addr_split.py | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/soc/scoreboard/addr_split.py b/src/soc/scoreboard/addr_split.py index a3dbfef9..f829c6d7 100644 --- a/src/soc/scoreboard/addr_split.py +++ b/src/soc/scoreboard/addr_split.py @@ -107,11 +107,14 @@ class LDSTSplitter(Elaboratable): # errors cause error condition comb += self.ld_data_o.err.eq(ld1.ld_o.err | ld2.ld_o.err) # data needs recombining via shifting. - ashift1 = self.addr_i[:self.dlen] + ashift1 = Signal(self.dlen) + ashift2 = Signal(self.dlen) + comb += ashift1.eq(self.addr_i[:self.dlen]) + comb += ashift2.eq((1<> ashift1) | - (ld2.ld_o.data << (1<> (1<> 16) & dmask1 + print ("ld data2", 1<> (1<