DDR4设计概述以及分析仿真案例.docx
- 文档编号:1434177
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:27
- 大小:828.34KB
DDR4设计概述以及分析仿真案例.docx
《DDR4设计概述以及分析仿真案例.docx》由会员分享,可在线阅读,更多相关《DDR4设计概述以及分析仿真案例.docx(27页珍藏版)》请在冰豆网上搜索。
DDR4设计概述以及分析仿真案例
DRAM(动态随机访问存储器)对设计人员特别具有吸引力,因为它提供了广泛的性能,用于各种计算机和嵌入式系统的存储系统设计中。
本文概括阐述了DRAM的概念,及介绍了SDRAM、DDRSDRAM、DDR2SDRAM、DDR3SDRAM、DDR4SDRAM、DDR5SDRAM、LPDDR、GDDR。
DRAM
DRAM较其它内存类型的一个优势是它能够以IC(集成电路)上每个内存单元更少的电路实现。
DRAM的内存单元基于电容器上贮存的电荷。
典型的DRAM单元使用一个电容器及一个或三个FET(场效应晶体管)制成。
典型的SRAM(静态随机访问内存)内存单元采取六个FET器件,降低了相同尺寸时每个IC的内存单元数量。
与DRAM相比,SRAM使用起来更简便,接口更容易,数据访问时间更快。
DRAM核心结构由多个内存单元组成,这些内存单元分成由行和列组成的两维阵列(参见图1)。
访问内存单元需要两步。
先寻找某个行的地址,然后在选定行中寻找特定列的地址。
换句话说,先在DRAMIC内部读取整个行,然后列地址选择DRAMICI/O(输入/输出)针脚要读取或要写入该行的哪一列。
DRAM读取具有破坏性,也就是说,在读操作中会破坏内存单元行中的数据。
因此,必需在该行上的读或写操作结束时,把行数据写回到同一行中。
这一操作称为预充电,是行上的最后一项操作。
必须完成这一操作之后,才能访问新的行,这一操作称为关闭打开的行。
对计算机内存访问进行分析后表明,内存访问中最常用的类型是读取顺序的内存地址。
这是合理的,因为读取计算机指令一般要比数据读取或写入更加常用。
此外,大多数指令读取在内存中顺序进行,直到发生到指令分支或跳到子例程。
图1.DRAMs内存单元分成由行和列组成的两维阵列
DRAM的一个行称为内存页面,一旦打开行,您可以访问该行中多个顺序的或不同的列地址。
这提高了内存访问速度,降低了内存时延,因为在访问同一个内存页面中的内存单元时,其不必把行地址重新发送给DRAM.结果,行地址是计算机的高阶地址位,列地址是低阶地址位。
由于行地址和列地址在不同的时间发送,因此行地址和列地址复用到相同的DRAM针脚上,以降低封装针脚数量、成本和尺寸。
一般来说,行地址尺寸要大于列地址,因为使用的功率与列数有关。
早期的RAM拥有控制信号,如RAS#(行地址选择低有效)和CAS#(列地址选择低有效),选择执行的行和列寻址操作。
其它DRAM控制信号包括用来选择写入或读取操作的WE#(写启动低有效)、用来选择DRAM的CS#(芯片选择低有效)及OE#
(输出启动低有效)。
早期的DRAM拥有异步控制信号,并有各种定时规范,涵盖了其顺序和时间关系,来确定DRAM工作模式。
早期的DRAM读取周期有四个步骤。
第一步,RAS#与地址总线上的行地址变低。
第二步,CAS#与地址总线上的列地址变低。
第三步,OE#变低,读取数据出现在DQ数据针脚上。
在DQ针脚上提供数据时,从第一步第三步的时间称为时延。
最后一步是RAS#,CAS#和OE#变高(不活动),等待内部预充电操作在破坏性读取后完成行数据的恢复工作。
从第一步开始到最后一步结束的时间是内存周期时间。
上述信号的信号定时与边沿顺序有关,是异步的。
这些早期DRAM没有同步时钟操作。
DRAM内存单元必需刷新,避免丢失数据内容。
这要求丢失电荷前刷新电容器。
刷新内存由内存控制器负责,刷新时间指标因不同DRAM内存而不同。
内存控制器对行地址进行仅RAS#循环,进行刷新。
在仅RAS#循环结束时,进行预充电操作,恢复仅RAS#循环中寻址的行数据。
一般来说,内存控制器有一个行计数器,其顺序生成仅RAS#刷新周期所需的所有行地址。
刷新策略有两个(参见图2)。
第一个策略内存控制器在刷新周期突发中顺序刷新所有行,然后把内存控制返回处理器,以进行正常操作。
在到达最大刷新时间前,会发生下一个刷新操作突发。
第二个刷新策略是内存控制器使用正常处理器内存操作隔行扫描刷新周期。
这种刷新方法在最大刷新时间内展开刷新周期。
图2.DRAM刷新实现方案包括分布式刷新和突发刷新。
早期的DRAM演进及实现了DRAMIC上的刷新计数器,处理顺序生成的行地址。
在DRAMIC内部,刷新计数器是复用器输入,控制着内存阵列行地址。
另一个复用器输入来自外部地址输入针脚的行地址。
这个内部刷新计数器不需要内存控制器中的外部刷新计数器电路。
部分DRAM在RAS#周期前支持一个CAS#,以使用内部生成的行地址发起刷新周期。
SDRAM
在接口到同步处理器时,DRAM的异步操作带来了许多设计挑战。
SDRAM(同步DRAM)是为把DRAM操作同步到计算机系统其余部分,而不需要根据CE#(芯片启动活动低)、RAS#、CAS#和WE#边沿转换顺序定义所有内存操作模式而设计的。
SDRAM增加了时钟信号和内存命令的概念。
内存命令的类型取决于SDRAM时钟上升沿上的CE#,RAS#,CAS#和WE#信号状态。
产品资料根据CE#,RAS#,CAS#和WE#信号状态,以表格形式描述内存命令。
例如,Activate(激活)命令向SDRAM发送一个行地址,打开内存的一个行(页面)。
然后是一个Deselect(反选)命令序列,在对列地址发送Read或Write命令前满足定时要求。
一旦使用Activate命令打开内存的行(页面),那么可以在内存的该行(页面)上运行多个Read和Write命令。
要求Precharge(预充电)命令,关闭该行,然后才能打开另一行。
表1.DDRSDRAM数据速率和时钟速度。
DDRSDRAM
通过提高时钟速率、突发数据及每个时钟周期传送两个数据位(参见表1),DDR(双倍数据速率)SDRAM提高了内存数据速率性能。
DDRSDRAM在一条读取命令或一条写入命令中突发多个内存位置。
读取内存操作必需发送一条Activate命令,后面跟着一条Read命令。
内存在时延后以每个时钟周期两个内存位置的数据速率应答由两个、四个或八个内存位置组成的突发。
因此,从两个连续的时钟周期中读取四个内存位置,或把四个内存位置写入两个连续的时钟周期中。
DDRSDRAM有多个内存条,提供多个隔行扫描的内存访问,从而提高内存带宽。
内存条是一个内存阵列,两个内存条是两个内存阵列,四个内存条是四个内存阵列,依此类推(参见图3)。
四个内存条要求两个位用于内存条地址(BA0和BA1)。
图3.DDRSDRAM中多个内存条提高了访问灵活性,改善了性能
例如,有四个内存条的DDRSDRAM的工作方式如下。
首先,Activate命令在第一个内存条中打开一行。
第二个Activate命令在第二个内存条中打开一行。
现在,可以把Read或Write命令的任意组合发送到打开行的第一个内存条或第二个内存条。
在内存条上的Read和Write操作结束时,Precharge命令关闭行,内存条对Activate命令准备就绪,可以打开一个新行。
注意,DDRSDRAM要求的功率与打开行的内存条数量有关。
打开的行越多,要求的功率越高,行尺寸越大,要求的功率越高。
因此,对低功率应用,一次在每个内存条中只应打开一行,而不是一次打开行的多个内存条。
在内存条地址位连接到内存系统中的低阶地址位时,支持隔行扫描连续内存条中的连续内存字。
在内存条地址位连接到内存系统中的高阶地址时,连续内存字位于同一个内存条中。
DDR2SDRAM
DDR2SDRAM较DDRSDRAM有多处改进。
DDR2SDRAM时钟速率更高,从而提高了内存数据速率(参见表2)。
随着时钟速率提高,信号完整性对可靠运行内存变得越来越重要。
随着时钟速率提高,电路板上的信号轨迹变成传输线,在信号线末端进行合理的布局和端接变得更加重要。
地址、时钟和命令信号的端接相对简明,因为这些信号是单向的,并端接在电路板上。
数据信号和数据选通是双向的。
内存控制器中心在写入操作中驱动这些信号,DDR2SDRAM在读取操作中驱动这些信号。
多个DDR2SDRAM连接到同一个数据信号和数据选通上,进一步提高了复杂度。
多个DDR2SDRAM可以位于内存系统相同的DIMM上,也可以位于内存系统不同的DIMM上。
结果,数据和数据选通驱动器和接收机不断变化,具体取决于读取/写入操作及访问的是哪个DDR2SDRAM。
表2.DDR2SDRAM数据速率和时钟速度。
通过提供ODT(芯片内端接),并提供ODT信号,实现片内端接,并能够使用DDR2SDRAM扩展模式寄存器对片内端接值编程(75欧姆、150欧姆等等),DDR2SDRAM改善了信号完整性。
片内端接大小和操作由内存控制器中心控制,与DDR2SDRAMDIMM的位置及内存操作类型(读取或写入)有关。
通过为数据有效窗口创建更大的眼图,提高电压余量、提高转换速率、降低过冲、降低ISI(码间干扰),ODT操作改善了信号完整性。
DDR2SDRAM在1.8V上操作,降低了内存系统的功率,这一功率是DDRSDRAM的2.5V功率的72%.在某些实现方案中,行中的列数已经下降,在激活行进行读取或写入时降低了功率。
降低工作电压的另一个优势是降低了逻辑电压摆幅。
在转换速率相同时,电压摆幅下降会提高逻辑转换速度,支持更快的时钟速率。
此外,数据选通可以编程为差分信号。
使用差分数据选通信号降低了噪声、串扰、动态功耗和EMI(电磁干扰),提高了噪声余量。
差分或单端数据选通操作配置有DDR2SDRAM扩展模式寄存器。
DDR2SDRAM引入的一种新功能是附加时延,它使得内存控制器中心能够在Activate命令后,更快地灵活发送Read和Write命令。
这优化了内存吞吐量,通过使用DDR2SDRAM扩展模式寄存器对附加时延编程来配置。
DDR2SDRAM使用八个内存条,改善了1Gb和2GbDDR2SDRAM的数据带宽。
通过隔行扫描不同的内存条操作,八个内存条提高了访问大型内存DDR2SDRAM的灵活性。
此外,对大型内存,DDR2SDRAM支持最多八个内存条的突发长度。
DDR3SDRAM
DDR3SDRAM是一种性能演进版本,增强了SDRAM技术,它从800Mb/s开始,这是大多数DDR2SDRAM支持的最高数据速率。
DDR3SDRAM支持六档数据速率和时钟速度(参见表3)。
DDR3-1066SDRAM的能耗低于DDR2-800SDRAM,因为DDR3SDRAM的工作电压是1.5V,是DDR2SDRAM的83%,DDR2SDRAM的工作电压是1.8伏。
此外,DDR3SDRAM数据DQ驱动器的阻抗是34欧姆,DDR2SDRAM的阻抗较低,是18欧姆。
表3.DDR3SDRAM数据速率和时钟速度。
DDR3SDRAM将从512Mb内存开始,将来将发展到8Gb内存。
与DDR2SDRAM一样,DDR3SDRAM数据输出配置包括x4、x8和x16.DDR3SDRAM有8个内存条,DDR2SDRAM则有4个或8个内存条,具体视内存大小而定。
DDR2和DDR3SDRAM都有4个模式寄存器。
DDR2定义了前两个模式寄存器,另两个模式寄存器则预留给将来使用。
DDR3使用全部4个模式寄存器。
一个重要差异是DDR2模式寄存器规定了读出操作的CAS时延,写入时延则是1减去模式寄存器读出时延设置。
DDR3模式寄存器对CAS读出时延和写入时延的设置是唯一的。
DDR3SDRAM使用8n预取架构,在4个时钟周期中传送8个数据字。
DDR2SDRAM使用4n预取架构,在2个时钟周期中传送4个数据字。
DDR3SDRAM模
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DDR4 设计 概述 以及 分析 仿真 案例