prefetch和preload(关于Prefetch和Burst相关的内容)
研究DDR有一段时间了,期间看了很多资料(一些公司的培训资料,几十篇博文,美光数据手册、JESD79规格等。).但是有一个问题,我想了很久(很多信息没有解释清楚),到目前为止才想通,所以写一篇文章和大家分享。
比如接下来讨论的主要是预取和突发。
1、预取简介
首先简单介绍一下预取技术。所谓预取就是预加载,是DDR时代提出的技术。在SDR中,没有这样的技术,所以每个单元的存储容量等于DQ的宽度(芯片数据IO位宽)。【关于什么是cell(存储单元,可以看看,我之前的博文:http://blog . China aet . com/just xy/p/5100051913)】
进入DDR时代后,有了预取技术。DDR是2位预取,有些公司形象地称之为2-n预取(n代表芯片位宽)。DDR2是4位预取,DDR3和DDR4都是8位预取。8位预取可以使核心时钟达到DDR时钟的四分之一,这是预取的根本意义。
注意:芯片位宽的另一个术语是配置。DDR3时代一般有x4,x8,x16。
以DDR3为例,下图是读预取的简单示意图,写可以看作是一个逆向过程。
DDR3为x8配置时,一个单元的容量为8x8bits,即8个字节。换句话说,在指定存储体、行和列地址之后,可以将8个字节写入(或读取)该地址。
2、如何计算DDR3 SDRAM的容量
以Mircon的某型号DDR3 SDRAM为例:
以图中红色部分的内容为分析案例(8个存储体的配置,x8):
计算方法1(错误):
64K*8*1K*8(行寻址*库寻址*列寻址* x8配置)=4Gb(512兆x8)。
大部分资料给出了这种错误的计算方法,误导了很多初学者。这种计算方法乍一看似乎是对的。但是仔细检查可以发现,按照第一种计算方法的逻辑,每个单元的容量是18bit*8(x8配置),也就是8bit。这与我们在第一部分中讨论的结果不一致(在x8配置中,单元的容量是64位)。
当然,从某种角度来说,第一种计算方法也是正确的,因为分隔的列地址的位数实际上对应的是预取。例如,DDR3 8位预取对应3位列地址,DDR2 4位预取对应2位列地址。如果直接按照计算方法计算,第一次理解DDR很难,这也是我写这篇博文的原因。
下面给出正确的计算方法,并说明原因。
计算方法2(正确):
64K*8*(1K/8)*8*8(行寻址*库寻址*(列寻址/8) * x8配置*8位预取)=4Gb(512兆x8).
很多人会问,为什么要把列寻址除以8?似乎第二种计算方法看起来更不合理。接下来,让我们先来回顾一下DDR3 SDRAM的结构框图(或者以Mircon的某型号为例):
也许你可以我看不清这幅画。以下是一些特写:
那没错!你没有看错!1位列地址的寻址能力只有128!它仅仅差了8倍(那这就是为什么在计算方法2中我们将列寻址除以8)!
那么问题又来了。为什么列地址的寻址能力只有128?唐别急,请继续看下图:
在上图中可以清楚的发现,10位列地址中只有7位用于列地址解码!0,1,2列没用!
那么,问题又来了!……
第0,1,2列,这3位是做什么用的?还是Mircon的设计者脑残,故意浪费这三位?显然不是。
JESD79-3规范中有以下表格:
可以发现,列地址的A2、A1、A0用于突发顺序函数,A3也用于突发类型函数。一般我们采用的是顺序读写模式(即{A2,A1,A0}={0,0,0}),所以此时A3的值没有直接影响。
那么,问题又来了!……
爆裂是什么鬼?看看第三部分。
3、DDR中的DDR突发长度
突发长度,简称为BL,指的是突发长度。突发是指同一行相邻存储单元连续传输数据的方式。连续传输涉及的存储单元(列)数为突发长度(SDRAM),指DDR SDRAM中连续传输的周期数。前面提到的突发类型和突发顺序,其实就是突发长度读写顺序的配置。
在DDR3 SDRAM时代,内部配置采用8n预取(prefetch)实现高速读写,这也导致DDR3的突发长度一般为8。当然,还有Bursth ength为4 (BC4)的设置,这意味着其他四条数据没有被传输或被视为无效。
在DDR2时代,内部配置采用4n预取,突发长度有4和8两种。对于BL=8的读写操作,4n预取将发生两次。
上图是JESD79-3规范中给出的DDR3 SDRAM的命令真值表。如您所见,有三种基本的读写模式(固定BL8或BC4、BC4动态、BL8动态)。这部分的内容,我之前的博文里提到过,这里就不详细描述了。
推荐阅读
- 解脲支原体感染能治愈吗?(解脲脲原体阳性严重吗)
- 白族女人漂亮吗,白族女人性格,能不能娶
- 两个excel表快速查找重复,如何在两个EXCEL表格中查找重复项
- 模拟人生2(The Sims 2)游戏介绍(模拟人生2(The Sims 2))
- 抑扬顿挫的意思(抑扬顿挫的出处及造句)
- 玛驰油耗高_玛驰油耗
- 路亚竿亮片钓白条组安装图解,路亚钓白条用亮片如何绑钩
- word里段落间距怎么设置,word段落间距怎么设置
- 如何安装电脑电源,手把手教你安装电脑电源
- say和speak的区别和用法,say和speak的区别
- 哪个牌子的杂牌手机好? 十大杂牌手机
- 是可忍孰不可忍的意思(是可忍孰不可忍的出处及造句)
- 自由驰骋的近义词_自由驰骋
- 为什么电脑不能打字只能打字母,为什么电脑不能打字
- 旋转拖把桶怎么拆开,旋转拖把桶怎么拆
- 一加手机怎么样(和华为哪个好)
- 时间窗app最新版软件介绍(时间窗app最新版)
- ps图片如何放大缩小快捷键,ps怎么放大图片,放大缩小快捷键有哪些
- 身无长物的意思(身无长物的出处及造句)