中介网站建设,太湖县城乡建设局网站,wordpress stheme,深圳 购物商城网站建设转载于#xff1a;http://blog.csdn.net/snaking616/article/details/53981973 本文首先列出了DDR2布线中面临的困难#xff0c;接着系统的讲述了DDR2电路板设计的具体方法#xff0c;最后给出个人对本次电路设计的一些思考。本次设计中CPU的封装为BGA844-SOC-Y#xff0c;…转载于http://blog.csdn.net/snaking616/article/details/53981973 本文首先列出了DDR2布线中面临的困难接着系统的讲述了DDR2电路板设计的具体方法最后给出个人对本次电路设计的一些思考。本次设计中CPU的封装为BGA844-SOC-YDDR2的封装为FBGA84DDR2的控制总线采用星形连接使用的PCB软件为AltiumDesigner10参考设计教程为《Altium Designer DDR2设计教学视频》[1] 1. DDR2布线中面临的困难 1.1 DDR与CPU之间的布局[1] 1DDR2内存与CPU的边缘间距建议5~8mm 2DDR3排阻自身长度为2mm排阻与CPU边缘间距建议3mm排阻与内存边缘间距建议3mm。 1.2 如何设置Width信号线宽和Clearance安全间距 在封装BGA844-SOC-Y中焊盘的直径为18.9mil焊盘间距为39.37mil两个焊盘之间的间隔为20.47mil要想从BGA中引出所有的信号线必须合理的设置Width和Clearance等规则。 图1 BGA844-SOC-Y焊盘间距 在《DDR布线规则与过程》[2]一文中交代了线宽与线距的设置规则 1DDR的供电线线宽建议8mil以上信号线默认线宽为5mil 2线与线间距建议采用2W原则为8mil线与其它sub-class的间距为5mil 3CPU与DDR的区域规则走线线宽为5mil允许最小间距为3.3mil 在博通BCM53344开发板中CPU采用1006-pin FCBGA封装DDR3采用FBGA封装在BGA的区域内线间距设为3.098mil如图2所示线宽设为3.902mil如图3所示。 图2 线距规则 图3 线宽规则 1.3 网络分类与差分线的设置 在《DDR2信号分类及等长设计》[3]一文中DDR2可以分为以下三类:1差分时钟信号:CLK_NCLK_P2数据线DQ0~DQ15数据掩码信号DQM0DQM1数据选通信号DQS*_NDQS*_P3地址线/控制线:除数据时钟外的其他信号如A0~A12WECSBA0~2CKE等可以设置为以下几个class规则1DATA_L_BUSQ0~DQ7DQM0DQS0_NDQS0_P2DATA_H_BUSQ8~DQ15DQM1DQS1_NDQS1_P3ADDR_BUS:除数据线外的其他信号4CLK_DIFF: CLK_NCLK_P 1.4 如何确定小T点与大T点的位置 如图4所示小T点对应于DDR2焊盘扇出后的过孔C与DC与D点扇出的走线方式必须保持一致。大T点对应于地址/命令总线的分支点过孔B在DDR做等长布线时地址/命令总线Net-Class网络类每条网络满足 1ABBCABBD 2每条网络的总长度ABBCBD均相等。 为了降低DDR等长布线的难度通常将大T点设在C与D的对称轴上假如大T点没有落在C与D的中轴线上该怎么办 在《用Altium Designer实现DDR2的等长布线》[4]和《Altium Designer 中 DDRII SDRAM 的等长布线》[5]中给出了解决办法文中使用了AD里面的From-To Editor 网络编辑器将同一个网络在T点处划分为3个部分然后通过设置焊盘到焊盘之间的等长来实现DDR的等长布线有兴趣的读者可以查看原文 图4 选取大T点 1.5 BGA自动扇出与手动优化 在使用AD10给BGA自动扇出时需要注意一下几点 1在执行自动扇出前BGA上的所有焊盘均不能连线否则自动扇出无法完成 2FBGA84封装的DDR2在进行自动扇出时扇出的效果非常差必须使用手工扇出。 对CPU和DDR2进行自动扇出可分别得到图5和图6所示所示结果。 图5 CPU自动扇出 图6 DDR2自动扇出效果 1.6 如何控制等长误差 在《DDR2信号分类及等长设计》[3]一文中等长误差如下设置 1所有信号线参考差分时钟的长度作等长2DATA_L_BUS共11根走在同层,与差分时钟的长度误差25mil3DATA_H_BUS共11根走在同层,与差分时钟的长度误差25mil4ADDR_BUS:与差分时钟的长度误差200~300mil 在视频《Altium Designer DDR2设计教学视频》中作者给出了如下的等长误差记地址/控制网络类包括差分时钟的等长目标为L1数据网络类等长目标为L2则 1在地址/控制网络类中差分时钟长度设为L1其它等长误差控制在L1±200mil之内 2数据网络类等长误差控制在L2±25mil之内同一组之间作等长即可 3L1与L2满足0L1-L21000mil 2. DDR2等长布线 2.1 区域规则ROOM讲解 如何放置ROOM 执行Design→Rooms→Place Rectangular Room给CPU和DDR2添加ROOM添加后将ROOM名称分别修改为“CPU_ROOM”、“DDR2_ROOM”如图7所示。 图7 添加ROOM 2.2 区域规则设置 1如何设置规则 执行Design→Rules...即可进入规则编辑菜单。 2如何定义ROOM内的规则 进入规则编辑器后首先点击需要编辑的规则并右击新建“new rule...”,接着先点击新键的规则然后在“Where The First Object Matches”一栏选择“AdvancedQuery”,在“Full Query”一栏填入“withinroom(name_ROOM)”,最后Apply并单击OK即可 上面的name_ROOM为ROOM的名称输入语法时请切换为英文输入法如果需要同时给多个ROOM定义规则其语法为withinroom(name_ROOM)withinroom(name1_ROOM)withinroom(name2_ROOM) 3如何给PCB定义规则 为了引出BGA内部走线规则中的Clearance和Width进行如下设置 Clearance设置方案优先级从下到上依次递增 Clearance_CPU 4 mil withinroom(CPU_ROOM) Clearance_DDR2 4.4 mil withinroom(DDR2_ROOM) Clearance 5 mil Width最小 / 推荐 / 最大设置方案优先级从下到上依次递增 Width_PWR 12 / 12 / 120 mil Width_CPU 4 / 4 / 4 mil withinroom(CPU_ROOM) Width_DDR2 4.4 / 4.4 / 4.4 mil withinroom(DDR2_ROOM) Width 5 / 5 / 5 mil 说明Width_PWR为电源网络的线宽规则 2.3 过孔、网络CLASS及差分线的设置 1如何给PCB定义Via过孔的规则 Via内径 / 外径设置方案优先级从下到上依次递增 RoutingVias_DDR2 8 / 16 mil withinroom(DDR2_ROOM) RoutingVias 10 / 22 mil 2如何设置网络Class DDR2的所有网络可以分为以下3类 电源地信号数据信号时钟、地址、控制类信号。 执行Design→ Classes...调出类设置界面按下方的规则对网络进行分类 POWER_CLASSGND、VREF、VCC1V8、VTT。 DATA_CLASS Data0-7DRAM0_D0~7、DRAM0_DM0、DRAM0_DQS0_N、DRAM0_DQS0_P Data8-15DRAM0_D8~15、DRAM0_DM1、DRAM0_DQS1_N、DRAM0_DQS1_P Data16-23DRAM0_D16~23、DRAM0_DM2、DRAM0_DQS2_N、DRAM0_DQS2_P Data24-31DRAM0_D24~31、DRAM0_DM3、DRAM0_DQS3_N、DRAM0_DQS3_P ADD_CLASSDRAM0_A0~13、DRAM0_BA0~2、DRAM0_CAS#、DRAM0_CLKE、DRAM0_CLK_N、DRAM0_CLK_P、DRAM0_CS#、DRAM0_ODT、DRAM0_RAS#、DRAM0_WE# 网络归类后效果如图8所示。 图8 网络分类 3如何设置差分线 在软件左侧栏中选择“Differential Pairs Editor”项目将DDR2的时钟和DQS信号归为差分对如图1.10所示 差分对DRAM0_DQS0DRAM0_DQS0_N、DRAM0_DQS0_P 差分对DRAM0_DQS1DRAM0_DQS1_N、DRAM0_DQS1_P 差分对DRAM0_DQS2DRAM0_DQS2_N、DRAM0_DQS2_P 差分对DRAM0_DQS3DRAM0_DQS3_N、DRAM0_DQS3_P 差分对DRAM0_CLKDRAM0_CLK_N、DRAM0_CLK_P。 图9 添加差分对 2.4 小T点设置 DDR2手动扇出效果图如图10所示封装中心处的过孔对应为小T点两个小T点的中点对应大T点所在的位置。 完成小T点的设置主要分为以下几步 1. 对左侧的DDR2进行手动扇出 2. 全选DDR2扇出的走线和过孔对已选对象进行复制并以左上第一个焊盘作为参考点 3. 将所选对象复制到右侧DDR2上十字光标对准左上第一个焊盘 以上操作也可称作走线与过孔的复用 图10 小T点设置 2.5 大T点设置 将图10的小T点依次连接并在两个小T点的中心打上过孔即大T点完成后效果如图11所示。 在连线时请注意以下细节 1. 大T点的位置是允许一定的误差的不需要绝对的中心 2. 绕线时需要优化电源过孔的布局 3. 小T点过孔之间的水平与垂直间距需要保持在30mil以上 4. 大T点与小T点放置完后请进行上锁设置防止误删 图11 大T点设置 2.6 CPU自动扇出 执行Auto Route→Fanout→Component点击CPU封装即可完成CPU的自动扇出扇出效果如图12所示。由于规则的设置电源类管脚扇出线宽为12mil信号管脚扇出线宽为4mil下图中打白色圆圈的管脚为无网络的焊盘。 图12 CPU扇出 2.7 数据互联 数据类总线分为两部分互连一部分走顶层另一部分走L3层 如图13所示为数据网络类DATA0-[D8-15]和DATA0-[D24-31]在顶层的连线效果图。 图13 顶层DDR数据线互连 如图14所示为数据网络类DATA0-[D0-7]和DATA0-[D16-23]在L3层的连线效果图。 图14 L3层DDR数据线互连 2.8 地址线T点互连 地址与控制类总线分为两部分互连一部分走顶层如图15所示另一部分走底层如图16所示。 图15 顶层控制、地址类总线连接 图16 底层控制、地址类总线连接 2.9 寻找等长目标 如图16所示为地址类网络长度分布根据网络长度分布选择3000mil作为地址类网络的等长目标等长误差控制在±200mil以内。 根据作者描述地址类与数据类网络长度差应小于1000mil所以将数据类网络等长目标控制在2000mil数据类网络之间的等长误差控制在±25mil以内。 图16. 地址、控制类网络长度分布 2.10 走等长线 1. 如何走等长线 1普通信号线按快捷键TR差分线按TI进入等长布线状态 2等长布线时W键上方的1、2、3、4依次对应拐角弧度减小、拐角弧度增大、蛇形线间距减小、蛇形线间距增大等功能 2 地址类等长 顶层 图17 顶层地址网络等长 底层 图18 底层地址网络等长 3. 数据类等长 顶层 图19 顶层数据网络等长 底层 图20 L3层数据网络等长 2.11 等长输出 在Nets查看栏中复制需要等长网络的名称和长度等属性粘贴到Excel中并加以整理即完成了DDR2等长信息的输出 3. 个人思考 1、为何同一根信号线在不同区域CPU_ROOM、DDR2_ROOM、其它的线宽会不一样 1在其它区域DDR与CPU的中间区域走5mil的线是通过阻抗匹配计算出来的结果 2在CPU_ROOM内走4mil的线是为了使信号线从BGA内部扇出那么信号线在其它区域为什么不用4mil的线呢这里可能是考虑了成本的原因线宽越小成本越高。在不影响DDR2性能同时又要使信号线成功扇出的情况下必须使信号线拥有多重线宽规则个人猜测没有证实过! 2、如何最大化利用好布线空间同时减小信号线间的串扰 如何最大化利用好布线空间 地址总线的布线空间最紧张需要优先布局相邻信号线走蛇形线的区域应错开走完所有的地址类信号线再走数据类信号线 减小信号线间的串扰可通过增加信号线之间的安全间距来实现具体方法有 1可以先改变全局的clearance规则优先级设为最高比如设为10mil如果出现报错提示可暂时忽略走完等长线后再改回原有规则 2在走线的侧边直接画出一条无网络的铜线走完信号后再删除该铜线 3修改等长控制参数中的振幅。 3、相同模块之间的复用 在第2.4小节中将左侧DDR2的扇出铜线和过孔进行复用可以明显缩短其它DDR2所需的扇出时间 尾巴本文是我首次接触高速电路设计的一次尝试通过文章的形式记录下学习的点滴。本次设计并不是一个完整的工程在DDR2滤波电容 的放置与优化、DDR2信号完整性仿真、以及PCB阻抗匹配的计算等方面均未涉及由于个人能力有限文章难免有错误希望大家能够给出 宝贵的建议 参考 [1] 《Altium Designer DDR2设计教学视频》该视频为书籍《AltiumDesigner实战攻略与高速PCB设计》配套视频单独学习需要向作者购买 [2] DDR布线规则与过程 http://www.zencheer.com/ddr-layout-rules-processes/ [3] DDR2信号分类及等长设计http://blog.sina.com.cn/s/blog_709fa2660101dlo8.html [4] 用Altium Designer实现DDR2的等长布线https://wenku.baidu.com/view/a1334bfcad51f01dc281f17e.html [5] Altium Designer 中 DDRII SDRAM 的等长布线https://wenku.baidu.com/view/424dd712ccbff121dc368324.html?review转载于:https://www.cnblogs.com/tureno/articles/7348398.html