信号完整性之“过冲“(振铃)深度分析

 信号在传输的过程当中,每每不是标准的矩形波信号,尤为在高速信号中,保证信号的完整性是十分重要的,影响信号完整性最主要的因素之一,就是阻抗不匹配,一般表如今传输线上,而阻抗不匹配直接致使信号的反射,反射信号与原始信号叠加,就会产生过冲、回沟、台阶等信号完整性问题。本文将主要对因传输线阻抗不匹配致使信号产生过冲(上冲overshoot、下冲undershoot)进行深度分析,并提出部分可行的解决方案。ide

1、过冲的定义spa

  过冲是振铃的一部分,信号电平发生跳变后,第一个峰值电压或谷值电压超过设定的标准电压,主要表现为一个尖端脉冲。3d

  通常描述过冲的影响,主要考虑:过冲的最大幅值、过冲的持续时间、过冲的发生频率这三个要素。excel

 

2、过冲和振铃的危害code

  一、当过冲幅值较大或持续时间较长时,可能回致使电路元器件的失效;blog

  二、振铃产生的电压波动,可能回屡次跨越逻辑电平的电压阈值,形成接收端的误判ci

 

3、过冲产生缘由io

  本质缘由是:传输线阻抗不匹配形成信号的反射,多个反射信号和原信号叠加致使过冲和振铃。class

一、反射及反射系数cli

  以下图所示,设区域1阻抗为Z1,区域2阻抗为Z2,信号通过两个阻抗不一样的区域,在交界处A处,电压和电流不能产生突变(若电压不连续,将产生无穷大的电场;若电流不连续,将产生无穷大的磁场)。                 

 

 

 

 

 

 

  

  若Z1 ≠ Z2,则关系式 V1 =I1 ×Z1 ;  V2 =I2 ×Z2   没法同时知足电压和电流连续的条件V1 = V2,I1 = I2 ,故只能从电磁波反射的角度进行分析,以下所示。

  信号由区域1往区域2传输的过程当中,入射(incident)信号、反射信号(reflect)、传输信号(transfer)分别以下图表示:

               

   分界面两侧的电压相等,有 Vinc + Vref = Vtra  ;

   分界面两侧的电流相等,有Iinc - Iref = Itra     ;

   再有 Iinc  × Z1 = Vinc    ;Iref  × Z1 = Vref    ;Itra × Z1 = Vtra    ;

   由以上5个等式能够推导得出:

 

              

 

 

 

二、创建传输模型

 

 

 

 

 

 

  通常理想状况下,末端接收端的输入阻抗无穷大,源端输出端的输出阻抗趋近于0。设源端串接的匹配电阻阻抗为Rs,传输线(即PCB走线)阻抗为Rz。

   信号在线上由A往B传送时,在B点信号的反射系数为1,即全反射;

  由B往A传送时,在A点信号的反射系数为 (Rs-Rz)/(Rs+Rz)。

 

三、展开时间轴,计算实时反射波形

下面举个栗子

  设传输线阻抗Rz=30Ω,源端串接的匹配电阻Rs=10Ω,则传输线左端A点反射系数为 (10 - 30)/(10 + 30) = -0.5,右端B点反射系数为 (+∞ - 30)/(+∞ + 30) = 1。

  设初始状态都为低电平0.0V,T0时刻源端跳变为3.3V,发送逻辑高电平信号,末端B点的电压变化以下。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  T1时刻,因为电阻分压,传输线左端A点电压为3.3*30/(10+40)=2.475V,抽象理解为T1时刻有一个+2.475V的信号在传输线上向B点传播;

  T2时刻,该信号在B点产生全反射(反射系数为1),T2时刻B点电压为原始信号、入射信号、反射信号的叠加,即0+2.475+2.475 = 4.95V;

  T3时刻,末端的一次反射信号到达A点,因为阻抗不匹配,反射电压为2.475 * (-0.5)=-1.2375V,此时A点电压也为原始信号、入射信号、反射信号的叠加;

  T4时刻,源端的一次反射信号到达B点,同理计算末端B点电压为4.95-1.2375-1.2375 = 2.475V;

  T5时刻,末端的二次反射信号到达A点........

  T6时刻,源端的二次反射信号达到B点,如上图所示计算B点电压为 3.7125V

  .......................................................................

  在理想状况(无损传输)下,信号会在传输线A、B两端无休止的反射振荡,反射电压的幅值愈来愈趋近于0,在实际中信号在传输过程当中有衰减,最终趋于稳态。

  下面我计算了约50多个数据,反应末端B点的电压变化,以下图所示:(左图为理论数据计算做图,右图为示波器测得实际波形) 


                   

   由以上理论推导和数据可知,当源端信号发生跳变后,因为阻抗不匹配,末端会产生多个超过或低于指望电平的脉冲,这就是振铃现象,第一个脉冲就是过冲。

   在下写了一小段C语言代码用于生成数据,copy到excel绘制散点图,代码以下:

 1 #include <stdio.h>
 2 #define DataNum 100    //100个数据模拟波形
 3 #define StartNum 30    //30个起始数据,方便对比
 4 int main()
 5 {
 6     //系统初始条件,参数可改
 7     float SourceRes=10.0;//源端电阻
 8     float LineRes=30.0;//传输线电阻
 9     float StartVoltage=0.0;//初始电平
10     float TailVoltage=3.3;//跳变后电平
11 
12     float ReflectTail = 1.0;//末端反射系数,    假设接收端输入阻抗无穷大,为全反射
13     float ReflectSource;//源端反射系数
14     float StartTransferVoltage;
15     float VoltageReflectSource;
16     float OutputData[DataNum]={0};
17     int i,j;
18     ReflectSource = (SourceRes-LineRes)/(SourceRes+LineRes);//计算源端反射系数
19     VoltageReflectSource = (TailVoltage-StartVoltage)*LineRes/(SourceRes+LineRes);//计算传输线起始端电压
20 
21     for(i=0;i<StartNum;i++)//添加初始数据
22         OutputData[i]=StartVoltage;
23     for(;i<DataNum;i++)//开始计算保存数据
24     {
25         OutputData[i] = OutputData[i-1] + (VoltageReflectSource + VoltageReflectSource*ReflectTail);
26         VoltageReflectSource *= (ReflectSource*ReflectTail);
27     }
28     for(j=0;j<DataNum;j++)//输出数据用于Excel绘图
29         printf("%f\r\n",OutputData[j]);
30     system("pause");
31     return 0;
32 }
View Code

 

四、改变阻抗匹配条件对比分析波形

  经过改变源端匹配电阻 Rs 的阻值,获得以下一部分模拟数据

       

 

       

 

  能够发现,当源端电阻小于传输线电阻时,信号变化比较快(上升时间较短),可是会伴随着过冲的产生,影响信号的完整性;

  当源端电阻大于传输线电阻时,信号上升相对比较平缓,能有效解决过冲问题,可是增大了上升时间,限制了信号的传输速度;

  只有当源端电阻和传输线电阻相等时(即阻抗匹配状态),信号质量最接近理想状态。

     注:当源端电平发生由1到0的负跳变时,分析方法同上,这里再也不重复阐述,用于生成模拟数据的代码仍然可用

 

 

4、解决方案

  一、减少驱动端的输出电流

  二、端接电阻进行阻抗匹配,本质上是消除信号路径端点的阻抗突变

    大多数状况下在源端串联一个匹配电阻,使传输线阻抗与源端阻抗匹配,在PCB走线时,该电阻尽量靠近源端器件的输出管脚;

    也有部分状况在末端并联一个匹配电阻到电源或地,以消除信号在末端的一次反射,但这种方式增大了电路的功耗,通常不建议采用;

  三、增长TVS二极管限制峰值

相关文章
相关标签/搜索