move put_z to PutZ class
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sat, 2 Mar 2019 13:58:45 +0000 (13:58 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sat, 2 Mar 2019 13:58:45 +0000 (13:58 +0000)
src/add/nmigen_add_experiment.py

index 14f730529adc03a6ff31b09eee5f4f159d3fdde4..f6d44509f43dfe8e410f9448e9c35797cd7a2cd5 100644 (file)
@@ -761,7 +761,14 @@ class FPPack(FPState):
 class FPPutZ(FPState):
 
     def action(self, m):
-        self.put_z(m, self.z, self.out_z, "get_a")
+        m.d.sync += [
+          self.out_z.v.eq(self.z.v)
+        ]
+        with m.If(self.out_z.stb & self.out_z.ack):
+            m.d.sync += self.out_z.stb.eq(0)
+            m.next = "get_a"
+        with m.Else():
+            m.d.sync += self.out_z.stb.eq(1)
 
 
 class FPADD: