分数倍内插(farrow)滤波器

分数倍采样率转换:

在工程中,输入采样率和输出采样率不都是整数倍关系,常常出现分数倍采样率的转换(如音频采样率44.1KHz转换到48KHz等)。分数倍采样率的实现方法有很多,法罗滤波器便是其中一种实现,法罗滤波器由于其结构简单,易于实现,在采样率转换的应用中经常使用,常见的如音频采样率转换、基带信号处理等等。

法罗滤波器的结构:

这里,只总结相关的实现方法,不需要对法罗滤波器的原理有很深的认识,有需要仔细了解分数内插原理的话可以阅读多采样率数字信号处理相关的资料。

在分数内插过程中,常用P表示滤波器的内插因子,Q表示抽取因子,

因此,

        输出采样率=输入采样率*P/Q;

P>Q则是内插,P<Q则是抽取。

法罗滤波器是一种多相滤波器,其的核心思想就是对原型滤波器系数进行重组。

滤波器组重组示意图

假设,原型滤波器的系数为a,...t,插值因子P=5,抽取因子Q=3。输出滤波器相位步进为Q。

500Hz单音信号5/3倍插值频谱

调节原型滤波器的阶数、通带纹波、带外衰减等参数可以优化滤波后效果。为了提高内插精度,比如从3.123KHz插值到5KHz,最简单的做法就是通过适当增加原型滤波器的阶数,同时,增加多相滤波器的子滤波器的个数(相数)。

后记:

由于该结构非常适合FPGA实现,只需要在数据输入加一级缓存(FIFO/RAM),随后根据相位选择进行滤波即可。

Matlab的仿真如下:http://www.pudn.com/Download/item/id/1236522.html

音频重采样的Verilog代码:https://download.csdn.net/download/kemi450/11227136

猜你喜欢

转载自blog.csdn.net/kemi450/article/details/90268822