我们身处的时代崇尚“越大越好”,但这一至理名言也许并不适用于FIR滤波器长度。
DSP支持的滤波器长度通常为1024点(tabs),有些高达4096点。为什么人们不想要或不需要长度更长的FIR滤波器?如果生厂商在DSP中引入8192点的FIR滤波器,人们会舍弃竞争产品而选择它吗?
频率越低,时间越长
首先,我们需要一份用于练习和实验的文件。可使用扬声器的测量数据,但稍微简单的文件更易于帮助我们发现重要的点。
请查看图1作为参考。我在FIRCapture软件中创建该系列提升滤波器(分离的以一个倍频程为带宽的对称均衡器)并保存为WAV文件。可通过任何9段参量均衡器轻松创建此响应。
我选择Q=6以最大化减少滤波器之间的重叠。这一组滤波器又构成了一个滤波器,它与扬声器的响应并无二致,更别提在最高频和最低频处必不可少的高通和低通响应了。如果这就是一个扬声器的响应(让我们假设如此),我们将希望对凸起部分进行均衡处理,以获得整体较为平坦的响应。通过该文件,我们可以很好地考察FIR滤波器的频率解析度。
频域视图显示频率响应的振幅、相位和群延时。请注意,相位和群延时是两种不同的方式,显示信号通过时,滤波器如何改变其时间行为。由于相位是相对的,因此每个凸起的相位行为都相同。
在之前的文章中我演示过,一个带通滤波器的最小相位响应首先呈正向,然后在滤波器的中心频率回到原点,最后为负向。这个相位偏移将使得通过滤波器的信号产生与频率相关的振铃现象(Ringing)。振铃现象持续的时间由群延时图显示。
图2是该滤波器的频域/时域综合图。图3显示了每个分离倍频程的中心频率的波长。二者有何相关?由于声速约为1英尺/毫秒(ft/ms),每个倍频程的中心频率波长大约等同于一周期所需时间。波长的概念以十分形象的方式显示声波与时间和空间有关,而滤波器的响应也是如此。
群延时(GD)与滤波器的频率波长成正比关系,频率越低,群延时越长。单从名称来看,似乎指的是信号通过滤波器所造成的延时,这有点误导人。滤波器的储存属性造成了振铃现象,即信号中增加了多余周期。
群延时显示了提升滤波器占据的时长。低频凸起具有很长的振铃,这不足为奇。群延时与滤波器频率成反比(与波长成正比),相位偏移相等时,频率越低,群延时越长。
为方便演示,我们以图4所示的信号处理链路为例。我们输入一个测试信号,看看将发生什么。图5为2通道示波器显示的结果。蓝色轨迹为1000Hz 6.5周期的小波。这是Don Keele测试信号中的一个。红色轨迹为此信号通过一个1000 Hz提升滤波器之后的结果。请注意,原信号和通过滤波处理的信号相位一致,但是经过滤波器的信号周期增加了。这是在时域观察的振铃现象。一个削减滤波器的振铃现象将占据同等时长。