SDRAM DDR DDR2的详细性能指标
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SDRAM DDR DDR2的详细性能指标相关的知识,希望对你有一定的参考价值。
写论文要的,有高手帮忙回答下!
DDR2/DDR II(Double Data Rate 2)SDRAM是由JEDEC(电子设备工程联合委员会)进行开发的新生代内存技术标准,它与上一代DDR内存技术标准最大的不同就是,虽然同是采用了在时钟的上升/下降延同时进行数据传输的基本方式,但DDR2内存却拥有两倍于上一代DDR内存预读取能力(即:4bit数据读预取)。换句话说,DDR2内存每个时钟能够以4倍外部总线的速度读/写数据,并且能够以内部控制总线4倍的速度运行。此外,由于DDR2标准规定所有DDR2内存均采用FBGA封装形式,而不同于目前广泛应用的TSOP/TSOP-II封装形式,FBGA封装可以提供了更为良好的电气性能与散热性,为DDR2内存的稳定工作与未来频率的发展提供了坚实的基础。回想起DDR的发展历程,从第一代应用到个人电脑的DDR200经过DDR266、DDR333到今天的双通道DDR400技术,第一代DDR的发展也走到了技术的极限,已经很难通过常规办法提高内存的工作速度;随着Intel最新处理器技术的发展,前端总线对内存带宽的要求是越来越高,拥有更高更稳定运行频率的DDR2内存将是大势所趋。
DDR2与DDR的区别:
1、延迟问题:
从上表可以看出,在同等核心频率下,DDR2的实际工作频率是DDR的两倍。这得益于DDR2内存拥有两倍于标准DDR内存的4BIT预读取能力。换句话说,虽然DDR2和DDR一样,都采用了在时钟的上升延和下降延同时进行数据传输的基本方式,但DDR2拥有两倍于DDR的预读取系统命令数据的能力。也就是说,在同样100MHz的工作频率下,DDR的实际频率为200MHz,而DDR2则可以达到400MHz。
这样也就出现了另一个问题:在同等工作频率的DDR和DDR2内存中,后者的内存延时要慢于前者。举例来说,DDR 200和DDR2-400具有相同的延迟,而后者具有高一倍的带宽。实际上,DDR2-400和DDR 400具有相同的带宽,它们都是3.2GB/s,但是DDR400的核心工作频率是200MHz,而DDR2-400的核心工作频率是100MHz,也就是说DDR2-400的延迟要高于DDR400。
2、封装和发热量:
DDR2内存技术最大的突破点其实不在于用户们所认为的两倍于DDR的传输能力,而是在采用更低发热量、更低功耗的情况下,DDR2可以获得更快的频率提升,突破标准DDR的400MHZ限制。
DDR内存通常采用TSOP芯片封装形式,这种封装形式可以很好的工作在200MHz上,当频率更高时,它过长的管脚就会产生很高的阻抗和寄生电容,这会影响它的稳定性和频率提升的难度。这也就是DDR的核心频率很难突破275MHZ的原因。而DDR2内存均采用FBGA封装形式。不同于目前广泛应用的TSOP封装形式,FBGA封装提供了更好的电气性能与散热性,为DDR2内存的稳定工作与未来频率的发展提供了良好的保障。
DDR2内存采用1.8V电压,相对于DDR标准的2.5V,降低了不少,从而提供了明显的更小的功耗与更小的发热量,这一点的变化是意义重大的。
DDR2采用的新技术:
除了以上所说的区别外,DDR2还引入了三项新的技术,它们是OCD、ODT和Post CAS。
OCD(Off-Chip Driver):也就是所谓的离线驱动调整,DDR II通过OCD可以提高信号的完整性。DDR II通过调整上拉(pull-up)/下拉(pull-down)的电阻值使两者电压相等。使用OCD通过减少DQ-DQS的倾斜来提高信号的完整性;通过控制电压来提高信号品质。
ODT:ODT是内建核心的终结电阻器。我们知道使用DDR SDRAM的主板上面为了防止数据线终端反射信号需要大量的终结电阻。它大大增加了主板的制造成本。实际上,不同的内存模组对终结电路的要求是不一样的,终结电阻的大小决定了数据线的信号比和反射率,终结电阻小则数据线信号反射低但是信噪比也较低;终结电阻高,则数据线的信噪比高,但是信号反射也会增加。因此主板上的终结电阻并不能非常好的匹配内存模组,还会在一定程度上影响信号品质。DDR2可以根据自己的特点内建合适的终结电阻,这样可以保证最佳的信号波形。使用DDR2不但可以降低主板成本,还得到了最佳的信号品质,这是DDR不能比拟的。
Post CAS:它是为了提高DDR II内存的利用效率而设定的。在Post CAS操作中,CAS信号(读写/命令)能够被插到RAS信号后面的一个时钟周期,CAS命令可以在附加延迟(Additive Latency)后面保持有效。原来的tRCD(RAS到CAS和延迟)被AL(Additive Latency)所取代,AL可以在0,1,2,3,4中进行设置。由于CAS信号放在了RAS信号后面一个时钟周期,因此ACT和CAS信号永远也不会产生碰撞冲突。
采用双通道运行,速度是DDR的2倍。
总的来说,DDR2采用了诸多的新技术,改善了DDR的诸多不足,虽然它目前有成本高、延迟慢能诸多不足,但相信随着技术的不断提高和完善,这些问题终将得到解决。 参考技术A 严格的说DDR应该叫DDR SDRAM,人们习惯称为DDR,部分初学者也常看到DDR SDRAM,就认为是SDRAM。DDR SDRAM是Double Data Rate SDRAM的缩写,是双倍速率同步动态随机存储器的意思。DDR内存是在SDRAM内存基础上发展而来的,仍然沿用SDRAM生产体系,因此对于内存厂商而言,只需对制造普通SDRAM的设备稍加改进,即可实现DDR内存的生产,可有效的降低成本。
SDRAM在一个时钟周期内只传输一次数据,它是在时钟的上升期进行数据传输;而DDR内存则是一个时钟周期内传输两次次数据,它能够在时钟的上升期和下降期各传输一次数据,因此称为双倍速率同步动态随机存储器。DDR内存可以在与SDRAM相同的总线频率下达到更高的数据传输率。
与SDRAM相比:DDR运用了更先进的同步电路,使指定地址、数据的输送和输出主要步骤既独立执行,又保持与CPU完全同步;DDR使用了DLL(Delay Locked Loop,延时锁定回路提供一个数据滤波信号)技术,当数据有效时,存储控制器可使用这个数据滤波信号来精确定位数据,每16次输出一次,并重新同步来自不同存储器模块的数据。DDL本质上不需要提高时钟频率就能加倍提高SDRAM的速度,它允许在时钟脉冲的上升沿和下降沿读出数据,因而其速度是标准SDRA的两倍。
从外形体积上DDR与SDRAM相比差别并不大,他们具有同样的尺寸和同样的针脚距离。但DDR为184针脚,比SDRAM多出了16个针脚,主要包含了新的控制、时钟、电源和接地等信号。DDR内存采用的是支持2.5V电压的SSTL2标准,而不是SDRAM使用的3.3V电压的LVTTL标准。
DDR2内存起始频率从DDR内存最高标准频率400Mhz开始,现已定义可以生产的频率支持到533Mhz到667Mhz,标准工作频率工作频率分别是200/266/333MHz,工作电压为1.8V。DDR2采用全新定义的240 PIN DIMM接口标准,完全不兼容于DDR的184PIN DIMM接口标准。
DDR2和DDR一样,采用了在时钟的上升延和下降延同时进行数据传输的基本方式,但是最大的区别在于,DDR2内存可进行4bit预读取。两倍于标准DDR内存的2BIT预读取,这就意味着,DDR2拥有两倍于DDR的预读系统命令数据的能力,因此,DDR2则简单的获得两倍于DDR的完整的数据传输能力。
DDR2内存技术最大的突破点其实不在于所谓的两倍于DDR的传输能力,而是,在采用更低发热量,更低功耗的情况下,反而获得更快的频率提升,突破标准DDR的400MHZ限制。
性能指标:
http://publish.it168.com/cWord/images/299334.bmp 参考技术B SDRAM 也就是DDR的前身,SDRAM,即Synchronous DRAM(同步动态随机存储器),一、DDR的基本原理
有很多文章都在探讨DDR的原理,但似乎也不得要领,甚至还带出一些错误的观点。
这种内部存储单元容量(也可以称为芯片内部总线位宽)=2×芯片位宽(也可称为芯片I/O总线位宽)的设计,就是所谓的两位预取(2-bit Prefetch),有的公司则贴切的称之为2-n Prefetch(n代表芯片位宽)。
二、DDR SDRAM与SDRAM的不同
DDR SDRAM与SDRAM的不同主要体现在以下几个方面。
DDR SDRAM与SDRAM一样,在开机时也要进行MRS,不过由于操作功能的增多,DDR SDRAM在MRS之前还多了一EMRS阶段(Extended Mode Register Set,扩展模式寄存器设置),这个扩展模式寄存器控制着DLL的有效/禁止、输出驱动强度、QFC 有效/无效等。
由于EMRS与MRS的操作方法与SDRAM的MRS大同小异,在此就不再列出具体的模式表了,有兴趣的话可查看相关的DDR内存资料。下面我们就着重说说DDR SDRAM的新设计与新功能。
差分时钟是DDR的一个必要设计,但CK#的作用,并不能理解为第二个触发时钟(你可以在讲述DDR原理时简单地这么比喻),而是起到触发时钟校准的作用。由于数据是在CK的上下沿触发,造成传输周期缩短了一半,因此必须要保证传输周期的稳定以确保数据的正确传输,这就要求CK的上下沿间距要有精确的控制。但因为温度、电阻性能的改变等原因,CK上下沿间距可能发生变化,此时与其反相的CK#就起到纠正的作用(CK上升快下降慢,CK#则是上升慢下降快)。而由于上下沿触发的原因,也使CL=1.5和2.5成为可能,并容易实现。
2、 数据选取脉冲(DQS)
DQS是DDR SDRAM中的重要功能,它的功能主要用来在一个时钟周期内准确的区分出每个传输周期,并便于接收方准确接收数据。每一颗芯片都有一个DQS信号线,它是双向的,在写入时它用来传送由北桥发来的DQS信号,读取时,则由芯片生成DQS向北桥发送。完全可以说,它就是数据的同步信号。
在读取时,DQS与数据信号同时生成(也是在CK与CK#的交叉点)。而DDR内存中的CL也就是从CAS发出到DQS生成的间隔,数据真正出现在数据I/O总线上相对于DQS触发的时间间隔被称为tAC。注意,这与SDRAM中的tAC的不同。实际上,DQS生成时,芯片内部的预取已经完毕了,tAC是指上文结构图中灰色部分的数据输出时间,由于预取的原因,实际的数据传出可能会提前于DQS发生(数据提前于DQS传出)。由于是并行传输,DDR内存对tAC也有一定的要求,对于DDR266,tAC的允许范围是±0.75ns,对于DDR333,则是±0.7ns,有关它们的时序图示见前文,其中CL里包含了一段DQS的导入期。
3、 写入延迟
在上面的DQS写入时序图中,可以发现写入延迟已经不是0了,在发出写入命令后,DQS与写入数据要等一段时间才会送达。这个周期被称为DQS相对于写入命令的延迟时间(tDQSS, WRITE Command to the first corresponding rising edge of DQS),对于这个时间大家应该很好理解了。
为什么要有这样的延迟设计呢?原因也在于同步,毕竟一个时钟周期两次传送,需要很高的控制精度,它必须要等接收方做好充分的准备才行。tDQSS是DDR内存写入操作的一个重要参数,太短的话恐怕接受有误,太长则会造成总线空闲。tDQSS最短不能小于0.75个时钟周期,最长不能超过1.25个时钟周期。有人可能会说,如果这样,DQS不就与芯片内的时钟不同步了吗?对,正常情况下,tDQSS是一个时钟周期,但写入时接受方的时钟只用来控制命令信号的同步,而数据的接受则完全依靠DQS进行同步,所以DQS与时钟不同步也无所谓。不过,tDQSS产生了一个不利影响——读后写操作延迟的增加,如果CL=2.5,还要在tDQSS基础上加入半个时钟周期,因为命令都要在CK的上升沿发出。
另外,DDR内存的数据真正写入由于要经过更多步骤的处理,所以写回时间(tWR)也明显延长,一般在3个时钟周期左右,而在DDR-Ⅱ规范中更是将tWR列为模式寄存器的一项,可见它的重要性。
4、 突发长度与写入掩码
在DDR SDRAM中,突发长度只有2、4、8三种选择,没有了随机存取的操作(突发长度为1)和全页式突发。这是为什么呢?因为L-Bank一次就存取两倍于芯片位宽的数据,所以芯片至少也要进行两次传输才可以,否则内部多出来的数据怎么处理?而全页式突发事实证明在PC内存中是很难用得上的,所以被取消也不希奇。
另外,DDR内存的数据真正写入由于要经过更多步骤的处理,所以写回时间(tWR)也明显延长,一般在3个时钟周期左右,而在DDR-Ⅱ规范中更是将tWR列为模式寄存器的一项,可见它的重要性。
但是,突发长度的定义也与SDRAM的不一样了(见本章节最前那幅DDR简示图),它不再指所连续寻址的存储单元数量,而是指连续的传输周期数,每次是一个芯片位宽的数据。对于突发写入,如果其中有不想存入的数据,仍可以运用DM信号进行屏蔽。DM信号和数据信号同时发出,接收方在DQS的上升与下降沿来判断DM的状态,如果DM为高电平,那么之前从DQS中部选取的数据就被屏蔽了。有人可能会觉得,DM是输入信号,意味着芯片不能发出DM信号给北桥作为屏蔽读取数据的参考。其实,该读哪个数据也是由北桥芯片决定的,所以芯片也无需参与北桥的工作,哪个数据是有用的就留给北桥自己去选吧。
5、 延迟锁定回路(DLL)
DDR SDRAM对时钟的精确性有着很高的要求,而DDR SDRAM有两个时钟,一个是外部的总线时钟,一个是内部的工作时钟,在理论上DDR SDRAM这两个时钟应该是同步的,但由于种种原因,如温度、电压波动而产生延迟使两者很难同步,更何况时钟频率本身也有不稳定的情况(SDRAM也内部时钟,不过因为它的工作/传输频率较低,所以内外同步问题并不突出)。DDR SDRAM的tAC就是因为内部时钟与外部时钟有偏差而引起的,它很可能造成因数据不同步而产生错误的恶果。实际上,不同步就是一种正/负延迟,如果延迟不可避免,那么若是设定一个延迟值,如一个时钟周期,那么内外时钟的上升与下降沿还是同步的。鉴于外部时钟周期也不会绝对统一,所以需要根据外部时钟动态修正内部时钟的延迟来实现与外部时钟的同步,这就是DLL的任务。
DLL不同于主板上的PLL,它不涉及频率与电压转换,而是生成一个延迟量给内部时钟。目前DLL有两种实现方法,一个是时钟频率测量法(CFM,Clock Frequency Measurement),一个是时钟比较法(CC,Clock Comparator)。CFM是测量外部时钟的频率周期,然后以此周期为延迟值控制内部时钟,这样内外时钟正好就相差了一个时钟周期,从而实现同步。DLL就这样反复测量反复控制延迟值,使内部时钟与外部时钟保持同步。
CC的方法则是比较内外部时钟的长短,如果内部时钟周期短了,就将所少的延迟加到下一个内部时钟周期里,然后再与外部时钟做比较,若是内部时钟周期长了,就将多出的延迟从下一个内部时钟中刨除,如此往复,最终使内外时钟同步。
CFM与CC各有优缺点,CFM的校正速度快,仅用两个时钟周期,但容易受到噪音干扰,并且如果测量失误,则内部的延迟就永远错下去了。CC的优点则是更稳定可靠,如果比较失败,延迟受影响的只是一个数据(而且不会太严重),不会涉及到后面的延迟修正,但它的修正时间要比CFM长。DLL功能在DDR SDRAM中可以被禁止,但仅限于除错与评估操作,正常工作状态是自动有效的。
DDR
DDR (Double DATa Rate)SDRAM,顾名思义就是在相同工作频率下它能以两倍于SDRAM的速度来传输数据,也就是每时钟周期传输两次数据——时钟信号上升沿和下降沿各传输一次。那么加倍的数据传输率究竟从何而来呢?
DDR内存的存储阵列工作频率和同频的SDRAM(比如PC100的SDRAM和DDR200)一样,但是内部总线——也就是从内部存储阵列到I/O缓存之间的总线宽度是外部总线(buffer到内存控制器)的两倍,即从缓存到内存控制器采用了频率加倍的总线。也就是说,存储阵列使用一个较宽但较慢的总线,但是当数据传输到控制器时使用了一个较窄但是快速的总线。
实际上,内部的DRAM存储阵列在DDR266内存中的工作频率是133MHz,在DDR333中,存储阵列的工作频率是166MHz,DDR400中的存储阵列工作频率是200MHz,目前最快的DDR SDRAM的频率(这里不包括那些超频的内存)达到了600MHz,它的内部阵列工作频率达到300MHz,这个频率已经很难再继续提高。但是CPU的发展还在继续,对内存带宽的要求并没有因此停止,因此就出现了DDR2技术。
DDR2
通过上面对DDR SDRAM的讲解,DDR2的特性就很容易理解了,和DDR一样,它的内部存储阵列到I/O缓存之间通过一条宽敞的64位,100MHz总线,但是数据从缓存传输到外部控制器通过一条快速而狭窄的总线(16位,200MHz),外部总线仍然使用双倍传输数据的策略,我们得到的数据传输率为400MHz。因此,64位模组需要同时使用4个Bank以达到64位的总线宽度。这个内存模组被称为DDR2 400,它的标记方法和DDR内存相同,都是以内存的数据传输率来标识。
因此,以同样100MHz频率工作的DRAM存储阵列,我们使用不同的内存模组宽度,得到不同的内存带宽,SDRAM是800MB/s,DDR SDRAM是1600MB/s,DDR2 SDRAM则达到了3200MB/s的数据传输率!
这样看来,DDR2的性能似乎很容易就比DDR提高很多了,其实不然,除了带宽,这里还有一个重要的参数是延迟。正是由于延迟的影响,DDR2的性能并没有像预期一般理想。
让我们看看会有那些延迟,例如内存阵列工作的时钟组合是2-2-2,如果内存阵列在所有的方案中以相同的频率工作,那么所有的模组都具有同样的延迟(这里说的是PC100,DDR200,DDR2 400)。它们仅仅是带宽的区别。顺便提一下,2-2-2组合的含义是:CAS延迟,RAS到CAS的延迟和RAS预充电时间。第一个数字是取得列地址的延迟时间,第二个数字是行和列地址之间的延迟,第三个数字是存储阵列充电时间,预充电实际上是对行数据进行读操作。
但实际上,存储阵列不会工作在相同的频率上,举例来说PC133就是一个使用非常普遍的SDRAM,它的DRAM单元工作在133MHz上。DDR200虽然有着比PC133更高的带宽,但是它的相应延迟却更慢(内部阵列的工作频率仅100MHz),PC133的存储阵列的频率要比DDR200存储阵列的频率高33%。结果就是,DDR266才具有和PC133一样的延迟上的优势。
SDRAM详解(结构框图容量计算寻址方式初始化)
1、SDRM介绍
SDRAM(Syncronized Dynamic Ramdam Access Memory)是同步动态随机存储器,是DRAM的升级版。在SDRAM的基础上又发展出DDR(double rate),即双倍速度的SDRAM,DDR又有几个版本,比如DDR2、DDR3、DDR4,越往后的DDR读写速率越快,并且还有低功耗版本的DDR,一般低功耗版本的DDR命名为LPDDRn(n为2、3、4)。
2、DRAM结构框图(64Mbx16)
3、DRAM的关键参数
3.1、寻址方式
(1)SDRAM的地址分为列地址(column address)和行地址(row address)。上面框图中可以看出有10根行地址线,13根列地址线。
(2)A0-A12是SDRAM的地址线,行列地址都是通过这13根地址线传给SDRAM的,采用了分时复用的技术。
(3)分时复用技术,可以减少芯片的引脚。用SDRAM的RAS(RowAddressStrobe,行地址信号)和CAS(ColumnAddressStrobe,列地址信号)加以区分,在RAS引脚使能时地址线传输的是行地址,在CAS引脚使能时地址线传输的是列地址。
3.2、容量计算
(1)64Mbx16:64M个bit乘以16,就是1024M个bit,也就是1Gbit,128MB;
(2)根据地址线计算:13根行地址线、10根列地址线、3根片选信号线说明该SDRAM芯片有2^26次方个存储单元,每次存储单元储存16bit数据(因为数据线是DQ0-DQ15)也就是2个字节,所以该存储芯片的容量是 2 ^27个字节,也就是128MB。
(3)容量=Bank数 x 每个Bank的容量;
(4)Bank的容量=行地址 x 列地址 x 每个存储单元的容量;
(5)每个储存单元的容量=数据线的位数(DQ0-DQn);
3.3、Bank数
(1)可以将SDRAM的每个存储单元理解成表格中的一个单元,DRAM由2-8个Bank组成,每个Bank是完全一样的,每个Bank就相当于一个表格,有m行xn列,也就是对应行地址和列地址;
(2)在SDRAM的引脚中有Bank选择引脚(BA0-BA2),3个引脚最多支持8个Bank,具体芯片有几个Bank要查数据手册。
3.4、刷新间隔
SDRAM是动态存储器,使用的电容原理,需要在规定的时间内去刷新一遍,不然数据就会丢失。在初始化SDRAM时,需要给DRAM控制器配置刷新间隔,具体刷新间隔要查询数据手册。
3.5、Memory Burst Length
内存突发长度:可以理解成DRAM控制传一个地址给DRAM,DRAM返回的字节数。
4、DRAM的初始化
以上是关于SDRAM DDR DDR2的详细性能指标的主要内容,如果未能解决你的问题,请参考以下文章
小梅哥FPGA进阶学习之旅基于Altera FPGA 的DDR2+千兆以太网电路设计
采用激励driver模块IP核模拟DDR2控制器的用户侧,来调度DDR2控制器。 请问你的激励driver模块IP核是哪里来