扒一扒DDR4的新功能和PCB设计上的一些注意事项

转自 http://www.elecfans.com/d/906656.html

DDR4新增了许多功能,这对于我们之前信手拈来的内存PCB设计又带来了一些新的挑战,虽然说之前的一些规范可以用,但还是有很多不一样的地方,如果依然按照之前的设计方法来做,说明你还不了解DDR4,一准入坑。今天咱们就来扒一扒它的新功能和PCB设计上的一些注意事项。

DDRX发展趋势及参数对比

DDR4信号引脚功能

DDR4新增pin

DDR4新增功能

(1)新的JEDEC POD12接口标准(工作电压1.2V) ;

(2)DBI:可以降低功耗并且提升数据信号完整性;

(3)Bank群组结构:是个8n预取群组结构,它可以使用两个或者四个Bank组,这允许DDR4内存在每个Bank群组单独被激活、读取、写入或刷新操作,这样可以带来更高的内存速度和带宽;

(4)取消了Derating,时序仿真计算不再繁琐;

(5)DQ动态确定Vref ( V_ center ) ,增加了眼图要求;

(5)新的终止调度:在DDR4中DQ bus可以转移终止到VDDQ ,这样即使VDD电压降低的情况下也能保证稳定;

(6)新的数据总线CRC技术,可以进行传输过程中的错误侦测,特别对非ECC内存进行写入操作时有帮助;

(7)针对命令和地址总线的新的CA奇偶校验;突发长度和突发停止长度分别为8和4 ;

(8)正常和动态的ODT :改进ODT协议,并且采用新的Park Mode模式可以允许正常终结和动态吸入终结,而不需要去驱动ODT Pin

(9)Differential Signaling(差分信号技术)

信号分组

DDR3数据信号的分组

DDR4数据信号的分组

DDR3地址信号的分组

DDR4地址信号的分组

布局要求

(1)地址线布局布线需使用Fly-by的拓扑结构,不可使用T型,拓扑过孔到管脚的长度尽量短,长度在150mil左右

(2)VTT上拉电阻放置在相应网络的末端,即靠近最后一个DDR4颗粒的位置放置;注意VTT上拉电阻到DDR4颗粒的走线越短越好,走线长度小于500mil;每个VTT上拉电阻对应放置一个VTT的滤波电容(最多两个电阻共用一个电容)

(3)CPU端和DDR4颗粒端,每个引脚对应一个滤波电容,滤波电容尽可能靠近引脚放置。线短而粗,回路尽量短;CPU和颗粒周边均匀摆放一些储能电容,DDR4颗粒每片至少有一个储能电容。

阻抗控制

(1)单端线:50ohm

(2)差分线:100ohm

带状线和平面

(1)除了从焊盘到过孔之间的短线外,所有的走线都必须走带状线,即内层走线

(2)所有的内层走线都要求夹在两个参考平面之间,即相邻层不要有信号层,这样可以避免串扰和跨分割走线,走线到平面的边缘必须保持4mil以上的间距;

(3)数据线参考平面优先两边都是GND,接受一边地,一边自身电源,但是到GND平面的距离要比到电源平面的距离要近;对于地址线,控制信号,CLK来说,参考面首选GND和VDD,也可以选GND和GND。

容性负载补偿

flyby拓扑要求stub走线很短,当stub走线相对于信号边沿变化率很短时,stub支线和负载呈容性。负载引入的电容,实际被分摊到了走线上,所以造成走线的单位电容增加,从而降低了走线的有效阻抗。所以在设计中,我们应该将负载部分的走线设计为较高阻抗,最直接有效的方式就是减小支线线宽。经过负载电容的平均后,负载部分的走线才会和主线阻抗保持一致,从而达到阻抗连续,降低反射的效果。

PCB叠层设计

(1)所有的DQ线必须同组同层。

(2)地址线是否同层不做要求。

(3)为了减少过孔产生的Stub,强烈建议在同一层中优先布DQ,   DQS,CLK等信号。如果所有的BGA都在top层,data线尽量的靠近bottom层走,而地址,控制线则可以靠近top层走;当BGA在top层时,越靠近bottom层,过孔产生的stub越短,信号质量越好。

走线线宽和线间距

(1)线宽和线间距必须满足阻抗控制,即单端线50ohm,差分线100ohm。ZQ属于模拟信号,布线尽可能短,并且阻抗越低越好,所以尽可能的把线走宽一点,建议3倍50ohm阻抗控制的线宽;

(2)DQ和DBI数据线,组内要求满足3W间距,与其他组外信号之间保持至少4W;

(3)DQS和CLK距离其他信号间距做到5W以上;

(4)在过孔比较密集的BGA区域,同组内的数据线,地址线的间距可以缩小到2W,但是要求这样的走线尽可能的短,并且尽可能的走直线;

(5)如果空间允许,所有的信号线走线之间的间距尽可能的保证均匀美观;

(6)内存信号与其他非内存信号之间应该保证4倍的介质层高的距离。

等长要求

(1)数据走线尽量短,不要超过2000mil,分组做等长,组内等长参考DQS误差范围控制在+/-5mil;

(2)地址线、控制线、时钟线作为一组等长,组内等长参考CLK误差范围控制在+/-10mil;

(3)DQS、时钟差分线对内误差范围控制在+/-2mil;

(4)RESET和ALERT不需要做等长控制

(5)信号实际长度应当包括零件管脚的长度,尽量取得零件管脚长度,并导入软件中;

(6)因有些IC内核设计比较特别,按新品设计指导书或说明按参考板做,特别是IntelAMD的芯片,请特别留意芯片手册要求;

电源处理

(1)VDD(1.2V)电源是DDR3的核心电源,其引脚分布比较散,且电流相对会比较大,需要在电源平面分配一个区域给VDD(1.2V);VDD的容差要求是5%,详细在JEDEC里有叙述。通过电源层的平面电容和专用的一定数量的去耦电容,可以做到电源完整性。

(2)VTT(0.6V)电源,它不仅有严格的容差性,而且还有很大的瞬间电流;可以通过增加去耦电容来实现它的目标阻抗;由于VTT是集中在上拉电阻处,不是很分散,且对电流有一定的要求,在处理VTT电源时,一般是在元件面同层通过铺铜直接连接,铜皮要有一定宽度(120mil)。

(3)VREF(0.6V)VREF要求更加严格的容差性,但是它承载的电流比较小。它不需要非常宽的走线,且通过一两个去耦电容就可以达到目标阻抗的要求。因其相对比较独立,电流也不大,布线处理时建议用与器件同层的铜皮或走线直接连接,无须再电源平面层为其分配电源。注意铺铜或走线时,要先经过电容再接到芯片的电源引脚,不要从分压电阻那里直接接到芯片的电源引脚。

(4)VPP(2.5V)内存的激活供电,容差相对宽松,最小2.375V,最大2.75V。电流也不是很大,一般走根粗线或者画块小铜皮即可。

以下参考:https://www.cnblogs.com/zhongguo135/p/8486961.html

DDR4接口
A[17:0]     input

为激活命令提供行地址,为读、写命令地址输入:提供列地址,也为模式寄存器设

置提供操作码,A[16]只用于8Gb和16Gb,A[17]只用于16Gb,另外

(A10/AP, A12/BC_n, WE_n/A14, CAS_n/A15, RAS_n/A16还有一些别

的功能)                               

A10/AP input 

 自预充电(Auto precharge):在读写命令期间采样A10,决定是

否对访问的Bank在读写操作之后进行Auto Precharge,高电平表示进

行Auto Precharge,低电平表示不进行Auto Precharge。

另外PRECHARGE命令期间也会对A10进行采样,来决定是对一个(A10为

低电平)Bank进行还是对所有的Banks(A10为高电平)进行PRECHARGE,

如果选择一个,则选择的Bank由Bank组和Bank地址决定     

A12/BC_n input

突发突变(Burst chop):在读和写命令期间对A12/BC_n进行采样,

来决定是否进行突发突变,高电平表示进行,低电平表示不进行.具体

可以查看命令真值表

ACT_n   input    

命令输入(command input):ACT_n用于指示激活命令。当ACT_n(与CS_n)是低电平时,输入RAS_n/A16,CAS_n/A15, 和WE_n/A14 看作行地址用于激活命令。

当ACT_n为高电平(CS_n为低)时,RAS_n/ A16, CAS_n/A15, and WE_n/A14,用作RAS_n, CAS_n,和WE_n

BA[1:0]     input

Bank地址输入(bank address inputs):指示被ACTIVTE,READ,

WRITE或者PRECHARGE命令操作的Bank。另外用作指示在MODE REGISTER

SET命令期间要访问的模式寄存器

BG[1:0]   input

Bank组地址输入(Bank group address inputs):指示被ACTIVTE,

READ,WRITE或者PRECHARGE命令操作的Bank组。另外用作指示在MODE REGISTER SET命令期间要访问的模式寄存器,BG[1:0]用于x4和x8配

置,而BG[1]不用于x16配置

C0/CKE1,

C1/CS1_n,

C2/ODT1

input Stack address inputs:

CK_t,

CK_c,

input

时钟:差分时钟输入,所有的地址,命令和控制输入信号在CK_t和

CK_c的低电平被采样  

CKE input

时钟使能:高电平激活,低电平禁止内部时钟信号,输入缓存和输

出驱动。拉低CKE提供PRECHARGE,POWER_DOWN和SELF REFRESH操作。

CKE在读写期访问期间必须保持HIGH,

CS_n input 片选

DM_n,

UDM_n,

LDM_n

input

输入数据Mask:用于写数据,DM在DQS的双沿采样,DM不支持x4配置,

UDM_n用于x16的高8位,LDM_n用于x16低8位,

ODT

input

On-die termination:ODT为高电平时使能内部终端电阻到DDR4.当使

能时,ODT(Rtt)只用于x4和x8的DQ, DQS_t,DQS_c,

DM_n/DBI_n/TDQS_t, 和TDQS_c信号(当TDQS功能通过模式寄存器

使能)。对于x16配置,Rtt应用于DQ, DQSU_t, DQSU_c, DQSL_t,

DQSL_c, UDM_n,和 LDM_n信号,如果模式寄存器禁止Rtt,ODT脚将

被忽略。

PAR INPUT  

RAS_n/A16,

CAS_n/A15,

WE_n/A14

INPUT

命令输入:

RESET_n

input 低电平异步复位:

TEN

input 连通性测试模式:高电平有效,低电平无效

DQ

IO

数据输入输出 :对于x4,x8和x16分别代表DQ[3:0],DQ[7:0]和

DQ[15:0].如果在模式寄存器中使能了写CRC,写CRC会添加在写

突发的后面

DBI_n,

UDBI_n,

LDBI_n

I/O

DBI输入输出:数据总线翻转。DBI_n用于x8,UDBI_n用于x16的

高8位,LDBI_n用于x16的低8位。不支持x4。通过模式寄存器可

以配置DBI用于读和写操作。

DQS_t,

DQS_c,

DQSU_t,

DQSU_c,

DQSL_t,

DQSL_c,

IO

数据选通:输入用于写数据输出用于读数据。与输出数据边沿对

齐,与输入数据中心对齐,DQS用于x4,x8,DQSU用于x16高8位,

DQSL用于x16低8位。DDR4只支持差分数据选通,不支持单端数据

选通道。

ALERT_n

   

TDQS_t,

TDQS_c

output

终端数据选通道:TDQS只用于x8 DRMAs.如果在模式寄存器使能该功能,DRAM会在TDQS_t和TDQS_c使能与DQS_t和DQS_c同样

的Rtt终端电阻。当TDQS功能通过模式寄存器禁止,DM/TDQS_t脚会提供DATA MASK(DM)功能,TDQS_c脚不使用。对于x4和x16模式,

必须禁止TDQS功能。DM功能只支持x8和x16配置

ZQ

参考 外部通过240欧姆电阻连接到VssQ

 

Bank与Bank 组的区分

这是从DDR4框图中截取的一部分。该DDR总共有16个Bank,每4个Bank组成一个Bank组。

Bank与Bank 组的区分

READ Buust操作

DDR4 读命令支持突发长度为BL8,BC4两种,或者OTF(实时修改BL8和BC4)。这由A12来控制

.A12 = 0 ,BC4(BC4 = burst chop)

.A12 = 1 ,BL8

扒一扒DDR4的新功能和PCB设计上的一些注意事项--转相关推荐

  1. SAP 电商云 Spartacus UI 支持延迟加载的新功能的入口设计

    假设我们要为 Spartacus UI 开发一个新功能,首先,这个新功能,应该放到 feature library 文件夹里: 这个新功能的入口,放置到 Feature Module 中. 新功能通过 ...

  2. android模仿唱吧榜单界面,唱吧上线弹唱新功能,界面设计被指像素级抄袭唱鸭...

    1月10日消息,日前,有多家媒体报道称,唱吧即将上线弹唱功能,目前正在测试中,并且已经有用户上传弹唱作品.与此同时,唱吧还将正式对外宣布上亿规模的音乐创作者分成计划.不过,有网友发现,唱吧上线的新功能 ...

  3. 微信大改版!新功能被网友骂上热搜!

    点击上方"逆锋起笔",公众号回复 pdf 领取大佬们推荐的学习资料 微信版本更新又上热搜了!深夜里阅读量就飙到了3.8亿,这是有大变动?! 很多细心的朋友已经发现,自己的微信个人资 ...

  4. 苹果新功能惹网友众怒,还有隐私可言吗?

    编译 | 禾木木 出品 | AI科技大本营(ID:rgznai100) 大部分人选择 iPhone 的一大理由就是信息安全,这家公司对于个人隐私的保护一直为人称赞. 最近苹果公司宣布,为了让儿童能够更 ...

  5. 苹果新功能惹众怒,4000 多家组织和个人签署公开信,敦促苹果放弃“儿童安全”功能...

    ‍‍ [CSDN 编者按]大部分人选择iPhone的一大理由就是信息安全,这家公司对于个人隐私的保护一直为人称赞.最近苹果公司宣布,为了让儿童能够更加安全地上网,他们决定在iOS 15.iPadOS ...

  6. 战神4 幕后花絮 概念艺术_Java 9幕后花絮:新功能从何而来?

    战神4 幕后花絮 概念艺术 找出Java幕后发生的事情,以及新功能如何实现 在上一篇文章中,我们介绍了即将发布的Java 9版本的新功能和尚待解决的功能,并简要提到了将新功能添加到下一个版本之前要经历 ...

  7. Java 9幕后花絮:新功能从何而来?

    找出Java幕后发生的事情,以及新功能如何实现 在上一篇文章中,我们介绍了即将发布的Java 9版本的新功能和尚待解决的功能,并简要提到了将新功能添加到下一个版本之前要经历的过程. 由于此过程几乎影响 ...

  8. 苹果新功能惹众怒,4000多家组织和个人签署公开信 敦促苹果放弃“儿童安全”功能...

    [CSDN 编者按]大部分人选择iPhone的一大理由就是信息安全,这家公司对于个人隐私的保护一直为人称赞.最近苹果公司宣布,为了让儿童能够更加安全地上网,他们决定在iOS 15.iPadOS 15. ...

  9. 马化腾“扛不住了”?微信“跟风”推出新功能,像极了当年的QQ

    微信"跟风"推出新功能 微信虽然本质上只是一款社交软件,但是经过了将近10年的发展后,它早已成为了很多国人的生活必需品.如今无论是学习还是工作,亦或者是其它事宜,基本上都离不开微信 ...

最新文章

  1. 关于PKI架构(使用证书)保护Web访问的安全实现SSL的基本理论
  2. NOI 2015 滞后赛解题报告
  3. 架构师成长之路:如何提升技术掌控力?
  4. Apache连接和访问控制
  5. Win10专业版系统PyCharm专业版使用WSL(ubuntu20.04 LTS)配置Docker解释器配置环境详细教程
  6. linux sed 冒号,linux sed 总结
  7. python的基础_python基础知识,python必背内容,一、python的基
  8. 利用sql语句实现到datagridview显示的转换
  9. RabbitMQ的基本概念
  10. III.Data Modeling and Aggregation(数据模型和整合)
  11. F23. Makefile教程
  12. 基于PHP使用thinkphp开发的教学管理系统
  13. 学习笔记---高等数学前置知识---约分、通分
  14. 学习笔记之 初试Linux遇到的问题
  15. LeetCode算法解析之“箭爆气球问题”
  16. Pizza店(JAVA程序设计)
  17. S3C2440的裸奔--内存篇(非MMU)--------转的网友 泠瑛 的博客文章在此谢过!
  18. Linux input子系统上报键值失败问题
  19. MOSFET的SOA
  20. windows上查看u盘ext4分区数据

热门文章

  1. python监控短信_利用Python实现手机短信监控通知的方法
  2. 防泄密-应用软件研发行业源代码防泄密及技术文档防泄密解决方案
  3. 【JUC】Callable接口
  4. 牛客练习赛51 C 勾股定理 (结论题)
  5. JMeter对接口进行压力测试
  6. Markdown图片路径的改变方法
  7. 在别人写的代码上做修改我是这样保证正确性
  8. 2017云栖大会门票转让_2017云栖大会门票多少钱?
  9. JavaScript if条件判断语句
  10. 华为路由器 IPSec VPN 配置