• 设为首页
  • 收藏本站
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    查看: 1853|回复: 2

    [技术文章] 信号完整性中信号上升时间与带宽研究

    [复制链接]

    该用户从未签到

    98

    主题

    293

    回帖

    885

    积分

    二级逆天

    山雨欲来风满楼

    积分
    885

    社区居民新人进步奖终身成就奖

    QQ
    发表于 2014-4-26 10:13:13 | 显示全部楼层 |阅读模式
    信号完整性中信号上升时间与带宽研究


      本文就谈谈一个基础概念:信号上升时间和信号带宽的关系。
      对于数字电路,输出的通常是方波信号。方波的上升边沿非常陡峭,根据傅立叶分析,任何信号都可以分解成一系列不同频率的正弦信号,方波中包含了非常丰富的频谱成分。
      抛开枯燥的理论分析,我们用实验来直观的分析方波中的频率成分,看看不同频率的正弦信号是如何叠加成为方波的。首先我们把一个1.65v的直流和一个100MHz的正弦波形叠加,得到一个直流偏置为1.65v的单频正弦波。我们给这一信号叠加整数倍频率的正弦信号,也就是通常所说的谐波。3次谐波的频率为300MHz,5次谐波的频率为500MHz,以此类推,高次谐波都是100MHz的整数倍。图1是叠加不同谐波前后的比较,左上角的是直流偏置的100MHz基频波形,右上角时基频叠加了3次谐波后的波形,有点类似于方波了。左下角是基频+3次谐波+5次谐波的波形,右下角是基频+3次谐波+5次谐波+7次谐波的波形。这里可以直观的看到叠加的谐波成分越多,波形就越像方波。
      图1
      
    file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtmlclip1/01/clip_image002.jpg
      因此如果叠加足够多的谐波,我们就可以近似的合成出方波。图2是叠加到217次谐波后的波形。已经非常近似方波了,不用关心角上的那些毛刺,那是著名的吉博斯现象,这种仿真必然会有的,但不影响对问题的理解。这里我们叠加谐波的最高频率达到了21.7GHz。
      图2
      
    file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtmlclip1/01/clip_image004.jpg
      上面的实验非常有助于我们理解方波波形的本质特征,理想的方波信号包含了无穷多的谐波分量,可以说带宽是无限的。实际中的方波信号与理想方波信号有差距,但有一点是共同的,就是所包含频率很高的频谱成分。
      现在我们看看叠加不同频谱成分对上升沿的影响。图3是对比显示。蓝色是基频信号上升边,绿色是叠加了3次谐波后的波形上升边沿,红色是基频+3次谐波+5次谐波+7次谐波后的上升边沿,黑色的是一直叠加到217次谐波后的波形上升边沿。
      图3
      
    file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtmlclip1/01/clip_image006.jpg
      通过这个实验可以直观的看到,谐波分量越多,上升沿越陡峭。或从另一个角度说,如果信号的上升边沿很陡峭,上升时间很短,那该信号的带宽就很宽。上升时间越短,信号的带宽越宽。这是一个十分重要的概念,一定要有一个直觉的认识,深深刻在脑子里,这对你学习信号完整性非常有好处。
      这里说一下,最终合成的方波,其波形重复频率就是100MHz。叠加谐波只是改变了信号上升时间。信号上升时间和100MHz这个频率无关,换成50MHz也是同样的规律。如果你的电路板输出数据信号只是几十MHz,你可能会不在意信号完整性问题。但这时你想想信号由于上升时间很短,频谱中的那些高频谐波会有什么影响?记住一个重要的结论:影响信号完整性的不是波形的重复频率,而是信号的上升时间。
    本文的仿真代码很简单,我把代码贴在这里,你可以自己在matlab上运行一下看看。
      clc; clear all; pack;
      Fs = 10e9;
      Nsamp = 2e4;
      t = [0:Nsamp-1].*(1/Fs);
      f1 = 1e6;
      x0 = 3.3/2;
      x1 = x0 + 1.65*sin(2*pi*f1*t);
      x3 = x0;
      for n=1:2:3
      x3 = x3 + 3.3*2/(pi*n) * sin(2*pi*n*f1*t);
      end
      x5 = x0;
      for n=1:2:5
      x5 = x5 + 3.3*2/(pi*n) * sin(2*pi*n*f1*t);
      end
      x7 = x0;
      for n=1:2:7
      x7 = x7 + 3.3*2/(pi*n) * sin(2*pi*n*f1*t);
      end
      figure
      subplot(221)
      plot(x1)
      subplot(222)
      plot(x3)
      subplot(223)
      plot(x5)
      subplot(224)
      plot(x7)
      x217 = x0;
      for n=1:2:217
      x217 = x217 + 3.3*2/(pi*n) * sin(2*pi*n*f1*t);
      end
      figure
      plot(x217)
      figure
      plot(x217,'k')
      hold on
      plot(x1,'b')
      plot(x3,'g')
      plot(x7,'r')
      hold off
      axis([8000 12000 -0.5 4])

    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 20:45
  • 签到天数: 164 天

    [LV.7]常住居民III

    32

    主题

    1万

    回帖

    3万

    积分

    三级逆天

    积分
    34545

    终身成就奖特殊贡献奖原创先锋奖社区居民忠实会员社区劳模最爱沙发原创达人优秀斑竹奖宣传大使奖

    QQ
    发表于 2014-4-26 12:25:55 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-9-27 09:50
  • 签到天数: 2 天

    [LV.1]初来乍到

    5

    主题

    2233

    回帖

    2148

    积分

    二级逆天

    积分
    2148

    社区居民终身成就奖优秀斑竹奖

    QQ
    发表于 2014-6-19 15:59:15 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    公告:服务器刚移机,
    大家请不要下载东西。
    会下载失败


    QQ 手机版 小黑屋 监管台 遇到问题请联系QQ1308068381 逆天PCB论坛

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表