资讯详情

DDR4原理、硬件设计

DDR4.工作原理及寻址方式

DDR4是什么?

DDR详细设计硬件

DDR硬件设计步骤

DDR内存颗粒选择

DDR构建硬件电路

特性及电气参数

DDR4有哪些特点?

DDR4关键信号是什么?

除了眼图,DDR4还看那些电气参数?


DDR4是什么?

DDR4全称,DDR4-DRAM,与其他DDRDRAM同样,它也是目前电子系统架构中应用最广泛的RAM存储器。 这句话可以分解三个关键词:存储器,DRAM、DDR4。

先说存储器

说到存储,顾名思义,它是一个动词。以生活为例。如果有酸奶,当你不想吃的时候,把酸奶存放在冰箱、层和位置。当你想吃的时候,把酸奶从冰箱、曾经和位置拿出来。 在这个过程中,我们称之为存储,结合生活,我们可以看到存储应该有三个关键动作:

  1.  你必须知道酸奶放在哪里。如果你不知道放在哪里,酸奶就像丢一样。这个过程映射到电子领域,称为寻址。 
  2.  储存酸奶,取出酸奶。你需要先去冰箱,打开抽屉,在特定的位置取出酸奶。这个过程映射到电子领域,称为读写 
  3.  酸奶放在那个位置,必要时可以吃。这个过程映射到电子领域,称为数据保存。 

因此,综上所述,存储器是一种可寻址、可读写数据、可保存数据的电子设备。

我们再说说DRAM DRAM全称Dynamic Random Access Memory,为动态随机读取存储器翻译。所谓随机,就是想存哪个位置,就存哪个位置,听起来自由灵活。所谓动态,就是在保存数据的过程中,需要不断补充电量,听起来很耗电,很费力。为什么我们要用它?DRAM结构?因为在电路结构上,DRAM结构比SRAM简单很多。

最后说说DDR 我们聊到DDR,每个人都会想到存储器,但实际上DDR不代表存储器,DDR实际上是一种技术,全称Double Data Rate,翻译是双倍速率,但这些技术被广泛使用DRAM所以人们习惯了DDR指的是存储器,所以婴儿在后续的硬件设计过程中,在其他总线上看到DDR,请不要惊慌,因为你看到了DDR可能与存储无关。双倍速率是什么意思?双倍速率是什么意思?我们可以简单地说,当第一代存储器读写数据时,当时钟信号从低到高或从高到低时,采样数据只能在一个时钟周期中采样一个数字。当时钟从低到高时,后续聪明的人类会采样一个数据,当时钟从高到低采样一个数据,一个时钟周期,可以采样两个数据。所以读写速度是以前的两倍。这种技术手段是指DDR。

因此,总结如下:DDR4-DRAM第四代静态存储器支持双数据读取和随机位置访问.

DDR4-DRAM的工作原理

其引脚按功能可分为七类:前三类为电源、地面、配置。 后四类:控制信号、时钟信号、地址信号、数据信号 电源、地面和信号配置的功能非常简单,这里不重复。控制信号主要用于完成DDR4与DDR4 Controller状态切换之间。

如上DDR4芯片有20条地址线(17条)Address、2根BA、1根BG),16数据线。在弄清楚这些信号线的作用以及为什么地址信号仍然具有重用功能之前,我们首先抛出了一个问题。如果我们使用20条地址线和16条数据线来设计一条DDR,我们能设计的DDR寻址容量有多大?

根据课本上学到的最简单的单线8421编码搜址方法,,如果按单线8421编码寻址,我们可以很容易地计算出来,DDR芯片的最大存储容量为:

但事实上,是的DDR最大容量可达1GB,它是如何做到的,比传统的单线编码找址容量大512倍? 答案很简单,

我们把DDR存储空间可设计成以下样式:。 若BG拉高选择BANK GROUP0,拉低选择BANK GROUP1。(当然你也可以划分成4个大块,用2根线进行编码) 此时,,每个BANK如何设计?此时,有必要使用分时复用的设计念了。

原本传输1次地址,就传输1次数据,寻址范围最多16KB(不要读写信号,(2^17/1024)/8=16KB)。 现在修改为传输2次地址,在传输1次数据,寻址范围最多被扩展为2GB(2^17 * 2 ^17/2 ^30)/8=2GB)。虽然数据传输速度降低了一半,但是存储空间被扩展了很多倍。这就是改善空间。

所以,

。 **在第2次传输时,行地址选择禁用,剩下16根地址线,留10根列地址线表示列地址范围,可以轻松表示的列地址范围为2^10=1024个=1K个,**剩下6根用来表示读写状态/刷新状态/行使能、等等复用功能。

这样,我们可以把1个BANK划分成67108864个=64M个地址编号。如下所示: 在每个地址空间中,我们16根数据线全部用起来,一次存储16位数据

至此,20根地址线和16根数据线全部分配完成,我们用正向设计的思维方式,为大家讲解了DDR4的存储原理以及接口定义和寻址方式。

 

DDR4硬件详细设计

DDR的硬件设计步骤

作为硬件工程师,我们通常收到需求是:该产品内存配置为DDR4,容量8Gb(1GB=8Gb)。 而我们通常需要把这个“简陋”的需求,转化为具体的电路,该如何去实现呢? 其实,很简单。DDR4的硬件设计过程可以总结为:。 所以可以分为2部分,如何为平台选型1颗DDR内存颗粒?如何保证DDR相关电路能正常工作?

DDR内存颗粒选型

目前很多芯片都会把CPU与外围控制电路(例如:FLASH控制电路,DDR控制电路,USB控制电路)集成到1颗芯片中,像高通MDM8909,类似这样的芯片,我们称为“平台芯片”。平台芯片中DDR控制电路,我们称为“DDR Controller”,翻译过来为:DDR控制器。 为DDR控制器搭配它能控制的DDR内存颗粒,你就必须先了解下:DDR控制器需要什么样的内存颗粒? 硬件设计第一步:查阅平台芯片规格书中,关于DDR控制器部分的描述。

It has 16/32 bits DDR3L/4 up to 2400 MT/s, parallel NAND, serial NOR interfaces. 所以我们了解到了:

该平台芯片,支持DDR3L或者DDR4内存颗粒,数据位宽为16位或者32位,最高数据传输速度为2400MT/s,即频率为1200MHz(DDR是双边沿数据传输,1个时钟周期传输2次数据,1s传输了2400M次,即意味着1s时钟变化了1200次,即频率为1200MHz)。

结合产品需求:容量8Gb,那我们基本可以定DDR的详细规格了。

在正式选型之前,还要引入1个概念“RANK”。我们知道,DDR即支持多个内存颗粒扩展容量,又支持多个内存颗粒扩展数据位宽。 例如,我们的DDR控制器支持32位数据位宽,那我们可以用8个4位DDR,或者4个8位DDR,或者2个16位DDR,或者1个32位DDR进行数据位扩展。

所以,再确定我们的RANK数量后,需求被锁定了。 根据这个需求,可以在DDR官网上去寻找合适的“DDR芯片”了。例如在镁光官网产品页,选定DRR4-SDRAM,选定8Gb,DDR4。 网页会为你推荐很多型号。像数据位宽是8位的,可以直接跳过。 数据位宽为16位,频率为1200Mhz(2400MT/s)的,仍然有很多。这时候就是考验硬件工程师职业素养的时候了,我们不仅要考虑硬件性能,还要考虑下物料成本,物料采购周期。考虑成本,就尽量不要有“过设计”的地方,所以速率为3200MT/s的器件排除掉。如果我们是消费类商规产品,所以温度范围选择较窄的商业级器件,其次,为了增进你和采购的感情,

这样下来,我们选型基本就锁定到MT40A512M16JY-083E了,用量为2片(容量16Gb了)。 此时,开始阅览器件规格书,了解电气性能,设计外围电路,让DDR控制器和DDR内存颗粒都欢快的运行起来。

DDR的硬件电路搭建

设计逻辑器件电路,就要有逻辑思维,最简单的逻辑思维,就是分组。 所以,先了解DDR控制器的硬件接口。控制器硬件PIN脚可以分为电源组,配置组,控制组,时钟组,地址组,数据组。

电源组和配置组接口如下,供电,接电阻就可以完成,1.2V的供电,尽可能要平稳,此处忽略。ZQ电阻是用来校准ODT阻抗的,我们后面会讲到。

分好组后,就要根据DDR的工作原理来进行外围硬件设计了。

控制信号中,需要注意CS0和CS1,。其余控制信号一般无时序要求,能传递逻辑即可。

。因为同一块单板上,每根线上电子的传递速度是一样的,所以信号线长度约长,信号越晚到达,信号线长度越短,信号越早到达,地址采样的时候,是有时间期限的,所以,所有的地址信号必须保证在采样时间范围内,全部到达,因此要求地址线相对时钟线进行长度控制。前面一节我们讲了内存寻址原理,。可以看到,Address信号在进行行选择和列选择时,BG和BA信号都是保持的,所以

DDR控制器有2根BG信号,2根BA信号,17根Address信号。 同一个RANK有2个DDR颗粒,每个DDR颗粒有1根BG信号,2根BA信号,17根Address信号,前面CS0同时连接了2个DDR颗粒的片选,所以寻址时两颗DDR会被同时片选,那么DDR控制器如何区分开寻址其中1颗DDR颗粒呢?硬件又该怎么连接?

其实很简单,根据上节讲的内存寻址原理,我们知道每个DDR颗粒有2个BANK GROUP(1根BG信号),4个BANK(2根BA信号),

接下来,我们看看数据信号的链接,数据信号是内部分组的, 所以我们很轻易可以看出DDR控制器有4组DQS差分信号,32根数据信号。我们的RANK中有2个DDR颗粒,每个颗粒有2组DQS差分信号,16根数据信号。 所以

控制器的DQS[0:1]连接DDR CHIP0的DQS[0:1], 控制器的DQ[0:15]连接DDR CHIP0的DQ[0:15]。 控制器的DQS[2:3]连接DDR CHIP1的DQS[0:1], 控制器的DQ[16:31]连接DDR CHIP1的DQ[0:15]。

至此所有信号连接完成。

接下来是阻抗匹配,

特性与电气参数

DDR4有哪些特性?

DDR系列有DDR,DDR2、DDR3、DDR4、DDR2L、DDR3L、DDR4L、以及最新出现的DDR5。虽然技术在不断进步,但是每一代之间又有很多相似之处。我们观察下DDR主流系列产品的特色,就不难发现规律。 很明显,电压越来越低了,频率越来越高了,数据总线由单端发展为差分了。我们发现这与总线的发展史有异曲同工之妙。

科技的根源仍旧是人类最普通的智慧,不信?那我们来举个不恰当的李子,栗子,例子。假如河的这边有很多李子,河的对面有很多栗子,如果只用人力,尽可能快的把河对面的栗子和这边的李子来回搬运,你有哪些办法?你会很轻易地提出若干方案,多找人同时搬;找游泳快的兄弟;在河比较窄的地方搬;2个人为一组,A扔李子,B扔栗子….

你想你故在,聪明的前辈们也和你一样,把这种思维运用在了DDR的设计上。最开始找了很多人一起搬,所以DDR最开始是并行走线设计;后来找游泳快的人,所以DDR的频率在不断提高;游泳快但是累啊,得找窄点的地方游,所以DDR工作电平越来越低(电流传输速度是一定的,所以电压越低,耗时越短)。一直来回游泳也不是个事啊,能不能两人成组,你负责搬0,我负责搬1,所以DDR总线逐渐也在由并行向差分演进。

如上就是DDR的技术发展规律,也是很多总线的发展规律。掌握规律,我们再来看特性,DDR4电平1.2V,DQS信号走差分,频率在1600Mbps~3200Mbps.

DDR4有哪些关键信号?

DDR4都有哪些关键信号呢?一张图就可以看明白。有CK,ADDR,DQS,DQ,DQM信号,在电路之外,还能看到使能,复位,ODT,ZQ。 那么这些信号都有什么作用?我们接下来做简要介绍。

CK,Address,DQS,DQ,DM信号都有哪些作用? CK是DDR的数据通信时钟信号,。由于地址信号和命令信号在DDR操作过程中属于控制信号,相对DDR的数据传输,属于小众场景,。所以我们不难发现,ADDR信号仍然是单端信号,且大部分匹配电阻仍然外置。

由于数据传输才是DDR的主要业务,所以在DDR进行数据传输时,需要增加额外的措施来保证数据传输,所以DDR4增加了新的角色,DQS,DQ,DM信号。

数据选取脉冲(DQS)是DDR中的重要功能,。甚至可以这么说,CK和DQS配合起来,作为DQ数据线的参考时钟,这也是为什么走线时,DQS和DQ要放到一起考虑的原因。

在数据连续传输过程中,随着时钟的变化,CPU可能会读取到DDR中位置1,位置2,位置3,位置4的数据,假如在这个连续传输过程中,CPU不想要位置2的数据,又不想中断数据传输,那么有什么办法呢?DQM就派上用场了,在传输到位置2时**,DQM使能,就可以屏蔽掉位置2 的数据。**

什么是ODT? 芯片终端端接匹配电阻简称为ODT。ODT是从DDR2后期的产品才开始出现的,并随着产品的升级,ODT呈现更多的数值。当前,,其简化电路结构如下图所示。

ODT电路的引入,是DDR发展的里程碑,ODT有如下优势:

去掉了PCB板上的分立端接电阻元件,降低了硬件设计成本。 由于没有端接电阻,使PCB设计有更多的布线空间,方便EDA布线。 由于ODT通过内部的寄存器进行调节,可以通过软件开启和关闭,减少了调试工作量。 芯片内部端接比板级端接更加有效,这样没有过多的寄生效应。 减少了外部元件的数量,在可靠性上也获得了优化。

ODT的引入,为进一步提高DDRx内存的工作频率做了铺垫。当然,ODT也并不都是优点,因为使用了ODT,匹配电阻的种类和数值已经确定并无法修改;在某种程度上也会带来一定的功耗增加,所以在一些消费类的产品上也并不都是开启ODT功能。

什么是ZQ校准? ZQ是DDR3之后新增的一个引脚,而DDR3正是通过ZQ进行输出电阻(Ron)和 ODT的校准,这个校准过程在DRAM初始化过程中都会完成。

除了眼图,DDR4还看那些电气参数?

DDR4设计是否设计OK,就需要看DDR4的量测参数是否满足JEDEC规范。那规范中都定义了哪些电气参数呢?每个电气参数又代表了什么意义?接下来我们做简要介绍。

  1. 过冲与下冲。 信号如果在传输过程中阻抗不连续,就会出现反射,反射表现在示波器波形上,就是信号上冲和下冲,在DDR设计过程中,我们关注的不是信号在某个时间点的过冲幅值,而是过冲在时间维度的积分。关注的是一个过程,而不是一个点。 对于每个信号,协议规范都会在这4个维度上对信号完整性进行定义规范。
  2. 信号的高电平和低电平。 在高速信号传输中,信号能否达到协议规定的高电平最低门限和低电平最高门限,也直接决定了产品的稳定性。在DDR规范中,单端地址和控制命令、单端数据和数据掩码信号的AC和DC输入电平,差分时钟和数据选通信号的AC和DC输入电平都会被明确定义。仿真和测试过程中,只需要关注特定场景下的实测值有无达到协议规定值即可。

3. 差分信号交叉点电压。 为了满足信号的建立和保持时间,差分信号单端交叉点必须保证在一定的范围内。 交叉点以V DD/2作为参考电压,测量的是相对于V DD/2的偏离,偏离得越小越好。 4. 时序要求。 有时序关系要求的主要有3组:地址、控制和命令信号与时钟信号之间;数据选通信号与时钟信号之间;数据、数据掩码与数据选通信号之间。所以在PCB设计时,也按信号进行分组设计,地址、控制和命令信号与时钟信号作为一组,数据、数据掩码信号与数据选通信号每一个字节作为一组,相同组的信号在设计时基本会保持长度相差在一定的范围之内,并且设计的方式基本一样(如同组布线在同层、有相同的过孔数等),这样才能保证满足时序的要求。

5.斜率降额。 总线的规范中有两种测量斜率的方式,分别是常规的测量方式和切线测量方式,以地址、控制和命令信号为例,其定义如下图所示。 这两种测量方式主要由获得波形的质量决定,如果波形的单调性比较好,则以常规方式测量;如果单调性不好,出现一些回钩或台阶,则用切线方式测量。 图中红色框框代表常规斜率测量方法,绿色箭头代表切线方式测量方法。在DDR中,信号的建立和保持时间并不是唯一不变的,会随着斜率的变化而变化,为了弥补斜率造成的影响,在仿真最终的“建立和保持时间”时,测量的时序参数需要与降额参数相加。降额参数与信号的斜率和时钟/数据选通的斜率有关。


转自-------每日硬知识

标签: 电阻083ddr4驱动电阻ddr端接电阻电流

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

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