From 33d692fa6dd71b58fdcd98779a60323c0ea04ff9 Mon Sep 17 00:00:00 2001 From: Jean THOMAS Date: Tue, 23 Jun 2020 21:16:12 +0200 Subject: [PATCH] Simplify connections from refreshers to IOs (not FSM state dependent anymore) --- gram/core/refresher.py | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/gram/core/refresher.py b/gram/core/refresher.py index f17080e..9875699 100644 --- a/gram/core/refresher.py +++ b/gram/core/refresher.py @@ -339,14 +339,7 @@ class Refresher(Elaboratable): if settings.timing.tZQCS is None: with m.State("Do-Refresh"): - m.d.comb += [ - self.cmd.valid.eq(1), - self.cmd.a.eq(sequencer.a), - self.cmd.ba.eq(sequencer.ba), - self.cmd.cas.eq(sequencer.cas), - self.cmd.ras.eq(sequencer.ras), - self.cmd.we.eq(sequencer.we), - ] + m.d.comb += self.cmd.valid.eq(1) with m.If(sequencer.done): m.d.comb += [ self.cmd.valid.eq(0), @@ -368,14 +361,7 @@ class Refresher(Elaboratable): m.next = "Idle" with m.State("Do-Zqcs"): - m.d.comb += [ - self.cmd.valid.eq(1), - self.cmd.a.eq(zqcs_executer.a), - self.cmd.ba.eq(zqcs_executer.ba), - self.cmd.cas.eq(zqcs_executer.cas), - self.cmd.ras.eq(zqcs_executer.ras), - self.cmd.we.eq(zqcs_executer.we), - ] + m.d.comb += self.cmd.valid.eq(1) with m.If(zqcs_executer.done): m.d.comb += [ self.cmd.valid.eq(0), @@ -383,4 +369,22 @@ class Refresher(Elaboratable): ] m.next = "Idle" + if settings.timing.tZQCS is None: + m.d.comb += [ + self.cmd.a.eq(sequencer.a), + self.cmd.ba.eq(sequencer.ba), + self.cmd.cas.eq(sequencer.cas), + self.cmd.ras.eq(sequencer.ras), + self.cmd.we.eq(sequencer.we), + ] + else: + m.d.comb += [ + self.cmd.a.eq(zqcs_executer.a), + self.cmd.ba.eq(zqcs_executer.ba), + self.cmd.cas.eq(zqcs_executer.cas), + self.cmd.ras.eq(zqcs_executer.ras), + self.cmd.we.eq(zqcs_executer.we), + ] + + return m -- 2.30.2