1.DDR管脚定义
1.1 DDR3
DDR3物理引脚可划分为4类:地址总线、数据总线、控制线、电源与参考电压。
信号名 功能描述 数据线 DQ[13:0] 数据总线 DQS,DQS# 数据选通 TDQS,TDQS# 数据选通 DM 数据屏蔽 地址线 A[14:0] 地址总线 BA[2:0] bank选通线 命令&控制&时钟 CKE 时钟使能引脚(输入) CK. CK# 差分时钟信号(输入) CS# 片选信号 RAS#,CAS#,WE# 这3个信号,连同CS#,定义一个命令 RESET# 复位信号 ODT 片上终端使能 ZQ# 输出驱动校准的外部参考 电源与参考引脚 VDD 电源电压,1.5V±0,075V VEDO DQ电源,1.5V±0.075V VREFCA 控制、命令、地址的参考电压 VREFDQ 数据的参考电压 VSS 地 VSSQ DQ地 参考博客DDR3详解
1.2 LPDDR3
DDR3与LPDDR3的数据部分管脚定义无明显差别,只是LPDDR3单颗粒支持最大数据宽度为32位,分为4组数据信号,单组数据信号均包括DQ1-8, DQS+/-, DM。
DDR3的A0-A14, RAS#, CAS#, WE#,BA0-2这些信号在LPDDR3中改为了CA0-9,主要原因是两种芯片的Command truth table的定义更改了,对于内置有DDR控制器的处理器来说,硬件和软件设计时只要对相应管脚的定义准确即可。
参考博客DDR3、LPDDR3对比介绍
2.DDR布局要求
DDRx1时,点对点布局,留出绕线空间
DDRX2时,相对于CPU中所接信号管脚中心对称,注意地址线的线空间和串接电阻的放置位置
DDRX4和DDRX8时,一般两两正反对贴,同层放置时将导致远端分支过长
2.1 2片DDR
2片DDR相对于CPU对称式布局
滤波电容靠近IC管脚进行摆放
DDR相对距离
无排组时,600-800mil
有排组时,800-1000mil
2.2 4片DDR
双面布局:
2.3 电容布局
在BGA扇出后,再进行布局电容。滤波电容需要靠近引脚来进行摆放。
2.4 串组摆放
数据线串接电阻一般放在DDR与控制器中间,并联电阻靠近串接电阻放置,可放于其背面。
DM信号是数据线的掩码,一般都是点到点的单向传输,要求串接电阻放在控制器端,并联电阻放
在DDR端。
3.DDR的PCB布线要求
3.1布线要求
- 特性阻抗:单端50欧,差分100欧
- 数据线每10根尽量走在同一层(D0
D7,LDM,LDQS),(D8D15,UDM,UDQS)
- 分类,挑出电源和数据,电源和地分为A组,数据(DQ数据信号,DQS数据锁存信号,DM数据掩码信号)分为B组,其他的分为C组。
- 数据分为低八位和高八位(D0-D15),分为两组(D0-D7,LDM,LDQS),(D8-D15,UDM,UDQS),同组同层。注意不同ddr的DQS可能是差分线。
- 信号线的间距满足3W原则,数据线、地址(控制)线、时钟线之间的距离保持20mil以上或至少3W。
- 空间允许的情况下,应该在它们走线之间加一根地线进行隔离。地线宽度推荐为15-30mil。
- VREF电源走线先经过电容再进入管脚,Vref电源走线线宽推荐不小于20mil,与同层其他信号线间距最好20mil以上。
- 所有信号线都不得跨分割,且有完整的参考平面,换层时,如果改变了参考层,要注意考虑增加回流地过孔或退藕电容。
- 两片以上的DDR布线拓扑结构优选远端分支,T点的过孔打在两片DDR中间;
- 菊花链需得到仿真验证或芯片Layout Guide要求。(一般主控支持读写平衡的才支持菊花链)。
- 所有DDR信号距离相应参考平面边沿至少30-40mil。任何非DDR部分的信号不得以DDR电源为参考。
3.2等长要求
数据分组
1、低八位数据组DDR_data_bus:D0
D7,LDM,LDQS 10根数据线D15,UDM,UDQS 10根数据线
2、高八位数据组DDR_data_bus:D8
3、地址线,控制线,时钟线设为一组:DDR_addr_bus
等长规则
1、数据线以DQS为基准等长,地址线、控制线、时钟线以时钟线为基准等长,若软件中没有以时钟线为基准的,要手动将其选为基准线。
2、数据线最大长度尽量不超过2500mil,组内长度误差范围控制在+/-25mil,DQS与时钟线长度误差控制在+/-250mil,单片DDR的最大误差不超过1000mil;
3、地址线误差范围控制在+/-100mil;
4、DQS、时钟差分对内误差范围控制在+/-5mil,设计阻抗时,使对内间距不超过2倍线宽。信号实际长度应当包括零件管脚的长度,尽量取得零件管脚长度,并导入软件中。
4.布线过程
4.1信号分组
首先把其他的所有飞线隐藏掉,然后对DDR里面的飞线进行分组
在布线的时候,可以把其他的飞线全部隐藏掉,单独显示一组线。
4.2走信号线
先走信号线,一组一组的走。走线时修改BGA扇出的过孔位置,让飞线可以连出去。然后不管DRC,不管交叉,只管按照总线的方式拉线。
根据交叉情况,可以挪孔,哪里交叉调哪里,调整布线紧凑度,不要太散。
4.3走地址线
信号线处理完,接着就是地址线。因为要等长处理,所以两片DDR需要构建T点。
先对单个DDR构造小T点,在中间位置进行打孔,注意孔的位置大小,间隙能够走线,且满足工艺要求。然后进行走线,注意有一个差分走线。过程需要慢慢调整,不要心急。
两片DDR的T点基本相似,可以复制过去。
大T点直接走线,随时调整过孔,保证线能顺利走通。
对于大T点到CPU的连线,可以去掉一些没必要的过孔,增加走线的空间,或者调整器件位置,留有布线空间。
CPU部分也调整过孔,顶层和底层也拉出走线,可以看到两边已经对连出来。
接下来就是两端相连。可以连上的就直接相连,连不上的,有交叉的先打孔处理。然后慢慢修改调整。
地址,控制,时钟线没有同组同层的要要求,所以可以打孔切换层走线。