参看:Altium Designer -- 精心总结
PCB 差分布线已经讲的很清楚了,在此不做介绍。
参看:实际运用中差分信号线的分析和 LAYOUT
参看:差分信号 -- 维基百科
首先来看一下什么是差分信号吧。
差分传输是一种信号传输的技术,区别于传统的一根信号线一根地线的做法,差分传输在这两根线上都传输信号,这两个信号的振幅相同,相位相反。在这两根线上的传输的信号就是差分信号。信号接收端比较这两个电压的差值来判断发送端发送的是逻辑0还是逻辑1。在电路板上,差分走线必须是等长、等宽、紧密靠近、且在同一层面的两根线。
一般类型有:USB、以太网、PCIE、SATA、RS485、RS422、HDMI、LVDS
常用对有:+/- PM/PN TXN/TXP
差分信号与传统的一根信号线一根地线(即单端信号)走线的做法相比,其优缺点分别是:
优点:
抗干扰能力强。干扰噪声一般会等值、同时的被加载到两根信号线上,而其差值为0,即,噪声对信号的逻辑意义不产生影响。
能有效抑制电磁干扰(EMI)。由于两根线靠得很近且信号幅值相等,这两根线与地线之间的耦合电磁场的幅值也相等,同时他们的信号极性相反,其电磁场将相互抵消。因此对外界的电磁干扰也小。
时序定位准确。差分信号的接收端是两根线上的信号幅值之差发生正负跳变的点,作为判断逻辑0/1跳变的点的。而普通单端信号以阈值电压作为信号逻辑0/1的跳变点,受阈值电压与信号幅值电压之比的影响较大,不适合低幅度的信号。
缺点:
若电路板的面积非常吃紧,单端信号可以只有一根信号线,地线走地平面,而差分信号一定要走两根等长、等宽、紧密靠近、且在同一层面的线。这样的情况常常发生在芯片的管脚间距很小,以至于只能穿过一根走线的情况下。
(So,差分信号要优先布线)
误区一:认为差分信号不需要地平面作为回流路径,或者认为差分走线彼此为对方提供回流途径。造成这种误区的原因是被表面现象迷惑,或者对高速信号传输的机理认识还不够深入。虽然差分电路对于类似地弹以及其它可能存在于电源和地平面上的噪音信号是不敏感的。地平面的部分回流抵消并不代表差分电路就不以参考平面作为信号返回路径,其实在信号回流分析上,差分走线和普通的单端走线的机理是一致的,即高频信号总是沿着电感最小的回路进行回流,最大的区别在于差分线除了有对地的耦合之外,还存在相互之间的耦合,哪一种耦合强,那一种就成为主要的回流通路。
在PCB 电路设计中,一般差分走线之间的耦合较小,往往只占10~20%的耦合度,更多的还是对地的耦合,所以差分走线的主要回流路径还是存在于地平面。当地平面发生不连续的时候,无参考平面的区域,差分走线之间的耦合才会提供主要的回流通路。尽管参考平面的不连续对差分走线的影响没有对普通的单端走线来的严重,但还是会降低差分信号的质量,增加EMI,要尽量避免。也有些设计人员认为,可以去掉差分走线下方的参考平面,以抑制差分传输中的部分共模信号,但从理论上看这种做法是不可取的,阻抗如何控制?不给共模信号提供地阻抗回路,势必会造成EMI 辐射,这种做法弊大于利。
所以要保持PCB地线层返回路径宽而短。尽量不要跨岛(跨过相邻电源或地层的分隔区域)。比如主板设计中的USB和SATA及PCI-EXPRESS等最好不要有跨岛的做法。保证这些信号的下面是个完整地平面或电源平面。
误区二:认为保持等间距比匹配线长更重要。在实际的PCB 布线中,往往不能同时满足差分设计的要求。由于管脚分布,过孔,以及走线空间等因素存在,必须通过适当的绕线才能达到线长匹配的目的,但带来的结果必然是差分对的部分区域无法平行,其实间距不等造成的影响是微乎其微的,相比较而言,线长不匹配对时序的影响要大得多。再从理论分析来看,间距不一致虽然会导致差分阻抗发生变化,但因为差分对之间的耦合本身就不显着,所以阻抗变化范围也是很小的,通常在10%以内,只相当于一个过孔造成的反射,这对信号传输不会造成明显的影响。而线长一旦不匹配,除了时序上会发生偏移,还给差分信号中引入了共模的成分,降低信号的质量,增加了EMI。
可以这么说,PCB 差分走线的设计中最重要的规则就是匹配线长,其它的规则都可以根据设计要求和实际应用进行灵活处理。同时为了弥补阻抗的匹配可以采用接收端差分线对之间加一匹配电阻。 其值应等于差分阻抗的值。这样信号品质会好些。
所以建议如下两点:
(A)使用终端电阻实现对差分传输线的最大匹配,阻值一般在90~130Ω之间,系统也需要此终端电阻来产生正常工作的差分电压;
(B)最好使用精度1~2%的表面贴电阻跨接在差分线上,必要时也可使用两个阻值各为50Ω的电阻,并在中间通过一个电容接地,以滤去共模噪声。
通常对于差分信号的CLOCK等要求等长的匹配要求是+/-10mils之内。
误区三:认为差分走线一定要靠的很近。让差分走线靠近无非是为了增强他们的耦合,既可以提高对噪声的免疫力,还能充分利用磁场的相反极性来抵消对外界的电磁干扰。虽说这种做法在大多数情况下是非常有利的,但不是绝对的,如果能保证让它们得到充分的屏蔽,不受外界干扰,那么我们也就不需要再让通过彼此的强耦合达到抗干扰和抑制EMI 的目的了。如何才能保证差分走线具有良好的隔离和屏蔽呢?增大与其它信号走线的间距是最基本的途径之一,电磁场能量是随着距离呈平方关系递减的,一般线间距超过4 倍线宽时,它们之间的干扰就极其微弱了,基本可以忽略。此外,通过地平面的隔离也可以起到很好的屏蔽作用,这种结构在高频的(10G 以上)IC 封装PCB 设计中经常会用采用,被称为CPW 结构,可以保证严格的差分阻抗控制(2Z0)。
差分走线也可以走在不同的信号层中,但一般不建议这种走法,因为不同的层产生的诸如阻抗、过孔的差别会破坏差模传输的效果,引入共模噪声。此外,如果相邻两层耦合不够紧密的话,会降低差分走线抵抗噪声的能力,但如果能保持和周围走线适当的间距,串扰就不是个问题。在一般频率(GHz 以下),EMI也不会是很严重的问题,实验表明,相距500Mils 的差分走线,在3 米之外的辐射能量衰减已经达到60dB,足以满足FCC 的电磁辐射标准,所以设计者根本不用过分担心差分线耦合不够而造成电磁不兼容问题。
误区四:差分曼切斯特编码并不是差分信号的一种,它指的是用在每一位开始时的电平跳变来表示逻辑状态“0”,不跳变来表示逻辑状态“1”。但每一位中间的跳变是用来做同步时钟,没有逻辑意义。
误区五:双绞线上面走的不一定是差分信号,单端信号在双绞线上的电磁辐射也比平行走线的辐射小。
根据上面的误区,总结一下差分布线的布线要求。
(1)差分走线必须是等长、等宽、紧密靠近、且在同一层面的两根线。
如果等长和等距不能同时满足,则 PCB 差分走线的设计中最重要的规则就是匹配线长。同时为了弥补阻抗的匹配可以采用接收端差分线对之间加一匹配电阻。 其值应等于差分阻抗的值。差分走线也可以走在不同的信号层中,但一般不建议这种走法。因此尽量少跨层和走过孔,尽量少走弯路。
(2)差分线对之间要有 GND 隔离,或者保持距离,不要太近。
增大差分信号与其它信号走线的间距,或者通过 GND 隔离。
(3)差分线要优先布线
为了保证良好的信号质量, USB 2.0 端口数据信号线按照差分线方式走线。为了达到USB 2.0 高速 480MHz 的速度要求,建议 PCB 布线设计采用以下原则:
差分数据线走线尽可能短、直,差分数据线对内走线长度严格等长,走线长度偏差控制在±5mil 以内。
差分数据线控制 90±10%的均匀差分阻抗。
差分数据线走线尽可能在临近地平面的布线层走线且不要换层。
差分数据线走线应有完整的地平面层作为参考平面,不能跨平面分割。
差分数据线走线应尽量用最少的过孔和拐角,拐角可考虑用圆弧或者 135 度角,避免直角,以减少反射和阻抗变化。
避免邻近其它高速周期信号和大电流信号,并保证间距大于 50mil,以减小串扰。
此外,还应远离低速非周期信号,保证至少 20mil 的距离。
REXT 电阻应该尽可能靠近 Hi3516A 侧。
参看:USB PCB布线经验教训--“血训”
USB是一种快速、双向、同步传输、廉价、方便使用的可热拔插的串行接口。由于数据传输快,接口方便,支持热插拔等优点使USB设备得到广泛应用。目前,市场上以USB2.0为接口的产品居多,但很多硬件新手在USB应用中遇到很多困扰,往往PCB装配完之后USB接口出现各种问题
比如通讯不稳定或是无法通讯,检查原理图和焊接都无问题,或许这个时候就需怀疑PCB设计不合理。绘制满足USB2.0数据传输要求的PCB对产品的性能及可靠性有着极为重要的作用。
USB协议定义由两根差分信号线(D+、D-)传输数字信号,若要USB设备工作稳定差分信号线就必须严格按照差分信号的规则来布局布线。根据笔者多年USB相关产品设计与调试经验,总结以下注意要点:
1. 在元件布局时,尽量使差分线路最短,以缩短差分线走线距离(√为合理的方式,×为不合理方式);
2. 优先绘制差分线,一对差分线上尽量不要超过两对过孔(过孔会增加线路的寄生电感,从而影响线路的信号完整性),且需对称放置(√为合理的方式,×为不合理方式);
3. 对称平行走线,这样能保证两根线紧耦合,避免90°走线,弧形或45°均是较好的走线方式(√为合理的方式,×为不合理方式);
4. 差分串接阻容,测试点,上下拉电阻的摆放(√为合理的方式,×为不合理方式);
5. 由于管脚分布、过孔、以及走线空间等因素存在使得差分线长易不匹配,而线长一旦不匹配,时序会发生偏移,还会引入共模干扰,降低信号质量。所以,相应的要对差分对不匹配的情况作出补偿,使其线长匹配,长度差通常控制在5mil以内,补偿原则是哪里出现长度差补偿哪里;
上面一直提到,差分阻抗。这个怎么计算呢?推荐一款阻抗计算工具 Polar CITS25
下载:Polar CITS25 阻抗计算工具下载
举个例子:
我们用一对 0.006 英寸宽, 1/2 盎司铜厚,间距为 0.01 英寸, FR4 材料作衬底,离地线层 0.005 英寸 (微带方式)的差分信号走线的差分阻抗计算作为例子,铜的厚度 T 为 0.7/1000 英寸。下图显示了各参数。
(单位换算:1Mil=千分之一英寸,约等于0.0254毫米;1 盎司 = 0.0014 英寸=0.7 mil)
H:介质厚度(PP片或者板材,不包括铜厚) (5)
W:阻抗线下线宽(W2=W1-0.5MIL) (6)
W1:阻抗线上线宽(客户要求的线宽) (6)
S:阻抗线间距(客户原稿) (10)
T:成品铜厚 (0.7)
Er1:PP片的介电常数(板材为:4.5 P片4.2) (4.2)
该软件跟上面软件不同,但是参数差不多,仅供参考。
如果想下载下面的软件,参看:PCB特征阻抗计算神器Polar SI9000安装及破解指南
1. 外层单端:Coated Microstrip 1B
H1:介质厚度(PP片或者板材,不包括铜厚)
Er1:PP片的介电常数(板材为:4.5 P片4.2)
W1:阻抗线上线宽(客户要求的线宽)
W2:阻抗线下线宽(W2=W1-0.5MIL)
T1:成品铜厚
C1:基材的绿油厚度(我司按0.8MIL)
C2:铜皮或走线上的绿油厚度(0.5MIL)
Cer:绿油的介电常数(我司按3.3MIL)
Zo:由上面的参数计算出来的理论阻值
2.外层差分:Edge-Coupled Coated Microstrip 1B(重点)
H1:介质厚度(PP片或者板材,不包括铜厚)
Er1:PP片的介电常数(板材为:4.5 P片4.2)
W1:阻抗线上线宽(客户要求的线宽)
W2:阻抗线下线宽(W2=W1-0.5MIL)
S1:阻抗线间距(客户原稿)
T1:成品铜厚
C1:基材的绿油厚度(我司按0.8MIL)
C2:铜皮或走线上的绿油厚度(0.5MIL)
C3:基材上面的绿油厚度(0.50MIL)
Cer:绿油的介电常数(我司按3.3MIL)
3.内层单端:Offset Stripline 1B1A
H1:介质厚度(PP片或者光板,不包括铜厚)
Er1:H1厚度PP片的介电常数(P片4.2MIL)
H2:介质厚度(PP片或者光板,不包括铜厚)
Er2:H2厚度PP片的介电常数(P片4.2MIL)
W1:阻抗线上线宽(客户要求的线宽)
W2:阻抗线下线宽(W2=W1-0.5MIL)
T1:成品铜厚
Zo:由上面的参数计算出来的理论阻值
4.内层差分:Edge-Couled Offset Stripline 1B1A
H1:介质厚度(PP片或者光板,不包括铜厚)
Er1:H1厚度PP片的介电常数(P片4.2MIL)
H2:介质厚度(PP片或者光板,不包括铜厚)
Er2:H2厚度PP片的介电常数(P片4.2MIL)
W1:阻抗线上线宽(客户要求的线宽)
W2:阻抗线下线宽(W2=W1-0.5MIL)
S1:客户要求的线距
T1:成品铜厚
Zo:由上面的参数计算出来的理论阻值
5.外层单端共面地:Coated Coplanar Waveguide With Ground 1B
H1:介质厚度(PP片或者板材,不包括铜厚)
Er1:PP片的介电常数(板材为:4.5 P片4.2)
W1:阻抗线上线宽(客户要求的线宽)
W2:阻抗线下线宽(W2=W1-0.5MIL)
D1:阻抗线到两边铜皮的距离
T1:成品铜厚
C1:基材的绿油厚度(我司按0.8MIL)
C2:铜皮或走线上的绿油厚度(0.5MIL)
Cer:绿油的介电常数(我司按3.3MIL)
Zo:由上面的参数计算出来的理论阻值
6.外层差分共面地:Diff Coated Coplanar Waveguide With Ground 1B
H1:介质厚度(PP片或者板材,不包括铜厚)
Er1:PP片的介电常数(板材为:4.5 P片4.2)
W1:阻抗线上线宽(客户要求的线宽)
W2:阻抗线下线宽(W2=W1-0.5MIL)
S1:阻抗线间距(客户原稿)
D1:阻抗线到铜皮的距离
T1:成品铜厚
C1:基材的绿油厚度(我司按0.8MIL)
C2:铜皮或走线上的绿油厚度(0.5MIL)
C3:基材上面的绿油厚度(0.50MIL)
Cer:绿油的介电常数(我司按3.3MIL)
Zo:由上面的参数计算出来的理论阻值
参看:PCB阻抗设计参考
参看:PCB迹线的阻抗控制技术
参看:PCB阻抗匹配总结
确实,一开始我也以为阻抗是写到 PCB 制版要求里,然后让制版厂来做的。
从上面的例子中就可以看到它与 差分线的线宽、线间距、介质厚度、成品铜厚、介电常数、叠层结构 等有关。
差分线的线宽、线间距,这些都是在 PCB 规则里设置好的。只不过以前不晓得,为什么要设置成线宽 6 mil,间距 8 mil 等等这样的要求,还以为只是与制版价格有关呢。现在看来,它还和阻抗大小有关的!!
线宽:(最小线宽 5mil)
差分线间距:(差分线最小间距 10mil)
其他信号线间距:(最小线宽 7.5mil)
参看:Altium Designer -- 查看板子厚度
在 Design--Layer Stack Manager--thickness
上面参看的文档,讲的真好,看了一遍受益匪浅。不过内容较多,不一一分析了,下面只看一部分。
结合目前我公司 PCB 板加工厂家的工艺能力,在用 polar 公司阻抗计算器 CITS25 计算PCB 板上迹线特性阻抗时,对影响 PCB 板迹线控制阻抗的几个相关参数分述如下:
铜层厚度代表了 PCB 迹线的高度 T。内层铜箔通常情况下用到 1 OZ(厚度为 35 微米),也有在电源层要流过大电流时用到 2OZ(厚度为 70 微米)。外层铜箔常用 1/2 OZ(18 微米),但由于经过板镀和图形电镀最终成品外层铜厚将达到48 微米(实际计算时用该值),设计成其他铜厚将较难控制铜厚厚度公差。若外层使用 1OZ铜箔,则最终铜厚将达到 65 微米。
由于侧蚀的影响, PCB 迹线的截面为一梯形,上下线宽差距以 1mil 来计算,其中下线宽=要求线宽,而上线宽=要求线宽-1mil。
阻焊层厚度按 10um 为准(选择盖阻焊模式),但有机印后将会有所增厚,但其变化将基本不会带来阻抗值的变化。
常用板材(芯板): (mm OZ/OZ *表示其数值为不包括铜箔厚度的芯板厚度) 0.13* 1/1 0.21* 1/1 0.25* 1/1 0.36* 1/1 0.51* 1/1 0.71* 1/1 0.80* 1/1 1.0 1/1 1.2 1/1 1.6 0.5/0.5 1.6 1/1 1.6 2/2 2.0 1/1 2.0 2/2 2.4 1/1 3.0 1/1 3.2 1/1
芯板在计算控制阻抗时的实际厚度: 常用半固化片: (mm/mil) 7628: 0.175/6.9 2116: 0.11/4.3 1080: 0.066/2.6 实际计算厚度时注意半固化片随着两面线路结构不同而有所不同:(mil)
其中 GND 层包括铜面积占 80%以上的线路层。如果介质在 HOZ 和 1OZ 铜箔之间,其厚度按 HOZ 情况计算。
● Er 的值是线路板材质的绝缘常数(介电常数), 它对于线路的特性阻抗值而言是一个重要的组成部分。设计厂商因此有时会指定迹线阻抗值并依赖于线路板制造商来控制流程,以使迹线阻抗满足设计厂商指定的技术规范。 ● 迹线的控制阻抗与板材介电常数的平房根成反比。 ● 通过板材供应商提供的板材阻抗范围为 4.2~5.2,而 POLAR 公司建议单端采用 4.2,而差分若两线间距小会有所影响则建议采用 4.7。 ● 根据一年多来各阻抗实验及生产板,我公司选用 4.2 进行计算能符合要求。 ● 由于介电常数与板材型号和信号频率有相关性, 请设计人员能充分考虑该影响。如:高频板材有介电常数 2.5 等。
我们的制版要求,如果需要差分阻抗,一般会有这几个选项:
层数:4
板厚1.6mm,整板喷锡工艺。
阻抗匹配 目录中的图片信号需要100欧姆差分阻抗匹配。
严格禁止修改PCB图的任何东西的。
则 1.6mm 厚度的 4 层 PCB 板加工,建议做阻抗设计的时候按照 1.5mm 厚度进行设计,剩下 0.1mm 厚度留给工厂作为其他工艺要求用(后制诚厚度,绿油、丝印等)。
板厚 1.5mm(采用 1.2 35/35 的芯板,其余两个介质层为 2116)。
L1/L4 层差分信号(阻抗控制为 100Ω)的线宽/间距可以为 5/5、 5/6、 6/7、 6/8、 6/9(mil/mil) L1/L4 层差分信号(阻抗控制为 75Ω)的线宽/间距可以为 10/7、 10/6、 11/9、 11/10、10/11(mil/mil)① 计算单端阻抗和差分阻抗的界面分别如下图一和图二:
L1 和 L2 层、 L3 和 L4 层之间的介质层用 2116,模式为 Copper/Gnd(HOZ), 所以 厚度 H=4.6mil,介电常数为 4.5,外层铜厚为 1OZ(1.9mil)。 实际板厚: 0.01+0.048+0.12+1.2+0.12+0.048+0.01=1.556mm。②
注 1:此处差分信号表示方式线宽/间距中的间距指的是两条差分线内侧边到边的距离,在 Allegro 中设置布线规则中也使用内侧边到边的距离, 但在有些参考中用的是两条差分线中心到中心的距离, 在应用时要注意加以区别。 例: 8/8(mil/mil)的差分线如果间距是用内侧边到边的距离表示,则差分线中心到中的间距表示为 8/16(mil/mil)。 注 2: 实际板厚计算中 0.01 代表的时 PCB 板表面的阻焊层, 阻焊层不会影响控制阻抗,单会影响 PCB 板的整体厚度。
其他层自行查看,不过层结构值得看一下:
四层板:最常用的信号叠层顺序为 Sig/Gnd/Power/Sig 六层板:较容易实现阻抗控制的的信号叠层顺序为 Sig/Gnd/Sig/Sig/Power/Sig 六层板:还有一种结构不对称的叠层顺序经常用道: Sig/Gnd/Sig/Gnd/Power/Sig 八层板:对称结构Sig/Gnd/Sig/Gnd/Power/Sig/Gnd/Sig 十层板:信号顺序 Sig/Gnd/Sig/Sig/Gnd/Gnd/Sig/Sig/Gnd/Sig(结构对称) 十二层板:信号顺序Sig/Gnd/Sig/Gnd/Sig/Gnd/Gnd/Sig/Gnd/Sig/Gnd/Sig
或参看:Altium Designer -- PCB 叠层设计
1. H介质层厚度 H与Zo成正比,H值越大,Zo越大; 2. W1线宽 W1与Zo成反比,W1值越大,Zo越小; 3. T 铜厚 T与Zo成反比,T值越大,Zo越小; 4. Er 介电常数 Er与Zo成反比,Er值越大,Zo越小; 5. S差动阻抗线间距 S与Zo成正比,S值越大,Zo越大;
◆ 调整阻抗控制线宽、间距; ◆ 调整介质层厚度。
阻抗控制线宽、间距、叠层结构,这些是硬件工程师在 PCB 设计时设置的,一般制版时要求严格禁止修改PCB图的任何东西的。至于介电常数、介质厚度、成品铜厚,这些是与材质有关,这就是PCB 加工厂家的事了。