mem: add DRAM powerdown timing
This commit is contained in:
parent
20e6bb0140
commit
d19dc35b06
3 changed files with 34 additions and 1 deletions
|
@ -370,6 +370,12 @@ class DDR3_1600_x64(DRAMCtrl):
|
|||
# <=85C, half for >85C
|
||||
tREFI = '7.8us'
|
||||
|
||||
# active powerdown and precharge powerdown exit time
|
||||
tXP = '6ns'
|
||||
|
||||
# self refresh exit time
|
||||
tXS = '270ns'
|
||||
|
||||
# Current values from datasheet
|
||||
IDD0 = '75mA'
|
||||
IDD2N = '50mA'
|
||||
|
@ -591,6 +597,12 @@ class DDR4_2400_x64(DRAMCtrl):
|
|||
# <=85C, half for >85C
|
||||
tREFI = '7.8us'
|
||||
|
||||
# active powerdown and precharge powerdown exit time
|
||||
tXP = '6ns'
|
||||
|
||||
# self refresh exit time
|
||||
tXS = '120ns'
|
||||
|
||||
# Current values from datasheet
|
||||
IDD0 = '70mA'
|
||||
IDD02 = '4.6mA'
|
||||
|
@ -659,6 +671,12 @@ class LPDDR2_S4_1066_x32(DRAMCtrl):
|
|||
tRFC = '130ns'
|
||||
tREFI = '3.9us'
|
||||
|
||||
# active powerdown and precharge powerdown exit time
|
||||
tXP = '7.5ns'
|
||||
|
||||
# self refresh exit time
|
||||
tXS = '140ns'
|
||||
|
||||
# Irrespective of speed grade, tWTR is 7.5 ns
|
||||
tWTR = '7.5ns'
|
||||
|
||||
|
@ -815,6 +833,12 @@ class LPDDR3_1600_x32(DRAMCtrl):
|
|||
tRFC = '130ns'
|
||||
tREFI = '3.9us'
|
||||
|
||||
# active powerdown and precharge powerdown exit time
|
||||
tXP = '7.5ns'
|
||||
|
||||
# self refresh exit time
|
||||
tXS = '140ns'
|
||||
|
||||
# Irrespective of speed grade, tWTR is 7.5 ns
|
||||
tWTR = '7.5ns'
|
||||
|
||||
|
@ -1057,3 +1081,9 @@ class HBM_1000_4H_x64(HBM_1000_4H_x128):
|
|||
# Default different rank bus delay to 2 CK, @1000 MHz = 2 ns
|
||||
tCS = '2ns'
|
||||
tREFI = '3.9us'
|
||||
|
||||
# active powerdown and precharge powerdown exit time
|
||||
tXP = '10ns'
|
||||
|
||||
# self refresh exit time
|
||||
tXS = '65ns'
|
||||
|
|
|
@ -82,7 +82,8 @@ DRAMCtrl::DRAMCtrl(const DRAMCtrlParams* p) :
|
|||
tCK(p->tCK), tWTR(p->tWTR), tRTW(p->tRTW), tCS(p->tCS), tBURST(p->tBURST),
|
||||
tCCD_L(p->tCCD_L), tRCD(p->tRCD), tCL(p->tCL), tRP(p->tRP), tRAS(p->tRAS),
|
||||
tWR(p->tWR), tRTP(p->tRTP), tRFC(p->tRFC), tREFI(p->tREFI), tRRD(p->tRRD),
|
||||
tRRD_L(p->tRRD_L), tXAW(p->tXAW), activationLimit(p->activation_limit),
|
||||
tRRD_L(p->tRRD_L), tXAW(p->tXAW), tXP(p->tXP), tXS(p->tXS),
|
||||
activationLimit(p->activation_limit),
|
||||
memSchedPolicy(p->mem_sched_policy), addrMapping(p->addr_mapping),
|
||||
pageMgmt(p->page_policy),
|
||||
maxAccessesPerRow(p->max_accesses_per_row),
|
||||
|
|
|
@ -726,6 +726,8 @@ class DRAMCtrl : public AbstractMemory
|
|||
const Tick tRRD;
|
||||
const Tick tRRD_L;
|
||||
const Tick tXAW;
|
||||
const Tick tXP;
|
||||
const Tick tXS;
|
||||
const uint32_t activationLimit;
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in a new issue