请教关于DDR等长,应该pin-to-pin等长,还是die-to-die等长?
请教关于DDR等长,应该pin-to-pin等长,还是die-to-die等长?
正在画一块板子,Xilinx的FPGA挂Micron的DDR(TSOP封装)
从DDR的IBIS文件来看,不同pin的电感相差较大,估计pin到die的长度都不等
感觉等长应该按die-to-die等长,而不应该按pin-to-pin等长,请教是不是这样呢
封装中pin-to-die的长度数据(Package Length)又该去哪里找呢
貌似Micron的IBIS文件中并没有提供这个信息
个人愚见 : 我觉得还是得首先搞清楚DDR这边走线为何要等长(或者说走线长度相差不能超过多少)?他的Root Cause是到底什么?
走线上的等长,那仅仅是一个经验值(或者是芯片厂商给出的值),不同的设计或者说不同的板子设计都是不同的,至少应该存在差异! 如果真的要死扣等长是 pin-to-pin 等长,还是die-to-die等长 ?我认为应该是 pin-to-pin !
“从DDR的IBIS文件来看,不同pin的电感相差较大,估计pin到die的长度都不等”
虽然从DDR的IBIS文件来看,不同pin的电感相差较大,但是如果仔细的看DDR/DDR2/DDR3...的IBIS文件,你会发现,相同的总线(例如地址线或者数据线)都是调用同一个Buffer的!而且相同的总线一般也会调用相同的Package参数。如果调用不同的Package参数,这个要计算不同的参数导致信号输出的时延的差异。 至于pin到die的长度,不是Micron不提供,而是IBIS文件规范里面根本就没有这项参数!
这样说吧,你通过DDR的Datasheet给出的参数(这个就是时序的问题),最终计算出,总线之间的时延不能超过 X ps (假如100PS吧),也就是说你的时间裕度是100ps,那么这个100ps * 6in/s(信号在Trace的传输速率)就是走线长度相差不能超过100ps * 6in/s这个长度(最好控制在这个长度以内)! 这个是Root Cause! 从这个角度来解释的话,下次你就不会去问Micron和Xilinx那帮FAE,封装中pin-to-die的长度(Package Length) 。 他即使给了你这个参数也解决不了你的问题 ....
谢谢 ....
1.按情况看,die-to-die等长是最精确的。
2.pin-to-die的长度数据是在IBIS文件里找不到了。
要去DDR的数据手册里找.专业术语叫“长度补偿”或“时序补偿"
找厂家要,一般都能要到
谢谢楼上两位,我发邮件到 Micron DRAM Support 问了,还没回复
至于Xilinx,看了官方QA,他只提供Flip-Chip封装的数据,Wire-Bond及其他封装不提供,看来只能靠猜了
如果有条件的话,也可以用TDR测出来。
谢谢楼上,我暂时还没有TDR测试条件
另外,Micron也回复我的邮件了,说这个信息不提供,他们只提供Verilog、Hspice、IBIS
我是不是可以这么理解,对于TSOP封装的DDR,等长控制在10mm以内是完全没有意义的?因为封装内长度的不等可能都有7-8mm,对于FPGA来说,封装内最长线和最短线可能差15mm呢。
DIE TO DIE等长肯定最精确!
感觉我们的条件,做到pin-to-pin 误差在1MIL内就可以满足实际的需要的了。
谢谢分享
兄弟,
1:die to die等长最好,因为这才是完整的一个链路,然而,很多IC厂商不提供 package length.
那怎么办呢?
2:通常这个问题,IC公司的设计人员已经帮你考虑了,他们会在Package设计时也按要求做等长。
所以,作为系统级设计人员,你默认PACKAGE length是等长的就OK. (前提是你拿不到IC公司提供的PKG Length).
3: 至于PCB要不要等长,和等长的范围,要看你的频率。频率高就等长严格些。 7-8MM==300mil ==50ps
50ps 对DDR3来说很大了哦,SETup TIME大约200ps--400ps。
学习了
根据你的DDR速率看吧,一般DDR2等长做大pin就可以了。DDR3以上就要考虑封装延迟和负载效应等。否则即使等长了时序也可能因为负载太重引起延迟不一样。
一般是die到die的等长吧,器件电容Ccomp也会影响信号质量的
同意13楼,最大时延通过datasheet计算就可以得到,仿的话看一下波形好不好就差不多了。
