self.want_reads = Signal()
self.want_writes = Signal()
# NB: cas_n/ras_n/we_n are 1 when stb is inactive
- self.cmd = CommandRequestRW(self.requests[0].a.bv.width, self.requests[0].ba.bv.width, tagbits)
+ self.cmd = CommandRequestRW(len(self.requests[0].a), len(self.requests[0].ba), tagbits)
def get_fragment(self):
comb = []
def get_fragment(self):
comb = []
sync = []
- tagbits = self.hub.tag_call.bv.width
+ tagbits = len(self.hub.tag_call)
rd_valid = Signal()
rd_tag = Signal(BV(tagbits))
# Command choosing
requests = [bm.cmd for bm in self.bank_machines]
- tagbits = self.hub.tag_call.bv.width
+ tagbits = len(self.hub.tag_call)
choose_cmd = _CommandChooser(requests, tagbits)
choose_req = _CommandChooser(requests, tagbits)
comb += [
self._command = RegisterFields("command",
[self._cs, self._we, self._cas, self._ras, self._wren, self._rden])
- self._address = RegisterField("address", self.phase.address.bv.width)
- self._baddress = RegisterField("baddress", self.phase.bank.bv.width)
+ self._address = RegisterField("address", len(self.phase.address))
+ self._baddress = RegisterField("baddress", len(self.phase.bank))
- self._wrdata = RegisterField("wrdata", self.phase.wrdata.bv.width)
- self._rddata = RegisterField("rddata", self.phase.rddata.bv.width, READ_ONLY, WRITE_ONLY)
+ self._wrdata = RegisterField("wrdata", len(self.phase.wrdata))
+ self._rddata = RegisterField("rddata", len(self.phase.rddata), READ_ONLY, WRITE_ONLY)
def get_registers(self):
return [self._command,