cmd_buffer.source.valid),
]
- slicer = _AddressSlicer(
- self.settings.geom.colbits, self._address_align)
+ slicer = _AddressSlicer(self.settings.geom.colbits, self._address_align)
# Row tracking -----------------------------------------------------------------------------
row = Signal(self.settings.geom.rowbits)
nbanks = 2**self.settings.geom.bankbits
# Refresher --------------------------------------------------------------------------------
- m.submodules.refresher = self.settings.refresh_cls(self.settings,
- clk_freq=self._clk_freq,
- zqcs_freq=self.settings.refresh_zqcs_freq,
- postponing=self.settings.refresh_postponing)
+ m.submodules.refresher = Refresher(self.settings,
+ clk_freq=self._clk_freq,
+ zqcs_freq=self.settings.refresh_zqcs_freq,
+ postponing=self.settings.refresh_postponing)
# Bank Machines ----------------------------------------------------------------------------
bank_machines = []
]
# Refresh Sequencer ------------------------------------------------------------------------
- sequencer = RefreshSequencer(
- self._abits, self._babits, settings.timing.tRP, settings.timing.tRFC, self._postponing)
+ sequencer = RefreshSequencer(self._abits, self._babits, settings.timing.tRP, settings.timing.tRFC, self._postponing)
m.submodules.sequencer = sequencer
if settings.timing.tZQCS is not None:
m.d.comb += wants_zqcs.eq(zqcs_timer.done)
# ZQCS Executer ------------------------------------------------------------------------
- zqcs_executer = ZQCSExecuter(
- self._abits, self._babits, settings.timing.tRP, settings.timing.tZQCS)
+ zqcs_executer = ZQCSExecuter(self._abits, self._babits, settings.timing.tRP, settings.timing.tZQCS)
m.submodules.zqs_executer = zqcs_executer
m.d.comb += zqcs_timer.wait.eq(~zqcs_executer.done)