一天一个信号处理小知识 2.滤波tips

引言

在做实际的工程项目的时候,由于实际硬件条件的限制,有些理论上的算法无法得到硬件很好的支持,就比如下面的这个情景:

为了在很大的一个频率范围内分析信号,那么我们需要一个采样率极高的AD,可能动辄几个G甚至更高的采样率。但是如果我们需要处理的信号是一个带宽很窄的窄带信号,就需要制作滤波器从中滤出来然后进行分析。但是在这么高的采样率的情景下,制作一个窄带滤波器非常的困难,为什么这么说,可以看下图
一天一个信号处理小知识 2.滤波tips
3GHz的采样率的情况下,想要滤出一个1MHz宽的信号,滤波器的阶数已经到了7500阶,资源消耗巨大,这在实际项目中是不可能的。

解决办法就是,通过将该信号不断的进行移到零中频,然后最后使用低阶的低通滤波器将信号滤出来。

解决方案

假设感兴趣的信号载频为1.003GHz,带宽200kHz,带宽远远小于载频,如果采用以上方法,那么滤波器阶数过高不利于实现。于是有以下解决思路:

  1. 首先将感兴趣信号所在的频段移到零频,即将1.0GHz到1.5GHz的500M带宽范围移动到零中频,这个过程中需要DDS的参与。DDS是直接数字式频率合成器的英文缩写,其作用是生成任意频率的载波,有了各种频率的载波,那么和原信号相乘就可以得到任意频移的信号。
  2. 由于原本的信号是实信号,所以其频谱一定关于0中频对称,在进行了频移之后,那么频谱的两边将会出现不需要的另一半带宽(信号虚部被砍成两半,分布在左右两边),使用低通滤波器就可以将基带信号滤出。这里的低通滤波器使用的是半带滤波器,这是一种特殊的滤波器,其系数经过精巧的设计,使得系数中有一半是0,可以很好的压缩乘法器的数量,便于硬件实现。
  3. 尽管到了这一步,由于采样率较大,此时数据量仍然较大,之前之所以要这么高的采样率是为了可以采样更大的带宽,但是由于现在感兴趣的信号被移到了低频,那么就可以适当的降低速率,就可以通过抽取,再降速,缩小感兴趣的带宽范围。
  4. 感兴趣的信号频带移到零中频之后,由于该信号实在太窄,则需要进一步的移频然后滤波,方法都和之前的没有很大差别,最终我们就可以用一个较低阶数的滤波器滤出感兴趣的信号。尽管经过了多步的频移滤波,其系统复杂度,乘法器数量还是要远远少于原本的方法的。