资讯详情

DDR3 controller 之储存器介绍

:物理层的时序转化尤为重要; 在这里插入图片描述 :DDR3 SDRAM 操作流程 如图所示,是的 DDR3 颗粒内部单个 Bank 状态机命令跳转过程。由于 DRAM电容电容充放电读写数据的关系,每个命令之间的跳转必须满足特定的时间参数DDR3 颗粒的读写是为了玩这些时间参数,使其 DDR3 颗粒内的状态机运行。下图中的实线箭头代表状态之间的跳转,虚线箭头代表状态机自动跳转。可以看到, DDR3 SDRAM 首先,在此过程中完成上电复位和初始化过程ZQ 上电初始化完成后,配置长校准和模式寄存器, DDR3 SDRAM 进入 IDLE 状态。然后可以进行读写操作,定期刷新,自刷新, Power-Down 操作,以及 ZQ 短校准操作,在阅读/写作操作前,首先激活(打开行)操作,阅读/写作后发送预充电(关闭)命令,具体命令后面介绍。 DDR3 SDRAM复位初始化过程有两种,第一种是DDR3 SDRAM第一次上电的过程通常是DDR3 SDRAM开始供电的时候。第二种是DDR3 SDRAM初始有电源中断的情况下进行初始情况下退出自刷新 Power-Down 模式进入正常工作状态后,需要重新对齐DDR三是初始化。如图2.12和图2.如13所示,是两种初始时序图。 可以看出,这两种初始化模式都要复位等待, CKE提升,发送模式寄存器设置命令ZQ在这些过程中,配置模式寄存器的顺序是相同的,配置顺序依次是MR2、 MR3、 MR1、 MR0.每次初始化都需要重新配置模式 存储器。不同之处在于第一次上电初始化复位时间长,需要200us,低功耗退出再初始化只需100ns复位等待时间。 : DDR3 命令主要分为读、写、刷新、低功耗四类,其他命令如模式寄存器设置、预充、激活等 ZQ 长/短校准、空命令命令和取消命令。这两个主要命令分为读写后自动预充电和读写后自动预充电。刷新命令(即定期刷新)是为了防止 DDR3 必须定期执行的电容泄漏数据丢失的命令。低功耗命令如自刷新、断电模式是为了使 DDR3 无读写访问时挂起的命令, 表 列出了 DDR3 SDRAM 指令集。 (1)激活命令 (2)预充电命令 (3)读操作 读命令(READ)只要满足不同情况的时间参数,就可以支持单读或连续读。由于DQ、 DQS总线是双向的,所以使用一段DQS前导码区分读写数据,读前导码是一个周期DQS时间参数为低电平信号tRPRE,读后导码是BC4/BL8数据结束半个周期DQS时间参数为低电平信号tRPST。 并且读DQS和读数据是边缘对齐的,如图所示。 读命令期间使用地址A12选择BC4或BL8, A12=1设置为BL8, A12=0设置为BC4。 如图2.14,是完整的一段BL8.阅读命令和数据BC4是只读这段BL8的前半段,后半段掩码,不会节省DQ总线周期如图所示。 (4)写操作 写命令(WRITE)可以支持单个或连续写,写前导码是一个周期DQS翻转信号,写DQS上升边和第一个写DQ中心对齐,然后DQS上升和下降分别指向数据DQ中心。同样,地址也可以在写命令期间使用A12选择BC4或BL8,和 读数据类似,单个BL如图所示。 (5)刷新 每隔一段时间(tRFEFI)发送刷新命令,防止电容泄漏数据丢失。 (6)自刷新 DDR3 SDRAM 自刷新命令是一种低功耗模式,用于存储阵列中的数据,无需外部时钟。进入自刷新后,只关心 CKE 和 RESET#,但所有的供电和土地都需要有效, DRAM 内部时钟将被禁止进入自刷新。在自刷新模式下 可修改时钟频率,退出自刷新后初始化,重新设置模式寄存器值。 (7)断电模式

效率问题:(能提高效率的措施)

(1)时间参数 DDR3 它自身的特点决定了在各种命令之间切换以满足一定的时间参数,这是 DDR3 读写效率的最大障碍。阅读操作时序:阅读命令后, CL 时间过后,数据出现了 DQ 总线上。如图 2.18.如果连续两次阅读命令间隔等于 tCCD 最小值(即 tCCD=4 tck),数据将连接起来,形成流水线返回。 如果两次阅读命令之间的间隔大于 tCCD, 比如 tCCD=5 tck,读数据不能连续返回,两段 BL8 数据之间有一个周期。而且命令线在发送两个命令间隔时,也没有发送有效的命令,这样的间隔浪费了总线的利用率, 带宽损失, 如图 2.19 所示。 因此,在设计控制器时,尽量选择流水线,尽量减少时间参数。 (2)读写切换 如图所示,从写命令到读命令切换, 发送完写命令和数据后, 需要再等 tWTR 只有时间才能发送阅读命令,所以阅读间隔很大。 读命令到写命令切换,读到写的时间比写到读的时间少, 发送阅读命令,等待 RL tCCD 2tCK-WL 写作命令可以在时间后发送,但仍有间隔,如图所示 2.21 所示。 (3)行切换 同 Bank 访问不同的行,是的 DDR3 在访问效率最低的情况下,以两次跨行写访问为例,写完数据后, tWR 只有时间过了,我们才能关闭这条线。关闭后,需要 tRP 时间过后,可以重新激活另一行,激活后, 等待 tRCD 之后,可以再次发送写作命令。写完命令后,CWL 写数据只能在时间后发送。因此,应尽量减少行切换的次数。

(4)刷新 DDR3 间隔固定时间需要刷新存储单元,这个时间是 tREFI,刷新命令和其他命令之间的间隔 tRFC。刷新是 DDR 这个时候不能节省特点。但可以通过提前或滞后刷新 8 其次,减少控制器中命令调度的时间。

(5)跨行数据 当需要写入/读取的突发操作数据刚刚结束时,数据的一部分在下一行。如果下一行不激活,数据将丢失,下半部分数据将无效。为了提高 DDR3 控制器对内存的访问效率, 也就是说,有必要充分利用控制器仿问内存的实际带宽 DDR3 颗粒的时间参数。因为 DDR3 地址重用的特点是在访问地址之前激活操作选择地址),然后读写(即选择地址),这也是和谐FLASH 有区别。读写操作有三种情况: 1)页冲突(Page Conflict):即访问同 Bank 不同行(Bank 已激活) Bank有一行已经打开,访问地址在不同的行。此时,应先关闭(Precharge)已打开的行,再打开(Active)最后行地址,最后发送阅读/写命令。 2)页丢失(Page Miss):即访问 Bank 的某一行(Bank 未激活)。要访问的 Bank是未激活的状态,可能是第一次对该 Bank 访问也可能是上次 Bank 访问结束时,打开的线路已经关闭。此时,应先打开(Active)发送阅读/写作行地址 指令。 3)页命中(Page hit):即访问同 Bank 同行(Bank 已激活)。在之前的操作中已经打开了要访问的银行地址。此时,您可以直接发送阅读/写作命令,而无需激活访问银行。 DDR3-1600 为例,对三种不同读/写寻址情况延迟计算如表 2.8 所示 通过以上分析,我们可以知道对效率影响最大的是 Page Conflict,对效率影响最小的Page Hit,所以尽量减少 Page Conflict 机会增加 Page Hit 概率。因此,读写重排序模块的功能是重新排序读写命令。当新进入的命令与刚出去的命令相同时 Bank 同 Row,为了优先考虑新进入命令插队 Page Hit 命令,同时将 Page Conflict 两个命令分开了。

标签: 如何用电容延迟断电

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台