update comments
[ieee754fpu.git] / src / add / dual_add_experiment.py
index a70c93356bdf946b426a6acb8a6ddba1e001c69f..7ec479f5affe95dfb5b4e6bd650b9dec248246ed 100644 (file)
@@ -36,6 +36,7 @@ class ALU:
         self.b   = FPOp(width)
         self.c   = FPOp(width)
         self.z   = FPOp(width)
+        self.int_stb = Signal()
 
         self.add1 = FPADD(width)
         self.add2 = FPADD(width)
@@ -51,9 +52,11 @@ class ALU:
         # join add2 a to c: add2.in_a = c
         m.d.comb += self.add2.in_a.chain_from(self.c)
         # join add2 b to add1 z: add2.in_b = add1.out_z
-        m.d.comb += self.add2.in_b.chain_from(self.add1.out_z)
+        m.d.comb += self.add2.in_b.chain_inv(self.add1.out_z)
         # join output from add2 to z: z = add2.out_z
         m.d.comb += self.z.chain_from(self.add2.out_z)
+        # get at add1's stb signal
+        m.d.comb += self.int_stb.eq(self.add1.out_z.stb)
         #with m.If(self.op):
         #    m.d.comb += self.o.eq(self.sub.o)
         #with m.Else():