相关服务

  • 《现代电子技术》2007年第6期摘录:闫华等:一种用于数字音频的插值

如发现有乱码,请点击下面链接浏览原文
正文摘录:

闫华等:一种用于数字音频的插值滤遮墨遮让所示。初始第一个插入第=个.v([】)=^(O)x(O)y(2)=^(O)xO+^(1)x0+州2)“0)以1):厅(0)×O+州1)J(O)“11]。^(0)r(1)’南(1)x0’麒曲×0州3)一0.图2一个简单的插值过程L一3的示意图y(肿)(LF)图3插值多相滤波器的转换器实现模式在图3中,对z(n)每个输入抽样有L个y(优)的输出抽样。转换器从起始的顶部位置按逆时针方向旋转。2插值滤波器系数设计Matlab函数库中包括多种滤波器设计的函数,可以最大限度地满足设计指标,因此本文通过Matlab来设计滤波器的系数。为了便于滤波器的VI.SI实现,必须对滤波器的系数进行量化处理。量化误差0’的引入会对系统的频率响应产生影响.系数位宽越大所引入的误差越小。本文量化系数位宽为6位,设计中对大系数进行了处理,实际的系数位宽达到12位。这样既减小了量化误差,又减小了乘法器的位数,从而减小了芯片的面积。本文设计了8相213阶(系数补3个O)插值滤波器,其量化后的系数波形图以及幅频、相频响应如图4,图5所示。3插值滤波器Vt,SI实现插值滤波器的硬件电路主要包括,RoM(系数和控制逻辑),数据缓冲RAM,乘加运算模块以及16×数据保持电路。3.1R()M任何一种近似方法得到的滤波器系数(例如窗口方法2或最佳方法)通常都精确到小数点后几位,所以首先要将系数定点化,这样必然会引入系数量化误差。系数量化最主要的影响Ⅲ是峰值通带波纹增加和最大阻带衰减的减少,这样系数的位宽将决定误差的大小,继而影响数字滤波器的性能。系数位宽越大,所引入的量化误差越小,但这样会增加硬件消耗。本文从性能和芯片面积综合考虑,所选用的定点化系数位宽为6位。图4量化后的系数波形图5滤波器的幅频和相频响应系数定点化之后,系数的最大值和最小值之间的大小悬殊很大,在进行乘加运算时小系数的乘加在规定的字长范围内不会产生误差,而大系数的乘加则可能出现溢出,导致输出样本值发生错误。这就需要采取一定措施避免这种情况的发生。一种方法阻’是检测溢出,然后进行校正,但这种方法花费的代价可能是非常昂贵的。另一种方法是通过对系数进行伸缩(乘一个比例因子)避免或者允许限制误差。本文使用了对系数进行伸缩的方法,大系数采用两个存储单元,这样在计算时真正的系数为单元(i)×32+单元(i+1),需要两个时钟周期来完成运算。RoM中每个存储单元位宽为14位,其中低6位为系数,高8位为控制逻辑。控制逻辑包括RAM的输入输出控制、大系数标志和RAM的相对地址。将控制逻辑放入RoM中,增加了存储器的大小,但省掉了控制逻辑,使滤波器的设计更加简单。3.2乘加运算模块乘加运算模块主要完成基于2的补码的乘加。每一次相乘后,积包含的位数要比系数和输入信号都多。例如,20位输入乘以6位系数,结果为26位。乘加后的信号

阅读此文(图):   点击此处在线翻阅