fix part_mux to actually use Mux (duh)
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 7 Feb 2020 14:54:26 +0000 (14:54 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 7 Feb 2020 15:06:35 +0000 (15:06 +0000)
src/ieee754/part_mux/part_mux.py

index b0cd90b4744d6bb80175a2cad0b63a797699bd72..c354e6c8301580f0817dbd26268c579df918b04c 100644 (file)
@@ -57,12 +57,12 @@ class PartitionedMux(Elaboratable):
         # loop across all partition ranges.
         # drop the selection directly into the output.
         keys = list(self.partition_points.keys()) + [self.width]
-        start = 0
+        stt = 0
         for i in range(len(keys)):
             end = keys[i]
-            mux = self.output[start:end]
-            comb += mux.eq(self.a[start:end] == self.b[start:end])
-            start = end  # for next time round loop
+            mux = self.output[stt:end]
+            comb += mux.eq(Mux(self.sel[i], self.a[stt:end], self.b[stt:end]))
+            stt = end  # for next time round loop
 
         return m