nearly there with readable/writable on FU matrix
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 20 May 2019 10:19:13 +0000 (11:19 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 20 May 2019 10:19:13 +0000 (11:19 +0100)
src/experiment/score6600.py
src/scoreboard/fu_fu_matrix.py

index 31f267a943d4ce0bb50b2cefa174e6295cedf2f1..daec902908e4eee7bbe84733ff4a8424d949b306 100644 (file)
@@ -412,9 +412,6 @@ def scoreboard_sim(dut, alusim):
             yield from print_reg(dut, [1,2,3])
             yield
         yield from print_reg(dut, [1,2,3])
-        yield
-        yield
-        yield
 
     yield
     yield from print_reg(dut, [1,2,3])
index 239f26b7ee7ffa9d99127ccc5e579f3d71111da8..e682bb2865d7c11084ea406c8015c91a457433fc 100644 (file)
@@ -61,8 +61,8 @@ class FUFUDepMatrix(Elaboratable):
             writable.append(fu.writable_o)
 
         # ... and output them from this module (horizontal, width=REGs)
-        m.d.comb += self.readable_o.eq(Cat(*readable))
-        m.d.comb += self.writable_o.eq(Cat(*writable))
+        m.d.comb += self.readable_o.eq(Cat(*writable))
+        m.d.comb += self.writable_o.eq(Cat(*readable))
 
         # ---
         # connect FU Pending
@@ -95,10 +95,10 @@ class FUFUDepMatrix(Elaboratable):
         # ---
         # connect Matrix go_rd_i/go_wr_i to module readable/writable
         # ---
-        for x in range(self.n_fu_col):
+        for y in range(self.n_fu_row):
             go_rd_i = []
             go_wr_i = []
-            for y in range(self.n_fu_row):
+            for x in range(self.n_fu_col):
                 dc = dm[x][y]
                 # accumulate cell go_rd/go_wr
                 go_rd_i.append(dc.go_rd_i)
@@ -111,10 +111,10 @@ class FUFUDepMatrix(Elaboratable):
         # ---
         # connect Matrix pending
         # ---
-        for y in range(self.n_fu_row):
+        for x in range(self.n_fu_col):
             rd_pend_i = []
             wr_pend_i = []
-            for x in range(self.n_fu_col):
+            for y in range(self.n_fu_row):
                 dc = dm[x][y]
                 # accumulate cell rd_pend/wr_pend/go_rd/go_wr
                 rd_pend_i.append(dc.rd_pend_i)