Skip to content

Commit 01355ff

Browse files
Merge pull request #313 from cklarhorst/master
Add MT46H128M16 and change bankmaschine to not use A10 for col addresses.
2 parents 6f53aca + cf893a9 commit 01355ff

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

litedram/core/bankmachine.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,10 @@ def row(self, address):
3434

3535
def col(self, address):
3636
split = self.colbits - self.address_align
37-
return Cat(Replicate(0, self.address_align), address[:split])
37+
if self.colbits>10: # A10 is reserved for auto-precharge, this bit needs to be skipped for col addresses
38+
return Cat(Replicate(0, self.address_align), address[:10-self.address_align], 0, address[10-self.address_align:split])
39+
else:
40+
return Cat(Replicate(0, self.address_align), address[:split])
3841

3942
# BankMachine --------------------------------------------------------------------------------------
4043

litedram/modules.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -590,6 +590,14 @@ class MT46H64M16(LPDDRModule):
590590
technology_timings = _TechnologyTimings(tREFI=64e6/8192, tWTR=(2, None), tCCD=(1, None), tRRD=None)
591591
speedgrade_timings = {"default": _SpeedgradeTimings(tRP=15, tRCD=15, tWR=15, tRFC=(None, 72), tFAW=None, tRAS=None)}
592592

593+
class MT46H128M16(LPDDRModule):
594+
# geometry
595+
nbanks = 4
596+
nrows = 16384
597+
ncols = 2048
598+
# timings
599+
technology_timings = _TechnologyTimings(tREFI=64e6/8192, tWTR=(2, None), tCCD=(1, None), tRRD=None)
600+
speedgrade_timings = {"default": _SpeedgradeTimings(tRP=15, tRCD=15, tWR=15, tRFC=(None, 72), tFAW=None, tRAS=None)}
593601

594602
class MT46H32M32(LPDDRModule):
595603
# geometry

0 commit comments

Comments
 (0)