From: Luke Kenneth Casson Leighton Date: Mon, 13 May 2019 19:01:29 +0000 (+0100) Subject: split out readable/writable setup X-Git-Tag: div_pipeline~2056 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=511543b793aeaa2d75016d9cd9aac4c50f3fc9f7;p=soc.git split out readable/writable setup --- diff --git a/src/scoreboard/fu_fu_matrix.py b/src/scoreboard/fu_fu_matrix.py index a73cde9c..5ee7d702 100644 --- a/src/scoreboard/fu_fu_matrix.py +++ b/src/scoreboard/fu_fu_matrix.py @@ -54,6 +54,19 @@ class FUFUDepMatrix(Elaboratable): # --- readable = [] writable = [] + for x in range(self.n_fu_col): + fu = fur[x] + # accumulate Readable/Writable Vector outputs + readable.append(fu.readable_o) + 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)) + + # --- + # connect FU Pending + # --- for x in range(self.n_fu_col): fu = fur[x] rd_pend_o = [] @@ -67,14 +80,6 @@ class FUFUDepMatrix(Elaboratable): m.d.comb += [fu.rd_pend_i.eq(Cat(*rd_pend_o)), fu.wr_pend_i.eq(Cat(*wr_pend_o)), ] - # accumulate Readable/Writable Vector outputs - readable.append(fu.readable_o) - 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)) - # --- # connect Dependency Matrix dest/src1/src2/issue to module d/s/s/i # ---