我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1413|回复: 2

[技术文章] DDR走线问题

[复制链接]

该用户从未签到

291

主题

275

回帖

559

积分

百元学习allegro

积分
559

终身成就奖

QQ
发表于 2016-7-16 18:21:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
问题的引出:据有关高速PCB布线建议的文章介绍,SDRAM存储器走线时要注意“尽量短且等长”,不知道它说得是仅指数据线呢,还是包括数据线、地址线、控制线?对于数据线,等长比较好走,因为它是点到点的,而对于地址线、控制线,等长就难了,因为它们是一点到多点的,所以还与总线拓扑结构有关,而且PCB走线时空间紧张;请问各位有什么好的建议,尤其是地址线、控制线的拓扑结构,是否需要作等长处理,如果要的话,怎样作等长处理?
一.
主要还是看SDRAM的频率能跑多高了!尽量做到地址线等长,和数据线等长,我们在计算等长时分别算主芯片到匹配电阻的长度和匹配电阻到SDRAM的长度并且要算过孔数(将过孔大致折算成线长),然后将总长度算出,再做等长匹配.如果有多块SDRAM的话,地址线尽量走T型线,数据线尽量等长,芯片应该都能跑起来的.我做的DVD板,SDRAM基本都不走等长(因为频率基本上是108M,和133M的芯片,呵呵),实在看不过去的线就绕一下,相差不是很悬殊的就没问题,都能跑起来的!我做的好几块板子都正常运作;不过DDR的就不能大意了.要计算后再绕.重在布局,布局合理会省很大的事,呵呵!以上纯属个人之见,,以上纯属个人之见
二.
数据线在板子上是不需要额外作阻抗匹配的,只有地址线和控制线需要在dimm 末端加一termination 电阻作终端阻抗匹配,防止反射。后来又做一个DDR2的板子,地址线等长T形走线(有两片)、数据线等长处理,程序跑得很稳定。
当然,光等长是不行的,在走线时,所有数据线与地址线均使用同一个参考面,电源与端接电源的去耦做好。呵呵,只要这么做了,系统就是稳定,什么都不用担心。
另外,告诉大家:一般的SDRAM Controller都是可以调时序的,所以数据与地址线、时钟线不必等长,软件调好时序就可以(当然这些参数是可以计算的,可不要瞎调哦)
三.
时钟线与控制线,地址线尽量等长,他们一起实现逻辑控制;数据线自己尽量等长可以了;当然,全部等长最好;[
四.
控制信号(CS,CKE)、命令信号(WE,CAS,RAS等)和地址信号(Ax,BAx)还有数据信号(EDX)都是由主设备SDRAM控制器发出的,主设备利用内部CLK上升沿把数据和控制信号输出到总线上,在下一个CLK的上升沿把数据或控制信号打入到SDRAM。只要满足SDRAM的输入建立和保持时间就可以了,不是谁一定比谁长。
五.
如果只是手机板,100MHz的主频,等长不等长并不重要,而且手机板子很小,走线也不可能长。如果是我布板,连数据线我也不做等长控制。只有当频率更高,或线更长时,才会考虑到等长。
六.
时钟等长是指俩快SDRAM的等长,二者的时钟线不一样
七.
好像没必要走等长,数据数在+/-200mil,其它尽量走短就可以发了
八.
其实速度比较快的只是CPU到SDRAM,所以一般只需要注意到SDRAM的数据和地址线的长度就可以了!还有到网口的差分线(Flash的可以不考虑)
九.
总线工作方式是异步则不用等长,同步时序则需要分晰,
同步时序一般来说是一组数据(或地址)参考一根(或几根)时钟信号,
到底需不需要等长,要等长到多少,则要分晰芯片资料,弄清楚从发送到接收的器件以下指标:Clockperiod,Tfilght,Tco,Tsetup,Tskew,Tjitter等等,建立时序方程(不等式),求出允许时间差值(即在 PCB上布线允许的误差多少,一般要做得比计算的保守一些,PCB走线延时一般内层在5.5inch/ns,表层在6inch/ns左右).
十.
个人经验: 数据地址总线在50M以下不考虑走线长度误差,一般差1~2个inch以内都不调整.不用去算,时序肯定宽松得很.
256M以下控制在+/-50mil以内,
1.25G控制在+/-20mil以内
2.15G控制在+/-10mil以内,
10G控制在+/-2mil以内.大家可以参考下
控制线不用等长.
十一.
对于DDR2来说,地址线,数据线,控制线,CLK,不是所有的线都等长,而是每组的线等长就可以了,也不是完全的等长,也是有一个误差范围的。
地址线一组,设置一个目标值,进行绕线,在允许的误差范围内就可以,不需要完全的等长,当然完全的等长最好,但是比较难
数据线可以分几组,64位的分8组,组与组间不要求等长,组内要等长
控制信号一组
时钟信号一组
十二.
1.SDRAM时钟信号:时钟信号频率较高,为避免传输线效应,按照工作频率达到或超过75MHz时布线长度应在1000mil以内的原则及为避免与相邻信号产生串扰,走线长度不超过1000mil,线宽10mil,内部间距5mil,外部间距30mil,要求差分布线的,精确匹配差分对走线,误差允许在20mil以内。
2.地址、片选及其它控制信号:线宽5mil,外部间距12mil,内部间距10mil,尽量走成菊花链拓补,可有效控制高次谐波干扰,可比时钟线长,但不能短。
3. SDRAM数据线:线宽5mil,内部间距5mil,外部间距8mil,尽量在同一层布线,数据线与时钟线的线长差控制在50mil内。
十三.
1.首先,楼主的所问“SDRAM存储器走线时要注意尽量短且等长”
走线的长短是与buffer的驱动能力有关,比如一般的sdram要求走线长度控制在3000mil以下;
等长主要跟时序有关,走线等长控制也就是为了满足信号的时序控制,也就是为了满足信号的建立时间Tsetup和保持时间Thold的要求。
一般的手机板由于布局密集和频率也较低,所以时序裕量也很大,所以通常不控制等长也是可以满足时序要求的。
2.等长控制并不是时钟,地址,数据都等长就肯定满足要求。
如ddr,时序关系大致是三个制约关系:数据DQ和DQS;时钟ck和地址控制信号;ck和dqs。三者的制约关系要通过看cpu(或者是驱动器),ddr颗粒的资料来确认其Tsetup和Thold要求。
实际上控制的结果就是dqs和dq相对ck和地址控制可以短一些,走线也就好实现一点。
3.拓朴结构。
拓朴结构要同时考虑信号质量要求和走线空间的可行性。举个简单的例子,1片cpu驱动2片ddr,数据采用1驱1,时钟和地址控制信号采用1驱2。那么地址信号采用什么拓朴?SI工程师通过仿真确认采用星型拓朴信号质量好。可是pcb布局很密集,地址线那么多,没有空间打孔,实现不了。这时候Si工程师通过仿真发现采用菊花链方式信号质量也满足要求,而且pcb走线也可以实现,这样问题就得以解决。
地址线绕等长是有点困难,这个就要看绕线的功夫了。绕多了就好了,我现在都麻木了……
十四.
在数据线和地址线做些阻抗匹配 各串一电阻进去 请问这电阻是放在主芯片这里还是放到其它地方如FLASH SDRAM那边
线路阻抗=匹配电阻 + IO的输出阻抗
DDR的话应该靠近DDR侧
SDRAM应该靠近Controller侧
回复

使用道具 举报

该用户从未签到

9

主题

394

回帖

923

积分

PADS20220105初级班

积分
923

忠实会员社区居民终身成就奖

QQ
发表于 2016-7-18 12:03:52 | 显示全部楼层
回复

使用道具 举报

  • TA的每日心情
    开心
    11 小时前
  • 签到天数: 176 天

    [LV.7]常住居民III

    31

    主题

    1万

    回帖

    3万

    积分

    三级逆天

    积分
    34595

    终身成就奖特殊贡献奖原创先锋奖社区居民忠实会员社区劳模最爱沙发原创达人优秀斑竹奖宣传大使奖

    QQ
    发表于 2016-7-19 06:27:32 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    每日签到,有金币领取。


    Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

    本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

    ( 闽ICP备2024076463号-1 ) 论坛技术支持QQ群171867948 ,论坛问题,充值问题请联系QQ1308068381

    平平安安
    TOP
    快速回复 返回顶部 返回列表