PCB设计中关于反射的那些事儿摘要:如何确保信号完整性?入门工程师告诉你:避免串扰和反射。专家工程师也告诉你:避免串扰和反射。反射在信号完整性中的地位毋庸置疑。市面上大部分的书籍都是从路的角度分析反射,让我们跟随这篇文章,敲开场的大门,探索反射的世界。最近高速先生粉丝(微信公众号:一博_看得懂的高速设计)增长很快,得益于各位朋友的大力推荐。其中有一位朋友推荐我们公众号时是这样说的“给大家分享一个公众号,这是我见过最无聊的公众号!一天到晚只说技术,真是弄不明白做硬件的人是怎么想的啊!哇哈哈哈哈哈哈哈哈”。对于这位朋友,高速先生只想说,您真是太(bu)有(hui)眼(xin)光(shang)啦(a)!好了,玩笑到这。高速先生出道以来,接到了大量朋友的提问,很大一部分问题几种在基础理论上。很明显大家都是有思考过的,对一些东西处于明白但又有点不明白的区间,还差一层窗户纸没有捅破。所以高速先生写出这样一篇文章,希望能帮助大家捅破这层窗户纸。基础理论篇幅较长,所以这一系列文章会分比较多期。开篇在国外能碰到许多二三十年工作经验的工程师,帮助他们沟通的工具不是PPT,不是仿真结果,不是测试结果,而是一张纸和一支笔。很佩服他们可以用一张纸一支笔给你勾绘出一个电路,一条波形,一种debug的方案。曾有一个老工程师告诉我,当你用场的角度去理解电路上的器件的时候,一切将会变得简单起来。什么叫场的角度理解分立器件?在这个世界里,容抗是Xc=1/(2πfC),感抗是XL=2πfL=ωL。这两个公式中的f与ω指的不是我们的信号频率,而是正弦波的频率与角频率。第二页:大家和SI工程师眼中的信号在这里,我们要感谢伟大的让˙巴普蒂斯˙约瑟夫˙傅立叶——简称傅立叶,对,就是发明傅立叶变化的那个人。所以在大家眼中看到的信号是这样的:而在一个SI工程师的眼中看到的信号是这样的:或者,这样的:当我们能将信号分解为一个一个正弦波来研究的时候,一切都变简单了,可以量化了。在正弦波的世界中只有频率f,幅度A,相位θ。第三页:正弦波变成了什么?现在,我们可以愉快的用场来看这个世界了。让我们来思考下面这个问题:一个1V的正弦波在某岔路口分成了两个大小相等的正弦波,两条路通向同一个终点,但是一条路长为L,另外一条路长度为L+X,在终点的时候,这个正弦波变成了什么?当两条岔路一样长时,:终点的信号和起点的信号没有区别。当一条路比另一条多二十分之一波长时:区别也十分小吧?高速先生在这里特别打上了mark点。大家可以看到,终点的信号比起点的信号衰减了1.2%。X更长,达到八分之一波长时:这时候,衰减已经不需要打mark点也可以看出来了。X再长一点,达到四分之一波长时:30%的能量不见了!直到,X达到波长一半的长度:好惨,完全阵亡。那么,这一期的问题是:为什么高速先生要举这个例子呢?好吧,这个问题也是个玩笑(首尾呼应)。这一系列的基础理论详解就不提问题了。奖品将在向我们提问的各位朋友中选出。我们下期分解。作者:陈德恒一博科技本文由一博科技自媒体“看得懂的高速设计”出品,欢迎关注我们微信公众号:“一博_看得懂的高速设计”。高速先生愿意与你随时随地交流技术问题。PCB设计中关于反射的那些事儿(2)——集总的世界大家知道,信号是以电磁波的形式传递的。波从一个介质入射到另一个介质时,会产生反射。同样的,当我们信号传输遇见阻抗不连续时,信号会产生反射。(关注技术自媒体微信公众号:一博_看得懂的高速设计)反射能量的强度跟阻抗比匹配的程度相关。在开路短路这种极端情况下,反射的幅值会和入射的幅值相等。由于反射的存在,即使我们的设计中通常不会出现前面例子中分叉之后再接到接收端的情况,还是会有大量相位不相等的谐波在我们传输线中传输。这些能量就会相互产生干扰,受干扰的程度跟反射的幅值和两个能量之间的相位差有关。从前面的例子中我们可以看到,当两个信号的相位差不到λ/20时,叠加后的影响是微乎其微的。大家通常将λ/20作为一个界限,当传输线长度小于λ/20时,我们用集总参数来考虑我们的电路。我们一直在说λ,那λ是什么?如果大家每次都想着λ=v*T=v/f的话,理解一些理论的时候肯定很绕,没法有个直观的反应。在这里大家需要再建立起一个概念,我们通常看到的波形是一个电压/时间的坐标轴,当我们把X轴的时间换成长度,在普通的FR4板材上,我们看到的大致是一个这样的图像:我们要在一条传输线上完成一个1GHz的正弦波,这条传输线大概需要6000mil。所以很多时候我们以为我们传输线上的波形是这样子的:但其实我们传输线上实际的波形可能是这样子的:或者是这样子的:可以看到其实他们的dv/dX是非常小的,这里用dX不用dt是因为传输线的总电容/电感是跟X有关的。我们都知道地球是圆的,可是身处我们的位置去看的话地球就是平的。同样的,在集总参数中,由于在线路上的电压电流变化速度很慢,我们可以将它当做是直流,在这时,传输线的容抗与感抗都没有表现出来,这时传输线是透明的:接收端接收到的就是发送端发出的信号,下面是传输线10Ω与传输线100Ω的对比:为什么以前的板子不需要控阻抗,为什么现在的一些模拟信号也是不需要控阻抗的,原因就在这里。通常我们1GHz的正弦波的λ/20在300mil左右,10MHz的正弦波的λ/20则有30000mil。传输线是透明的,接收端接收到的波形与传输的路径没有关系,这就是集总的世界。下一页:一些经验公式在上面给大家展示的这张图其实是非常有代表意义的:这是一个1GHz的信号,上升沿大概在0.1ns左右。大家想到了什么?是的,DDR3的时钟信号。五倍频谐波合成一个波形,上升沿时间为信号周期的十分之一,符合我们一切对信号完整性的预期。该信号五倍频率处的这个谐波称之为最高次有效谐波,我们前文中说的集总参数与分布参数界限的λ/20,指的就是最高次有效谐波的λ/20。所以一个1GHz的信号(注意这里说的是信号,不是正弦波),通常他的λ/20是60mil。但是否每个波形的最高次有效谐波都是信号的五倍频呢?并不一定,大家看下面两幅图:这是两个频率为500MHz的信号,他们周期相等,幅值也相等,但是上升沿不一样。很明显,上升沿较抖的红色信号直到9倍频处还有较为明显的频率分量,而上升沿较缓的蓝色信号在三倍频以后的频率分量就非常少了。什么时候会出现这种状况呢,不是说好了上升沿时间为信号周期的十分之一吗?由于工艺的不断更新换代,芯片的die电容不断减小,现在大量的100MHz信号的上升沿达到了0.2ns甚至更少,高速先生不久前就碰到过66MHz的信号反射非常严重的。同样是因为工艺的原因,按照上升沿时间为信号周期的十分之一计算的话,25Gbps信号的上升时间应为8ps,臣妾做不到啊!所以在802.3bj中,要求的25G信号的上升沿为9.6ps(20%-80%)。而在现在的高速无源链路上只关心到信号中心频率的两倍频处,再高的频率分量由芯片来给你保证了。为了辅助我们得出最高次有效频率,我们还有这些经验公式:0.35/Tr,0.5/Tr......其中Tr单位使用ns的话,得到的频率为GHz,两个公式的区别在于对最高次有效谐波定义的严格与否。等等!各位看官不要走!如果您觉得这样计算最高次有效谐波的波长再除以二十再跟传输线长度来进行对比来判断是集总参数还是分布参数再去决定是否考虑传输线效应太麻烦的话,这里还有个最简单的:就是这个了,如果上升时间小于六倍的传输延时,我们需要考虑传输线效应,称之为高速。最后,让我们来对比一下两种方法算出来的分布参数与高速有何不同,拿我们最开始的DDR3的波形举例:上升时间Tr为100ps;高速的临界条件为传输延时为16.6ps;16.6ps传输的长度为100mil;100mil为3GHz正弦波的λ/20;3GHz约等于使用0.35/Tr来算最高次谐波3.5GHz;如果使用0.5/Tr来算最高次谐波的话,他的最高次谐波为5GHz;回到文章顶部看我们最开始分享的那张图......其实我们用有效频率的二十分之波长来定义分布/集总参数与用六分之上升时间来定义高速/低速信号是完全一样的东西啊。耐心看完的朋友们都是英雄,我们下期再虐!PCB设计中关于反射的那些事儿(3)——路的反射和场的反射文章未动,公式先行:inc──入射;trans──传输;refl──反射当信号穿越阻抗不连续的点时,会产生反射电压与电流,从而使得分界面两边的电压和电流相等(基尔霍夫定律)。(关注技术自媒体微信公众号:一博_看得懂的高速设计)在这里给大家自爆一下高速先生小时候学习过程中做过的笔记:对于理工科来说,一些从数学上去理解问题的过程是必不可少,也是最直观的。高速先生也和大家一样,学习反射都是从手算反弹图开始的。同样的,小高速先生在画出反弹图之后曾经觉得自己懂反射了。可是转念一想,还是发现了很多无法理解的问题:为什么测试时在通道中间测试到的波形有回沟,而在终端测试到的波形又是好的?Breakout区域有一次阻抗不连续,但走出该区域之后,走线从细变宽,会增加一次反射,那是不是全程按照breakout区域走线会比较好?源端匹配电阻是不是也增加了一次反射?是的,其实这些用一句“传输线很短的时候反射掩盖在上升沿中了”就可以解释。但是到底是怎么掩盖在上升沿中的?我们发现在上方的反弹图中传输延时远远大于信号的上升时间,在计算反射时我们用的电压实际上是信号高电平的电压,并没有关注上升沿过程中其他电平的状态,但实际上的情况并不是这样,可是如果我们如果把上升沿的状态加入算式中,那这游戏可就没法玩了。所以,我们需要场的思维,请看下一页分解。下一页:场的反射场的反射来到了场的领域,我们要做的第一件事就是把我们的波形拆开,让我们先来看看之前说过的测试点的问题。(关注技术自媒体微信公众号:一博_看得懂的高速设计)为了将问题简化,我们假定一个这样的条件:1.在拓扑上,源端完全匹配,末端全反射,理想的100Ω差分传输线。2.传输的为我们之前模拟的DDR3信号,由三次谐波构成。3.测试点位置离接收端距离为500mil。好的,现在开始让我们分析,首先,如同大家在之前文章中看到的,我们接收端信号与测试点信号的区别是这样的:让我们看看1GHz谐波发生了什么:测试点测到的是两个信号叠加的波形,一个是入射信号,一个反射波。反射波与入射波幅值相等(末端全反射);走过的路程比入射波多1000mil(一来一回),也就是六分之一波长;两个信号的相位差也就是60°。这样,我们就看到了1GHz的谐波在接收端时蓝色的波形,在测试点处为红色的波形,幅值衰减,相位超前。再看看3GHz的谐波:同样的1000mil,对于3GHz来说就是半波长,相位差180°,这样我们就发现在测试点处3GHz的频率分量基本上就衰减完了。再来看看5GHz的谐波:相位差300°,于是看到测试点的波形衰减,相位滞后。将在测试点的三个频率分量的叠加再叠加起来之后:不知道大家对于这样的分析方法是感觉如何,是觉得把东西变复杂了还是变简单了呢?怎么想没有关系,下一篇中高速先生会将这样的方法再拓展,相信你会爱上这个方法的。PCB设计中关于反射的那些事儿(4)——反射的疑云与解答反射疑云在前文中有不少公式与计算,但其实个人觉得应用工程师要做的是知道趋势,知道影响范围,并不需要精确计算,那是软件干的事情。(关注技术自媒体微信公众号:一博_看得懂的高速设计)最近听到一个理论,说大数据时代,人们只需要知其然,不需要知其所以然。想象一下,当我们要做一个项目时,我们可以轻而易举的知道一些其他类似项目哪些结构成功了哪些结构失败了,我们还需要理论分析干嘛呢?这句话到底有没有道理大家仁者见仁智者见智,下面我们继续来解决我们的反射问题:Breakout区域有一次阻抗不连续,但走出该区域之后,走线从细变宽,会增加一次反射,那是不是全程按照breakout区域走线会比较好?首先将问题进行简化,由于本身反射系数不大,第四次反射很小,假设传到RX的信号是最初的信号加上第二次反射的信号。一段长为X的阻抗不连续,对哪个频率的影响最大呢?当相位差为(2n+1)π/2