DDR走线规则
- 格式:doc
- 大小:17.50 KB
- 文档页数:3
ALLEGRO约束规则设置步骤(以DDR为例)Dyyxh@pcbtechtzyhust@本文是我对约束规则设置方面的一些理解,希望对新手能有所帮助.由于本人水平有限,错误之处难免,希望大家不吝赐教!在进行高速布线时,一般都需要进行线长匹配,这时我们就需要设置好constraint规则,并将这些规则分配到各类net group上.下面以ddr为例,具体说明这些约束设置的具体步骤.1. 布线要求DDR时钟: 线宽10mil,内部间距5mil,外部间距30mil,要求差分布线,必需精确匹配差分对走线误差,允许在+20mil以内DDR地址,片选及其他控制线:线宽5mil,内部间距15mil,外部间距20mil,应走成菊花链状拓扑,可比ddrclk线长1000-2500mil,绝对不能短DDR数据线,ddrdqs,ddrdm线:线宽5mil,内部间距15mil,外部间距20mil,最好在同一层布线.数据线与时钟线的线长差控制在50mil内.2. 根据上述要求,我们在allegro中设置不同的约束针对线宽(physical),我们只需要设置3个约束:DDR_CLK, DDR_ADDR,DDR_DATA设置好了上述约束之后,我们就可以将这些约束添加到net上了.点击physical rule set中的attach……,再点击右边控制面板中的more,弹出对话框如上图所示,找到ckn0和ckp0,点击apply,则弹出选中左边列表中的NET_PHYSICAL_TYPE, 在右边空格内输入DDR_CLK, 点击apply,弹出即这两个net已经添加上了NET_PHYSICAL_TYPE属性,且值为DDR_CLK. 类似的,可以将DDR数据线,数据选通线和数据屏蔽线的NET_PHYSICAL_TYPE设为DDR_DATA, DDR地址线,片选线,和其他控制线的NET_PHYSICAL_TYPE设为DDR_ADDR.上述步骤完成后,我们就要将已经设好的约束分配到这些net group上. 如下图点击assignment table……弹出对话框如下图所示,我们对不同的信号组选择各自的physical约束有人可能会问,为什么你这还有area0,area1啊这是因为你的这些约束有的地方不可能达到的,比如在bga封装的cpu内,你引线出来,线间距不可能达到30,20甚至10个mil.在这些地方,如果你也按照这个约束那么你的pcb中的drc就不可能消的掉.这时一个解决办法就是把这些地方划为一个room,然后给他加上room 属性(即为room的名字area0,1等等).针对这些room内,设定合适的约束(同上).针对线间距,由于每个都分为组内间距和组外间距,所以共有6个约束: DDR_CLK_INNER,DDR_CLK_OUTER,…………………………我们只要对这六个约束设置line to line 和line to shape就可以,分别按上述要求设置就可以了.剩下的步骤和physical中设置是一样的.不过这时assignment table变成了下面这样.下面就是设置线的等长.这个需要我们到Ecset中设置.这些高速线一般都需要端接匹配(数据线由于是双向的,两端都有匹配电阻),所以你的整个etch被分成了好几个net,这时候这些net的长度计算就比较麻烦.一种情况就是你设置XNET,然后对Xnet计算长度,我认为这是最省事也是最好的一种办法,还有就是你不管什么Xnet,分别将各段的长度加起来,算等长.注: 这个时候有个很矛盾的事情,就是你的时钟线如果想定义为来走,即让allegro自己等间距的一次拉,你就不能将之定义为Xnet,我自己用的时候是这样的,我在将时钟线对应的xnet删除后,时钟线就可以成对的拉,而之前尽管设置好了差分属性,系统也是不认的.不知道大家有没有这个经验.下面我就讲讲如何设置这些约束,并将这些约束加到对应的xnet上. 点击或setup》electrical constraint spreadsheet,弹出点击electrical constraint set》routing》total etch length,右边如上图所示出现brd名字,右键点击brd名字,弹出如下右键菜单如上图点击create ECset,则弹出输入DDR_ADDR, 点击ok,则brd名字前出现+号,打开之,可以见到设置好的DDR_ADDR.现在针对DDR_ADDR,就可以设定具体的参数了.比如,你可以将最小长度设定为1600mils, 最大长度设为2500mils.这个参数的取得其实取决于你的时钟走线拓扑,因为按照走线要求,数据线,地址线等等都是以时钟线为基准的,所以,你必须先把时钟线布好,至少以后不能做大的改动,除非你能保证时钟线走线长度不变.这里我们假设你的时钟线长为1550mil+10mils,则显然你的地址线不能短于1560mils,我们取为1600mils.同时我们也可以得到数据线的走线范围为1525+25mils.类似我们设置好时钟和数据线的约束.至此,我们设置好了线长约束规则.下面的问题就是如何应用这些规则到net上去.设定好了Xnet以后,我们就可以在约束管理器中给这些Xnet添加约束. 这时,打开net》routing》total etch length,将右边brd名前+打开,下面则是所有的net名,拖动鼠标选中需要设置约束的那组信号,点击右键,弹出邮件菜单,选中菜单中的ECset Reference ,见下图.弹出对话框选中下拉列表中的DDR_ADDR,则对刚才选中的哪些xnet添加上了DDR_ADDR约束.类似的可以添加DDR_DATA,DDR_CLK约束.设置Xnet主要就是给相关的电阻加上model就可以了.。
1.时钟信号(1)差分布线,差分阻抗100欧姆,差分线误差±5mil。
(2)与其它信号的间距要大于25mil,而且是指edge to edge的间距(3)CLK等长,误差±10mil。
2.数据信号:(1)数据信号分为八组,每组单独分开走线,第一组为DDR_DQ[0:7]、DDR_DQSP0、DDR_DQSN0、DDR_DQM0,以此类推,同组信号在同一层走线。
(2)DQ和DQM为点对点布线,(3)DQS为差分布线。
差分线误差±5mil,差分阻抗100欧姆。
(4)组内间距要大于12mil,而且是指edge to edge的间距,同组内DQ与DQM以DQS为基准等长,误差±5mil。
(5)DQS与DDR2_CLKP等长,误差±5mil。
(6)不同组信号间距:大于20mil(edge to edge的间距)(7)DDR_CKN/P之间的并联100欧姆电阻,需要放置在信号一分二的分叉地方(8)尽可能减少过孔(9)叠层设计的时候,最好将每一层阻抗线宽,控制在差不多宽度(10)信号走线长度,不超过2500mil3.控制信号和地址信号:(1) 组内间距要大于12mil,而且是指edge to edge的间距(2) 所有控制线须等长,误差±10mil。
(3 不同组信号间距:大于20mil(edge to edge的间距)4.其它信号DDR_VREF走线宽度20mil以上。
无论是PCB上使用芯片还是采用DIMM条,DDR和DDRx(包括DDR2,DDR4等)相对与传统的同步SDRAM的读写,我认为主要困难有三点:1,时序。
由于DDR采用双沿触发,和一般的时钟单沿触发的同步电路,在时序计算上有很大不同。
DDR之所以双沿触发,其实是在芯片内部做了时钟的倍频(因为按照耐奎斯特准则,时钟频率应该至少是信号频率的2倍),对外看起来,数据地址速率和时钟一样。
为了保证能够被判决一组信号较小的相差skew,DDR对数据DQ信号使用分组同步触发DQS信号,所以DDR上要求时序同步的是DQ和DQS之间,而不是一般数据和时钟之间。
,by xfireDDR布线通常是一款硬件产品设计中的一个重要的环节,也正是因为其重要性,网络上也有大把的人在探讨DDR布线规则,有很多同行故弄玄虚,把DDR布线说得很难,我在这里要反其道而行之,讲一讲DDR布线最简规则与过程;如果不是特别说明,每个步骤中的方法同时适用于DDR1,DDR2和DDR3;PCB设计软件以CadenceAllgro16.3为例;文章目录第一步,确定拓补结构仅在多片DDR芯片时有用首先要确定DDR的拓补结构,一句话,DDR1/2采用星形结构,DDR3采用菊花链结构;拓补结构只影响地址线的走线方式,不影响数据线;以下是示意图;星形拓补就是地址线走到两片DDR中间再向两片DDR分别走线,菊花链就是用地址线把两片DDR“串起来”,就像羊肉串,每个DDR都是羊肉串上的一块肉,哈哈,开个玩笑;第二步,元器件摆放确定了DDR的拓补结构,就可以进行元器件的摆放,有以下几个原则需要遵守:原则一,考虑拓补结构,仔细查看CPU地址线的位置,使得地址线有利于相应的拓补结构原则二,地址线上的匹配电阻靠近CPU原则三,数据线上的匹配电阻靠近DDR原则四,将DDR芯片摆放并旋转,使得DDR数据线尽量短,也就是,DDR芯片的数据引脚靠近CPU原则五,如果有VTT端接电阻,将其摆放在地址线可以走到的最远的位置;一般来说,DDR2不需要VTT 端接电阻,只有少数CPU需要;DDR3都需要VTT端接电阻;原则六,DDR芯片的去耦电容放在靠近DDR芯片相应的引脚以下是DDR2的元器件摆放示意图未包括去耦电容,可以很容易看出,地址线可以走到两颗芯片中间然后向两边分,很容易实现星形拓补,同时,数据线会很短;以下是带有VTT端接电阻的DDR2元器件摆放示意图,在这个例子中,没有串联匹配电阻,VTT端接电阻摆放在了地址线可以到达的最远距离;以下是DDR3元器件摆放示意图,请注意,这里使用的CPU支持双通道DDR3,所以看到有四片参考设计是8片DDR3,其实是每两个组成一个通道,地址线沿着图中绿色的走线传递,实现了菊花链拓补;地址线上的VTT端接电阻摆放在了地址线可以到达的最远的地方;同样地,数据线上的端接电阻也放置在了靠近DDR3芯片的位置,数据线到达CPU的距离很短;同时,可以看到,去耦电容放置在了很靠近DDR3相应电源引脚的地方;第三步,设置串联匹配电阻的仿真模型摆放完元器件,建议设置串联匹配电阻的仿真模型,这样对于后续的布线规则的设置是有好处的;点击Analyze->SI/EMISim->ModelAssignment,如下图;然后会出来ModelAssignment的界面,如下图然后点击需要设置模型的器件,通常就是串联匹配电阻,分配或创建合适的仿真的模型,如果不知道如何创建,请在互联网上搜索或发邮件给无线时代Beamsky;分配好仿真模型之后的网络,使用ShowElement命令,可以看到相关的XNET属性,如下图;第四步,设置线宽与线距1.DDR走线线宽与阻抗控制密切相关,经常可以看到很多同行做阻抗控制;对于纯数字电路,完全有条件针对高速线做单端阻抗控制;但对于混合电路,包含高速数字电路与射频电路,射频电路比数字电路要重要的多,必须对射频信号做50欧姆阻抗控制,同时射频走线不可能太细,否则会引起较大的损耗,所以在混合电路中,本人往往舍弃数字电路的阻抗控制;到目前为止,本人设计的混合电路产品中,最高规格的DDR是DDR2-800,未作阻抗控制,工作一切正常;2.DDR的供电走线,建议8mil以上,在Allegro可以针对一类线进行物理参数的同意设定,我本人喜欢建立PWR-10MIL的约束条件,并为所有电源网络分配这一约束条件,如下图;3.线距部分主要考虑两方面,一是线-线间距,建议采用2W原则,即线间距是2倍线宽,3W很难满足;二是线-Shape间距,同样建议采用2W原则;对于线间距,也可以在Allegro中建立一种约束条件,为所有DDR走线XNET分配这样的约束条件,如下图;4.还有一种可能需要的规则,就是区域规则;Allegro中默认的线宽线距都是5mil,在CPU引脚比较密集的时候,这样的规则是无法满足的,这就需要在CPU或DDR芯片周围设定允许小间距,小线宽的区域规则,如下图;第五步,走线走线就需要注意的内容比较多,这里只做少许说明;所有走线尽量短走线不能有锐角尽量少打过孔保证所有走线有完整的参考面,地平面或这电源平面都可以,对于交变信号,地与电源平面是等电位的尽量避免过孔将参考面打破,不过这在实际中很难做到走完地址线和数据后,务必将DDR芯片的电源脚,接地脚,去耦电容的电源脚,接地脚全部走完,否则在后面绕等长时会很麻烦的下图是完成的DDR走线,但尚未绕等长;第六步,设置等长规则对于数据线,DDR1/2与DDR3的规则是一致的:每个BYTE与各自的DQS,DQM等长,即DQ0:7与DQS0,DQM;等长,DQ8:15与DQS1,DQM1等长,以此类推;DDR2数据线等长规则举例DDR3数据线等长规则举例地址线方面的等长,要特别注意,DDR1/2与DDR是很不一样的;对于DDR1/2,需要设定每条地址到达同一片DDR的距离保持等长,如下图;对于DDR3,地址线的等长往往需要过孔来配合,具体的规则均绑定在过孔上和VTT端接电阻上,如下图;可以看到,CPU的地址线到达过孔的距离等长,过孔到达VTT端接电阻的距离也等长;补充一点,很多时候,地址线的等长要求不严格,这一点我还没有尝试过;在本人设计的这些产品中,地址线,数据线都做了25mil的RelativePropagationDelay的等长规则设定;关于等长规则设定的细节在这里不再赘述,有兴趣的话,可以发邮件给无线时代Beamsky;第七步,绕等长完成等长规则的设定后,最后一步也是工作量最大的一步:绕等长;在这一步,我认为只有一点规则需要注意:尽量采用3倍线宽,45度角绕等长,如下图;绕等长完成后,最好把DDR相关网络锁定,以免误动;到这里,DDR走线就已经完成了,在本人设计过的三,四十种产品中,都是按照上面的规则与过程完成的,DDR2最高规格是DDR2-800,512MB,DDR3最高规格是DDR3-1600,1GB,都可以很稳定的工作,无论性能还是可靠性,都未曾出过问题;。
DDRSDRAM布线规则DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory)是一种双倍数据速率同步动态随机访问存储器。
DDR SDRAM的主频和前面的SDRAM相比,提供了更高的数据传输速率,更高的带宽和更低的功耗。
正确的DDR SDRAM布线规则是确保内存子系统的最佳性能和稳定性。
以下是DDRSDRAM布线规则的一些重要要点:1.信号布线:-时钟信号(CK)和数据线(DQ)应该以相同的长度布线,以避免时钟偏移引起的数据损失。
-时钟信号和数据线应该尽量平行布线,以降低信号之间的干扰。
-时钟和地址信号应该有足够的地线引脚(GND)相邻布线,以确保信号的良好传输。
-数据线之间,特别是相邻的数据线,应保持足够的间距,以降低信号交叉干扰。
-数据线和驱动器之间应该有适当的电阻匹配,以提高信号完整性。
-控制信号(CS,RAS,CAS,WE)和地址信号(A)应尽可能与时钟信号平行布线。
2.电源和地线布线:-电源线和地线应足够宽,以提供稳定的电流和地引。
-电源和地线应平行布线,以降低信号之间的干扰。
-地线应尽可能接近信号线,以降低信号的回流路径。
-电源线和地线之间应有适当的距离,以避免互相干扰。
3.终端布线:-终端布线应尽量接近DDRSDRAM芯片,以减小传输延迟和信号损失。
-终端布线应遵循DDRSDRAM供应商提供的布线指南,以确保符合DDRSDRAM标准。
4.长度匹配:-时钟信号和数据线应尽量匹配相同的长度,以避免时钟偏移引起的数据损失。
-地线和电源线也应尽量匹配相同的长度,以避免功率噪声干扰。
5.建模和仿真:-使用建模和仿真工具来验证DDRSDRAM布线的正确性和稳定性。
-进行时序分析和电气分析,以确保数据在DDRSDRAM子系统中的正确传输。
总之,DDRSDRAM布线规则是一个复杂的过程,需要考虑时钟信号、数据线、电源和地线的布线方式。
DDRSDRAM布线规则DDRSDRAM布线规则是指在电路板上设计和布置DDRSDRAM的电路和连线时需要遵循的一些规则和原则。
DDRSDRAM是一种双倍速率同步动态随机存储器,用于高速数据存储和访问,因此布线规则尤为重要,可以确保信号的完整性和稳定性,提高系统的性能和可靠性。
以下是DDRSDRAM布线规则的一些重要方面:1.线长匹配:DDRSDRAM的布线中,所有的时钟、地址、数据和控制信号必须尽量保持相等的线长。
由于DDRSDRAM使用双倍速率,信号频率较高,线长差异可能导致信号到达时间不一致,影响系统的稳定性。
通过保持线长相等,可以降低信号的传输延迟,减少时钟失真和时序错误。
2.地与电源平面:DDRSDRAM的布线中,要为信号线和电源线提供良好的地和电源环境。
通过使用地和电源平面,可以降低信号线上的互损耗和串扰,提高信号的信噪比和阻抗匹配。
电源平面还可以提供稳定的电源供应,减少功率噪声和波动对信号传输的影响。
3.信号隔离:DDRSDRAM的布线中,需要将不同类型的信号线进行隔离,避免互相干扰。
例如,时钟信号和数据信号应尽量分开布线,以减少互相之间的串扰。
同时,还应将高速信号线和低速信号线进行分离,避免高速信号对低速信号的影响。
4.差分信号:DDRSDRAM的部分信号采用差分传输方式,例如,地址和数据线。
在布线时,要确保差分线对称和匹配。
差分线对称性可以减少共模噪声的影响,而差分线匹配可以提高差分信号的传输效率和抗干扰能力。
5.终端电阻:DDRSDRAM的布线中,需要正确设置终端电阻来匹配信号线的特性阻抗。
终端电阻的作用是反射信号的能量,减少信号反射和回波干扰。
正确设置终端电阻可以提高信号的传输质量,减少时序错误和噪声。
6.时序调整:DDRSDRAM的布线中,需根据具体的DDRSDRAM芯片和系统要求进行时序调整。
时序调整包括延迟设置、预充电设置和时钟节拍调整等。
通过合理设置时序参数,可以确保DDRSDRAM正常工作,提高数据传输的稳定性和速度。
DDR走线长度及原理分析DDR(Double Data Rate)指的是双倍数据速率,是一种内存模块标准,用于计算机存储器传输数据的规范。
DDR走线长度是指DDR内存模块中数据线的长度,它对内存传输速度和稳定性有重要影响。
以下是DDR走线长度及原理的详细分析。
1.电磁干扰:DDR走线长度增加会导致信号传输路径延长,增加了电磁信号干扰的可能性。
2.传输延迟:DDR走线长度增加会增加信号传输的延迟,导致内存访问速度下降。
3.信号衰减:DDR走线长度增加会增加信号的传输距离,信号会发生衰减,可能导致数据传输错误。
4.反射和串扰:DDR数据线被布线在一起时,会发生反射和串扰,影响数据的准确传输。
DDR内存模块的规范对走线长度有一定的要求,以确保良好的信号传输。
1.长度匹配:DDR数据线的长度应该尽量保持一致,以避免信号的延迟差异。
2.信号线和地线:DDR数据线应该与相应的地线配对布线,以减少干扰。
3.距离控制:DDR数据线的长度应在一定的距离限制内,一般要求不超过几十厘米。
4.信号完整性:DDR数据线周围应布置噪声滤波器和屏蔽以维持信号完整性。
1.时钟频率:DDR内存传输数据的速率由时钟频率决定。
较高的时钟频率可以提高数据传输速度,但同时也要求更严格的信号完整性和延迟控制。
2.信号编码:DDR内存使用差分信号编码(如LVDS)来减少传输线上的电磁干扰和噪声。
相比于单端信号,差分信号能够更好地抵抗噪声,但也对布线长度有一定的限制。
3.终端阻抗:DDR走线中的终端阻抗和匹配非常重要,它们用于减少信号的反射和串扰,提高信号完整性。
终端阻抗的选择应根据布线长度和传输速率来考虑,以避免反射和信号衰减。
4.布线技术:对DDR走线进行合理的布线设计也是确保信号完整性和稳定性的重要因素。
布线技术包括长度匹配、信号和地线配对布线、噪声滤波器和屏蔽的使用等。
总结:DDR走线长度对DDR内存模块的性能和稳定性有重要影响。
合理的走线长度设计可以提高内存的传输速率和可靠性,同时减少电磁干扰和信号衰减。
3 PCB 设计建议3.1 Fanout封装设计建议Hi3716M 的封装为PBGA600 ,管脚间距0.8 毫米。
在PCB 设计时,可以采用四层PCB 板的设计,建议如下分层:❿ TOP 层:信号走线❿ 内一层:地平面层❿ 内二层:电源平面层❿ BOTTOM 层:信号走线在成本非常敏感的应用方案中,也可以采用二层PCB 板的设计,PCB 分层建议如下:❿ TOP 层:信号走线和部分电源走线❿ BOTTOM 层:地平面层和部分电源走线PCB 设计注意事项:❿ 元器件布局在TOP 层,信号线尽量走TOP 层,滤波小电容可放在BOTTOM 层。
❿ 电源管脚用走粗线。
❿ 尽量保持BOTTOM 层为一个完整的地平面层。
❿ 主芯片出线推荐过孔大小为8mil,线宽为5mil 。
PCB 材料FR-4,PCB 板厚度为1.6 毫米,铜箔厚度为1 盎司,填充介质介电常数4.2。
主芯片出线示例如图3-1 所示。
图3-1 主芯片出线示例图3.2 DDR SDRAM接口电路设计建议Hi3716M 内部集成了32 位宽的DDR2//DDR3 兼容接口控制器。
3.2.1 DDR2 接口设计DDR2 SDRAM 容量要求为256MB 时,DDR2 接口推荐外接2 片16bit 数据位宽的DDR2 SDRAM 颗粒;两个16bit 数据位宽的数据总线DDRA_DQ[0:15]和DDRB_DQ[0:15]拼成一个32bit 数据位宽的数据总线。
DDRB_DQ[0:15]对应32bit 位宽数据总线DQ[16:31]。
容量要求为512MB 时,DDR2 接口推荐外接4 片8bit 位宽的DDR2 SDRAM颗粒。
外接4 片8bit 数据位宽的DDR2 颗粒时,需要采用至少4 层PCB 板的设计。
外接16bit 数据位宽DDR2 SDRAM 颗粒的情况下,DDR2 SDRAM 接口连接如图3-2 所示。
图3-2 DDR2 SDRAM 16 位接口示意图在外接8bit 数据位宽DDR2 SDRAM 颗粒的情况下,DDR2 SDRAM 接口连接如图3-3 所示。
一:SDRAM 类高速器件布线规则通用基本法则:(1)DDR和主控芯片尽量靠近(2)高速约束中设置所有信号、时钟线等长(最多允许50mil的冗余),所有信号、时钟线长度不超过1000mil (3)尽量0过孔,元件层下面一定要有一个接地良好的地层,所有走线不能跨过地的分割槽,即从元件层透视地层看不到与信号线交叉的地层分割线。
这样的话200M的DDR基本上是没有太大问题。
其它的一些3W 20H法则能做到就尽量做到吧时钟信号:以地平面为参考,给整个时钟回路的走线提供一个完整的地平面,给回路电流提供一个低阻抗的路径。
由于是差分时钟信号,在走线前应预先设计好线宽线距,计算好差分阻抗,再按照这种约束来进行布线。
所有的DDR差分时钟信号都必须在关键平面上走线,尽量避免层到层的转换。
线宽和差分间距需要参考DDR控制器的实施细则,信号线的单线阻抗应控制在50~60 Ω,差分阻抗控制在100~120 Ω。
时钟信号到其他信号应保持在20mil以上的距离来防止对其他信号的干扰。
蛇形走线的间距不应小于20 mil。
串联终端电阻RS值在15~33Ω,可选的并联终端电阻RT值在25~68 Ω,具体设定的阻值还是应该依据信号完整性仿真的结果。
数据信号组:以地平面为参考,给信号回路提供完整的地平面。
特征阻抗控制在50~60 Ω。
线宽要求参考实施细则。
与其他非DDR信号间距至少隔离20 mil。
长度匹配按字节通道为单位进行设置,每字节通道内数据信号DQ、数据选通DQS和数据屏蔽信号DM长度差应控制在±25 mil内(非常重要),不同字节通道的信号长度差应控制在1 000 mil内。
与相匹配的DM和DQS串联匹配电阻RS值为0~33 Ω,并联匹配终端电阻RT值为25~68Ω。
如果使用电阻排的方式匹配,则数据电阻排内不应有其他DDR信号。
地址和命令信号组:保持完整的地和电源平面。
特征阻抗控制在50~60 Ω。
信号线宽参考具体设计实施细则。
DDR布线规则与过程DDR(Double Data Rate)是一种高速数据传输技术,广泛应用于计算机内存和图形显示等高性能系统中。
DDR布线规则是为了确保高速信号传输的稳定性和可靠性而制定的一系列设计准则和规定。
本文将详细介绍DDR布线规则及其过程。
一、DDR布线规则的重要性DDR技术的高速性质意味着信号传输时间短,信号噪声和衰减问题更加严重。
因此,DDR布线规则的设计是十分关键的,可以有效地降低信号间干扰、串扰、反射等问题的发生,提高系统的稳定性和可靠性。
二、DDR布线规则的要求1.电源稳定性:要求供电电源电压稳定,电源噪声小。
这可以通过良好的电源布线和滤波电容选择来实现。
2.信号路径长度匹配:DDR数据总线的信号路径要尽可能保持长度一致,以确保数据到达目标时的同步性。
为了实现这一点,可以通过合理的排布布线,尽量减少信号的走向差距。
3.数据总线的分层:DDR需要同时传输数据和控制信号,为了减少信号间的干扰和串扰,可以将数据总线、地址总线和控制总线进行分层布线。
4.阻抗匹配:DDR布线需要保证布线阻抗与驱动器输出阻抗和信号链路阻抗匹配,这可以通过合理选择布线宽度和参数来实现。
一般DDR总线要求的阻抗为50欧姆。
5.信号噪声和干扰控制:DDR信号传输速率较高,因此对信号噪声和干扰的要求也比较高。
可以通过地线的合理设计和布线的分隔来降低信号之间的干扰和串扰。
6.信号层间过渡:DDR布线需要在信号层之间进行适当的过渡,以保证信号在不同层之间的传输质量。
三、DDR布线规则的过程1.系统规划:根据设计要求和系统需求进行布线规划。
包括信号的传输速率、总线宽度、电源供应,以及寄存器、驱动器和接收器等元器件的选择。
2.PCB布局:设计合理的PCB布局,合理安排器件和信号线的位置,减少信号线走向差距。
可以使用CAD软件进行布局,避免布线时出现冲突。
3.信号层划定:根据信号层的需要,对PCB进行分层划定。
数据总线、地址总线和控制总线等可以分层进行布线,以减少干扰和串扰。
1.时钟信号
(1)差分布线,差分阻抗100欧姆,差分线误差±5mil。
(2)与其它信号的间距要大于25mil,而且是指edge to edge的间距
(3)CLK等长,误差±10mil。
2.数据信号:
(1)数据信号分为八组,每组单独分开走线,第一组为DDR_DQ[0:7]、DDR_DQSP0、DDR_DQSN0、DDR_DQM0,以此类推,同组信号在同一层走线。
(2)DQ和DQM为点对点布线,
(3)DQS为差分布线。
差分线误差±5mil,差分阻抗100欧姆。
(4)组内间距要大于12mil,而且是指edge to edge的间距,同组内DQ与DQM以DQS为基准等长,误差±5mil。
(5)DQS与DDR2_CLKP等长,误差±5mil。
(6)不同组信号间距:大于20mil(edge to edge的间距)
(7)DDR_CKN/P之间的并联100欧姆电阻,需要放置在信号一分二的分叉地方
(8)尽可能减少过孔
(9)叠层设计的时候,最好将每一层阻抗线宽,控制在差不多宽度
(10)信号走线长度,不超过2500mil
3.控制信号和地址信号:
(1) 组内间距要大于12mil,而且是指edge to edge的间距
(2) 所有控制线须等长,误差±10mil。
(3 不同组信号间距:大于20mil(edge to edge的间距)
4.其它信号
DDR_VREF走线宽度20mil以上。
无论是PCB上使用芯片还是采用DIMM条,DDR和DDRx(包括DDR2,DDR4等)相对与传统的同步SDRAM的读写,我认为主要困难有三点:
1,时序。
由于DDR采用双沿触发,和一般的时钟单沿触发的同步电路,在时序计算上有很大不同。
DDR之所以双沿触发,其实是在芯片内部做了时钟的倍频(因为按照耐奎斯特准则,时钟频率应该至少是信号频率的2倍),对外看起来,数据地址速率和时钟一样。
为了保证能够被判决一组信号较小的相差skew,DDR对数据DQ信号
使用分组同步触发DQS信号,所以DDR上要求时序同步的是DQ 和DQS之间,而不是一般数据和时钟之间。
另外,一般信号在测试最大和最小飞行时间Tflight时,使用的是信号沿通过测试电平Vmeas与低判决门限Vinl和和高门限vinh之间来计算,为保证足够的setup time和hold time,控制飞行时间,对信号本身沿速度不作考虑。
而DDR由于电平低,只取一个中间电平Vref做测试电平,在计算setup time和hold time时,还要考量信号变化沿速率slew rate,在计算setup time和hold time时要加上额外的slew rate的补偿。
这个补偿值,在DDR专门的规范或者芯片资料中都有介绍。
2,匹配。
DRR采用SSTL电平,这个特殊buffer要求外接电路提供上拉,值为30~50ohm,电平VTT为高电平一半。
这个上拉会提供buffer工作的直流电流,所以电流很大。
此外,为了抑制反射,还需要传输线阻抗匹配,串连电阻匹配。
这样的结果就是,在DDR的数据信号上,两端各有10~22ohm的串连电阻,靠近DDR端一个上拉;地址信号上,发射端一个串连电阻,靠近DDR端一个上拉。
3,电源完整性。
DDR由于电平摆幅小(如SSTL2,为2.5V,SSTL1,为1.8V),对参考电压稳定度要求很高,特别是Vref和VTT,提供DDR 时钟的芯片内部也常常使用模拟锁相环,对参考电源要求很高;由于VTT提供大电流,要求电源阻抗足够低,电源引线电感足够小;此外,DDR同步工作的信号多,速度快,同步开关噪声比较严重,合理的电源分配和良好的去耦电路十分必要。
Ansoft公司的信号完整性、电源完整性分析工具Iwave和Nexxim,
针对DDR设计提供专门的信号完整性、时序、同步开关噪声和电源完整性一揽子解决方案。
详细情况,请与公司联系。