DDR3中的状态机Diagram,详见相册。
ACT:Activate,表示输出行地址,和是否自动precharge控制位。
PRE:Precharge,在读写后,可以根据A10来判断是否自己进行precharge。
PREA:Precharge all,一般在初始化阶段,来进行all bank的precharge。
MRS:Mode Register Set,控制寄存器的设置,DDR3*有四个,MR0,MR1,MR2,MR3。
REF:Refresh,64ms内必须对所有的row进行自刷新。
Read:RD,RDS4,RDS8, 读操作,包括burst=4、burst=8的操作,burst=4时,通过读后写,组成burst=8的操作,依次来兼容DDR2。
Read A:RDA,RDAS4,RDAS8,读操作过程中的地址输出阶段。
相似的还有Write,Write A。
RESET:开始reset处理。
ZQCL:ZQ Calibration Long,ZQCS:ZQ Calibration Short。均表示Calibration操作。
PDE:Enter Power-down, PDX:Exit Power-down。
SRE:Self-Refresh entry,SRX:Self-Refresh exit。
Power-up Initialization Sequence:
1)上电后,reset保持至少200us的low。
2)reset变为high之后,等待至少500us,CKE变为active。
3)在CKE变为active之前的至少5个tck,CK,CK#必须变为stabilized。
4)等待至少tXPR,Reset Exit time之后,可以发出第一个MRS command.
5)等待4个MRS都设置好之后,开始tDLLK和tZQ Calibration,完成后,DDR3可以读写。
在Stable Power中Reset:
1)reset保持至少100ns的low。剩下流程与Power-up类似。
其中,在MRS阶段,两个MRS command之间,间隔大于tMRD。在MRS和另一命令之间,间隔大于tMOD。
MR0可以设置CAS Latency:表示内部read命令到确认有数据输出的事件差。在DDR3中完整的Read latency是AL+CL。
Test Mode:由DRAM Manufacturer使用的功能,一般不设置。
DLL Reset:一种self-clearing,必须等待tDLLK时间后,才能发出使用这个功能的命令。
Write Recovery:表示真正数据写入DDR的电容中的时间,之后才可以precharge。
Burst length,mode:DDR3均支持read interleave,来进行不同bank之间的共同访问。burst长度分为Fixed 8/Fixed 4/Chop 8
MR1可以设置DLL enable/diaable,在normal操作中,DLL必须enable。
Output driver strength, Rtt_Nom,电阻值。
Additive latency:AL的值,表示从CAS命令发出到DDR执行的时间。
Writing leveling:enable/disable。由于DDR3的clock采用fly by topology,导致clock到每个DRAM的time不一样,所以clock
和strobe之间的timing难以满足tDQSS,tDSS,tDSH。通过writing leveling这种机制来调节strobe信号。
Output Disable/enable: 移出任何DRAM连接的load,可以用在测试中,如power的测试。
MR2可以设置Partial Array Self Refresh:某些部分的bank自刷新。
Auto Self-Refresh:根据温度来进行自刷新的操作,避免温度越高,自刷新间隔越短,又升高温度的循环。
Dynamic ODT:DDR3新增加的特性,不需要设置MR2就可以改变,数据线上的SI。
MR3可以设置Multi-Purpose Register(MPR):读出predefined的地址上的一些Calibration bit。
ODT(On Die Termination)功能,可以对DQ,DQS,DM的终端电阻进行开关,改善SI。
DDR3新增了tVAC的约束,表示信号在VIH(ac)以上,VIL(ac)以下必须保持一定的时间,这个时间叫做tVAC。