whoops revert decode inside module FPNumIn, causing problems
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sat, 23 Feb 2019 12:22:10 +0000 (12:22 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sat, 23 Feb 2019 12:22:10 +0000 (12:22 +0000)
src/add/fpbase.py
src/add/nmigen_add_experiment.py

index 2124849ecac154f1c509bc329b71dfa9bfbbded3..961824f08b8bfdc3deece043a76472d5966ec793 100644 (file)
@@ -266,9 +266,9 @@ class FPNumIn(FPNumBase):
     def elaborate(self, platform):
         m = FPNumBase.elaborate(self, platform)
 
-        m.d.comb += self.latch_in.eq(self.op.ack & self.op.stb)
-        with m.If(self.latch_in):
-            m.d.sync += self.decode(self.v)
+        #m.d.comb += self.latch_in.eq(self.op.ack & self.op.stb)
+        #with m.If(self.latch_in):
+        #    m.d.sync += self.decode(self.v)
 
         return m
 
@@ -379,6 +379,7 @@ class FPBase:
             m.next = next_state
             m.d.sync += [
                 # op is latched in from FPNumIn class on same ack/stb
+                v.decode(op.v),
                 op.ack.eq(0)
             ]
         with m.Else():
index 284cbd985b3a5137db1274509cc06edabfbc6e7b..f7a1d9127c3495c8cc78754747f2cf38acff4b83 100644 (file)
@@ -304,13 +304,13 @@ class FPADD:
         #geta.set_inputs({"in_a": self.in_a})
         #geta.set_outputs({"a": a})
         a = geta.a
-        m.d.comb += a.v.eq(self.in_a.v) # links in_a to a
+        # XXX m.d.comb += a.v.eq(self.in_a.v) # links in_a to a
         m.submodules.fpnum_a = a
 
         getb = self.add_state(FPGetOpB("get_b"))
         getb.set_inputs({"in_b": self.in_b})
         getb.set_outputs({"b": b})
-        m.d.comb += b.v.eq(self.in_b.v) # links in_b to b
+        # XXX m.d.comb += b.v.eq(self.in_b.v) # links in_b to b
 
         sc = self.add_state(FPAddSpecialCases("special_cases"))
         sc.set_inputs({"a": a, "b": b})