DDR的布局布线设计
文章目录
前言
该笔记可能只是我在创作时候遇到困难或者其他特殊情况的时候记录一下,等到大部分章节更新完毕后会按照难易程度重新排序
记录一下今天绘制DDR3时候的一点心得,总得来说呢,在给DDR布线之前一定要有一个总体的规划,拓扑结构是什么 T点还是菊花链,走T点的话,需要预留的空间更多一些,菊花链需要预留的空间少一点。还有就是板层需要几个走线层呢?一般来说2个DDR 最少需要三个走线层,不论是哪种拓扑结构,对于2个DDR,表层无法舒服走线,那么DDR内部只有2个走线层,如果布局得当,对于16位的DDR来说,基本上数据线是可以一个走线层走完的,一般是内部走线层,因为底层也会贴一些元器件,所以会干扰走线,地址线最少需要两层才能走完(你一层走线也就牛逼)。
对于四个DDR,如果没有顶底贴的话,最少要5个走线层,对于菊花链,DDR地址线之间需要三个走线层才能走完,表层无法在BGA中走线,所以加上数据线的一层,最少要5个走线层;T点的情况也类似。目前我只画到4个DDR,多的我也没画过,不太好描述了。
一、DDR是什么?
DDR=Double Data Rate双倍速率,DDR SDRAM=双倍速率同步动态随机存储器,人们习惯称为DDR,其中,SDRAM 是Synchronous Dynamic Random Access Memory的缩写,即同步动态随机存取存储器。而DDR SDRAM是Double Data Rate SDRAM的缩写,是双倍速率同步动态随机存储器的意思。DDR内存是在SDRAM内存基础上发展而来的,仍然沿用SDRAM生产体系,因此对于内存厂商而言,只需对制造普通SDRAM的设备稍加改进,即可实现DDR内存的生产,可有效的降低成本。
DDR的一些工作条件:
还是可以看出,随着DDR的更新换代,总线时钟频率越来越高,并且传输速率也越来越快,工作电压越来越低,逐渐朝着低功耗、高速率的方向发展,这也为了DDR布线布局带来了较高要求的阻抗匹配。
二、DDR的引脚定义
下图是一般的DDR引脚定义,可以将DDR的引脚划分为3类,第一类为电源线,VDDQ、VSSQ、VDD、VSS、VREF都是电源线;第二类为数据线,由高低8位数据线为一组,D0-D7+LDM+数据差分对以及D8-D15+UDM+数据差分对组成,一般11条线为一组数据线;第三类为地址线,除去数据线和电源线,余下部分都统一划分为地址线,有一对时钟差分。
三、DDR的PCB布局规则
可以按照DDR的个数分别进行布局:
一片DDR
一片DDR时,点对点布局,留出一定的绕线空间
两片DDR
两片DDR时,相对于CPU对应DDR引脚的中心位置对称,留出一定的绕线空间,同时注意串接电阻、并联电阻的位置
- 中间有排阻时,DDR相对于中心距离:800~1000mil
- 中间无排阻时,DDR相对于中心距离:600~800mil
要合理的规划走线布局结构,按照前言所说的,两片DDR最少需要三个走线层,假设是一个6层板,三个走线层,以走T点结构为例:
图中可以看出,因为是BGA封装,表层很难直接走线,同时高八位数据与低八位数据两两互相交叉,理论上布局一下是可以一层走完数据线的,但是既然地址线必须要用到至少两个走线层,也没必要在手头宽裕的情况下吝啬走线,高低八位各一个走线层搞定,同时还要注意的是,一般T点中心结构走的是内层,所以尽量不要让内层数据线与内层地址线在DDR内部走线时有冲突,即如下:
左边是数据走线,用底层蓝色走,右边是T点,用内层黄褐色走,如果你都用黄褐色走线的话
,理论上来说完全没问题,但是尽量错峰出行,避免走线空间太少了!!!
这边添加一下T如何出线,基本上如果是两片DDR,一定是要先走DDR内部的T点,然后再走外部的T点,最好的分配就是,两侧的点交互错开放置,放两派,然后一般来说两边的地址线出线是不平均的,T的两排过孔尽量控制的平均分配一下,T点中过孔与过孔之间的间距一般就是你扇出的那个DDR焊盘过孔之间的间距,不然就不太好出现了,添加的这一点要记住,间距最好与DDR的过孔出线保持一致
然后就是T点走线,基本上吧,你是不可能在T点这边满足3W原则,就跟你BGA出现不可能满足3W原则一样,你要是能满足,你也牛逼,我佩服你,嘻嘻嘻,T点这边,很难很难,基本上你知道走T点,但是扇孔时,分配孔也是门学问,这个要自己在实践中领悟了
然后就是CPU走线引出到DDR的T点这边,其实没什么讲究,表层尽量走出来,走不出来的走底层,交错的就用第三层交换位置走线,留足绕等长的空间。(理论上四个走线层最舒服,要基于成本考虑捏)
四片DDR及以上
四片DDR或8片DDR时,一般两两顶底对贴,跟两片DDR一个道理,没啥新东西说,意思意思到位吧,
四、DDR的PCB走线原则
布线要求(推荐以Layout Guide或仿真结果为准)
- 特性阻抗:单端50欧,差分100欧
- 数据线每10根尽量走在同一层(DO-D7,LDM,LDQS),(D8-D15.UDM,UDQS)
- 信号线的间距满足3W原则,数据线、地址(控制)线、时钟线之间的距离保持20mi以上或至少3W
- 空间允许的情况下,应该在它们走线之间加一根地线进行隔离。地线宽度推荐为15-30mil
- VREF电源走线先经过电容再进入管脚,Vre电源走线线宽推荐不小于20mil,与同层其他信号线间距最好20mil上
- 所有信号线都不得跨分割,且有完整的参考平面,换层时,如果改变了参考层,要注意考虑增加回流地过孔或退藕电容
- 两片以上的DDR布线拓扑结构优选远端分支,T点的过孔打在两片DDR中间
- 菊花链需得到仿真验证或芯片Layout Guide要求。(一般主控支持读写平衡的才支持菊花链)
- 所有DDR信号距离相应参考平面边沿至少30-40mil。任何非DDR部分的信号不得以DDR电源为参考
等长规则
- 数据线以DQS为基准等长,地址线、控制线、时钟线以时钟线为基准等长,若软件中没有以时钟线为基准的,要手动将其选为基准线。
- 数据线最大长度尽量不超过2500mil,组内长度误差范围控制在+/- 25ml,DQS与时钟线长度误差控制在+/-250mil,单片DDR的最大误差不超过1000mil:
- 地址线误差范围控制在+/-100mil:DQS、时钟差分对内误差范围控制在+/-5mil,设计阻抗时,使对内间距不超过2倍线宽。信号实际长度应当包括零件管脚的长度,尽量取得零件管脚长度,并导入软件中。
总结
我的建议是,如果你直接布线不考虑一个总体的规划,那你就会跟我一样成为一个傻宝。