reset shadow latches if neither success nor fail are applied
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 24 May 2019 11:40:28 +0000 (12:40 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 24 May 2019 11:40:28 +0000 (12:40 +0100)
src/scoreboard/shadow_fn.py

index 4b266bcd9f8450b8326de459234f38d93898cd20..b7edf8e9929c90dae85f0c27f2071eadbb8f7aa0 100644 (file)
@@ -27,7 +27,7 @@ class ShadowFn(Elaboratable):
         m.d.sync += cq.eq(sl.q)
 
         m.d.comb += sl.s.eq(self.shadow_i & self.issue_i & ~self.s_good_i)
-        m.d.comb += sl.r.eq(self.s_good_i)
+        m.d.comb += sl.r.eq(self.s_good_i | (self.issue_i & ~self.shadow_i))
         m.d.comb += self.recover_o.eq((cq | sl.q) & self.s_fail_i)
         m.d.comb += self.shadow_o.eq((cq | sl.q))