文 | 王萍
上一篇我们讨论了星形拓扑结构,这篇接着讨论菊花链。这两种都是多负载情况下常用的拓扑结构,星形拓扑要求每个分支尽量等长,而菊花链是把所有的负载串起来,没有等长要求。那什么时候使用菊花链什么时候用星形呢?这就要看时序要求了。我们以DDR2和DDR3举例。我们知道DDR2是采用T形拓扑结构,这种结构是不是星形结构的删减版?我们采用T形拓扑是因为时序要求信号要同时到达。那DDR3采用的flyby结构,其实就是stub较短的菊花链,之所以采用此种结构是因为DDR3多了读写平衡的新技能,即使你们不同时到达,我也能把你调过来。所以采用何种拓扑结构首先要看时序要求。
菊花链一般适用较低速的信号,以前仿真不流行的年代随便怎么连都不会有什么问题,而且它比星形在布局布线上更容易实现,所以是最常见的一种拓扑结构。但随着芯片制造技术的更替,就是低速驱动器的上升沿也随着变陡,这使得低速不低频,更多的高频分量使反射也变成低速信号要考虑的问题了,尤其是多负载菊花链的多重反射,所以菊花链的信号完整性问题比星形拓扑负载复杂多了。
我们就以3个负载的情况来分析,拓扑结构如图1,驱动电压3.3V,内阻20ohm,上升沿0.6ns,传输线为无损线,接收器均无端接。
图1
我们分别扫描分支长度(为简化分析所有分支长度统一为C),两个分支的距离B,主干长度A
图2
图3
图4
菊花链最差波形总是出现在第一个接收器,因为后面每个阻抗不连续点的反射都会影响这里,所以我们只比较第一个接收器波形。从星形拓扑的波形分析我们知道分支的长度影响台阶的长度,所以分支长度越短越好,从图2的扫描结果看只有分支延时小于上升沿的六分之一时才没有回沟。反射和上升沿时间有关,还和传输线的长短有关,当传输线时延小于六分之一的上升时间时就可以不考虑反射的影响了或者说反射淹没在上升沿中了。图3扫描结果也显示两分支的距离B也是要小于六分之一的上升时间才没有回沟。而主干的长度A和星形结构相同主要影响振铃的大小。
那是不是分支小于六分之一的上升时间就是普遍的原则呢?好像不是,小编又试了4个负载的情况,只有分支小于十分之一的上升时间时回沟才会消失。所以我们可以总结菊花链的布线注意事项:stub越短越好,分支间距也越短越好。那不就是fly-by结构了,太难了吧。如果做不到也别急试试端接吧。
图5
如图5是三个负载时不同端接方法效果对比,蓝色是源端30ohm匹配的波形,发现源端匹配于菊花链的波形改善效果有限;而终端匹配(红色波形)改善明显,但由于负载加大了幅值掉的有点多,所以戴维宁端接得到的效果更好,如果负载更多的话可能还需要加redriver。当然我们分析的比较简单,没有考虑过孔,也没有考虑接收芯片的输入电容的影响,其实实际案例中多负载的菊花链是很不好处理的,影响的因素太多,所以大家不要偷懒把驱动和接收的模型都拿到仿真一下更放心些。
我们就这样愉快的总结了菊花链的布线注意事项和端接方法。
问题来了~
菊花链主干(A段)是越长越好吗?