Bankmaschine: Don't use A10 for col addresses.

A10 is reserved for auto precharge.
For memories with more than 1024 cols (>10bit) A[0:9] and A[11:] is used.

I tested this with MT46H128M16.
This commit is contained in:
Christian Klarhorst 2022-10-30 13:17:51 +01:00
parent 4815be2fef
commit cf893a9839
1 changed files with 4 additions and 1 deletions

View File

@ -34,6 +34,9 @@ class _AddressSlicer:
def col(self, address): def col(self, address):
split = self.colbits - self.address_align split = self.colbits - self.address_align
if self.colbits>10: # A10 is reserved for auto-precharge, this bit needs to be skipped for col addresses
return Cat(Replicate(0, self.address_align), address[:10-self.address_align], 0, address[10-self.address_align:split])
else:
return Cat(Replicate(0, self.address_align), address[:split]) return Cat(Replicate(0, self.address_align), address[:split])
# BankMachine -------------------------------------------------------------------------------------- # BankMachine --------------------------------------------------------------------------------------