From 3a0624998eee3e3cdf05bd00935e59e256189250 Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Wed, 22 Apr 2020 16:56:22 +0100 Subject: [PATCH] fix request-done in compalu_multi --- src/soc/experiment/compalu_multi.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/soc/experiment/compalu_multi.py b/src/soc/experiment/compalu_multi.py index c5bfdc21..85cb3926 100644 --- a/src/soc/experiment/compalu_multi.py +++ b/src/soc/experiment/compalu_multi.py @@ -70,6 +70,10 @@ class ComputationUnitNoDelay(Elaboratable): self.rd = go_record(n_src, name="rd") # read in, req out self.wr = go_record(n_dst, name="wr") # write in, req out + self.go_rd_i = self.rd.go # temporary naming + self.go_wr_i = self.wr.go # temporary naming + self.rd_rel_o = self.rd.rel # temporary naming + self.req_rel_o = self.wr.rel # temporary naming self.issue_i = Signal(reset_less=True) # fn issue in self.shadown_i = Signal(reset=1) # shadow function, defaults to ON self.go_die_i = Signal() # go die (reset) @@ -105,7 +109,7 @@ class ComputationUnitNoDelay(Elaboratable): req_done = Signal(reset_less=True) m.d.comb += self.done_o.eq(self.busy_o & ~(self.wr.rel.bool())) m.d.comb += wr_any.eq(self.wr.go.bool()) - m.d.comb += req_done.eq(self.done_o & rst_l.q & wr_any) + m.d.comb += req_done.eq(rst_l.q & wr_any) # shadow/go_die reset = Signal(reset_less=True) -- 2.30.2