PCB设计:绕等长

时间:2024-05-27来源:网络

一、为什么需要“绕等长”

传输线等长包括差分对内等长,也包括相同类型的传输线组内等长。如果传输线不等长会带来一些信号完整性的问题,包括时序不满足要求、损耗过大或者容易受干扰等等。最简单的方式就通过绕线使差分对不同的两段传输线长度一致。

随着高速电路的发展,电路的设计在朝着高速高密度的方向发展。速度和密度高了的话,各种信号完整性、EMI的问题就出来。这也就出现了各种各样的设计要求规则,比如阻抗稳定性、同组同层、等长设计等等。今天咱们就来讨论一个由等长而引发的一个设计问题,即绕线设计,如下图所示:

在设计中,特别是DDR3/4/5这类的设计,总会有很多的信号线存在,每一组的数据或者地址控制命令信号线都有一定的等长要求,如下所示为某芯片手册的要求:

在设计时,当达不到要求时,工程师首先想到的都是绕线,然后还出现了非常多的绕线方式。如下图所示:

PCB(印刷电路板)设计中走线需要绕等长主要是为了保证信号的同步和完整性。这在高速信号传输和差分信号对设计中尤为重要。以下是一些具体原因:

1、时序的要求:

在高速信号传输中,如DDR、PCIe等,数据线和时钟线之间的长度差异会导致信号的延时不同。如果走线长度不一致,信号到达的时间就会不同,可能会导致时钟和数据不同步,造成数据错误。也就是说同步信号系统“有时钟和数据”的系统,需要满足“建立时间”setup time和“保持时间” hold time。

比较早的一些SoC会给出各种时序参数,让工程师自己计算等长的要求,或者计算线长差的要求。

那么时钟和信号线之间就会有延时差要求,现在很多IC已经设计很好了,只需要保持时钟和信号“等长”就可以。

2、同组信号的同步性

在一些对时序要求非常严格的系统中,所有信号需要在特定的时刻到达。如果走线长度不一致,会导致某些信号先到达,某些信号后到达,破坏了系统的时序要求。

对于有些总线来说,数据是一组数据,地址,命令这些也是一组数据,需要组间等长。

3、差分信号对:

对于差分信号对(如LVDS、USB、Ethernet等),两条信号线之间必须保持等长,以确保差分对的信号在接收端保持相位一致。如果两条线长度不一致,会导致信号相位偏移,影响信号传输的质量。

理想情况下,差分信号是正负对称的,其共模份量为零或者只有直流份量,如图所示。如果差分线的正负传输线长度不等,造成传输时间不一致,实际上就是信号在时间轴上的不对称,在终端负载电阻上就能观察到图2所示的波形。显然此时的正负波形不能严格对称,差分电路中的正负电流无法抵消,于是其电源中就有共模电流份量在流动。

    研究过EMI的人都知道,共模辐射是最难对付的。

    PCB设计:差分线

二、一些需要绕等长的信号

DDR

首先可以想到的就是DDR信号(DDR是最常见的源同步传输方式的信号之一),DDR中所有的控制线和地址线都是在CK上升沿与CK#下降沿的交叉处被采样;而数据线与其对应的DQS、DQS#(数据选通)信号同步。

DQS、DQS#为数据选通(锁存)信号,双沿有效,写数据时输入,信号沿与数据中心对齐;读数据时输出,信号沿与数据边沿对齐。

以16bit DDR为例,其一共可以分为三组来做等长处理:

第一组:CLK/CLK#、地址线与所有的控制线

第二组:D0~D7、DQS0、DQM0

第三组:D8~D15、DQS1、DQM1

eMMC & SDIO

其次就是eMMC总线和SDIO总线,在这两种总线中,DATA信号和CMD信号都是与CLK同步。

所以eMMC总线和SDIO总线中DATA信号、CMD信号和CLK信号需要一起做等长处理,支持HS400的eMMC总线还有DATA Strobe信号,也需要和数据线做等长。

RMII、GMII、RGMII、XGMII(MII)

MII是媒体访问控制(MAC)子层和物理层(PHY)之间的接口,从媒体独立接口(Media Independent Interface)一文中我们可知,MII总线一般分为两部分(Tx和Rx),TX数据线与TXCLK信号保持同步;RX数据线与RXCLK信号保持同步。

所以MII总线的等长处理可以分为两组:

第一组:TXD[0:3]、TX_CLK

第二组:RXD[0:3]、RX_CLK

同理,RMII、GMII、RGMII、XGMII都需要分成两组做等长处理。

HDMI

在HDMI 2.1之前,HDMI有三对差分数据线和一对CLK信号,但是这组CLK信号只是作为参考信号,在接收端倍频用于数据信号的采样,传输时并不与数据信号同步。

所以在HDMI2.1之前,只要保证三对数据线绕等长即可(实际根据HDMI协议规定,HDMI 2.0的对间Skew可以允许最大2000mil,就算不绕等长也基本不会有问题)。

而对于HDMI 2.1,由于其采用了时钟数据恢复技术,不会存在时差,所以可以不用绕等长。

三、“等长”≠“等延时”

相同物理长度的两段传输线如下图所示,一段直线A,一段绕线B,A和B哪一段的延时会更大?

本文就和大家聊一聊平时咱们绕线的方式到底存在一些什么问题?为了完成这个问题的研究,特意做了一个测试板,设计了研究对象为10inch的传输线,一段做参考为直线(上),一段为绕线(下),如下图所示:

一般,大家通常都会认为,这样已经算等长了,而且是完全等长。但是,通过测量其传输特性,测量的结果如下图所示,我们可以看到,其差异还是不小,相差了12.73ps(红色圆圈),而且绕线比直线传输的更快。

这12.7ps换算成物理长度,约为80mil。80mil的长度应该是让有经验的工程师吓一跳,毕竟平时硬件工程师说:给我做好等长,误差在2mil的时候都会跳起脚来大骂。当然,我们这里做实验设计的为10inch,通常很多布线都没这么长,但是也有一些布线确实非常长的。但是,不管怎么样,这个实验都告诉了我们,物理等长,不等于实际设计就等长了。这也是为什么,近年来,业界一些厂商都提倡时序等长的原因。

这是为什么呢?原因就在于绕线之后,由于趋肤效应和电磁场效应,信号都是在表面传递。为了解释此现象,在ADS中设计了一段绕线,进行了电磁(EM)仿真,结果如下图所示:

从上图中,我们可以看到,在绕线的地方,都是在相对比较紧耦合处场电流密度比较大,呈红色,在上方(与传输线平行)以及传输线的中心处,电流密度比较小,呈浅色,这就说明信号靠近边沿处传递,这样就导致了信号传递的“更加快速”,所用的时间更少(本来可以给大家放一张动态图的,但是没能做好,有机会的时候,再给大家show一下)。

而直线的仿真结果如下图所示(长度太长,所以只截取一部分):

通过以上的分析即可说明,相同的物理长度,绕线的一段延时更小,这样,我们就能回答前面提出来的问题了,显然是A的延时更大(绕线更快)。

那么问题又来了,工程师在设计时遇到不“等长”的时候,如何做好设计呢?第一,把物理等长的观念改为等时,不管绕线还是直线,需要的是传输延时是一样的。有的PCB设计工具是可以使用时间来表示物理长度的;

第二,有时序关系的信号线,在设计时做到同进同出同设计,尽量减少绕线;

第三,如果某一段传输线确实要绕线,绕线的形状大一点,波与波的距离大一点,或者绕的比直线更长一点,至于绕多长,我也不知道,还是请工程师进行下仿真吧(这就是为什么要进行后仿真了)。

这种绕线的研究,并不是说每一种总线设计都需要这样做,对于一些低速信号、对时序没有特别要求的信号或者对EMI没有特殊要求的项目,工程师可以不用考虑。


关键词: PCB设计 绕等长

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版