首页 理论教育 电流信号FPGA数字滤波优化方案

电流信号FPGA数字滤波优化方案

时间:2023-06-15 理论教育 版权反馈
【摘要】:对于高频噪声的滤除,可以采用RLC网络的模拟滤波器或者基于数字信号处理的数字滤波器。为了简化电路,本章采用在FPGA中实现电流信号的低通数字滤波。在每个2阶滤波器中需要5个乘法器,由于系统的采样电流共有4路,所以如果不对乘法器复用,整个电流滤波系统共需要60个数字乘法器。整个2阶IIR滤波器中只有一个乘法器,所以整个系统中用于电流滤波器中的乘法器个数为12个,极大地减少了FPGA乘法器资源的负担。图7.26IIR滤波器的FPGA结构

电流信号FPGA数字滤波优化方案

电流信号的A/D采集通道中通常存在着干扰信号,其中最主要的干扰信号是PWM的高频干扰和高频噪声。对于高频噪声的滤除,可以采用RLC网络的模拟滤波器或者基于数字信号处理数字滤波器。为了简化电路,本章采用在FPGA中实现电流信号的低通数字滤波。

数字滤波器一般由寄存器、延时器、加法器乘法器等基本数字电路实现。数字滤波器根据对脉冲响应的不同分为无限长脉冲响应滤波器(IIR滤波器)和有限长脉冲响应滤波器(FIR滤波器)[11]。这两种滤波器用差分形式和系统函数形式分别可以表示为

式中,X(n)为数字滤波器的输入信号,Y(n)为数字滤波器的输出信号。当M>0时,M就是IIR滤波器的阶数,也是系统中反馈环的个数,反馈环节的存在使IIR滤波器的脉冲响应为无限长。当ak都为零,即A(z)为零时,则系统的脉冲响应长度为N+1,此时为FIR滤波器。

FIR滤波器的结构和IIR滤波器的结构如图7.25所示。显然FIR滤波器的结构简单,而且系统稳定性好,但是为了实现一定性能要求的低通滤波器需要消耗大量的乘法器,这对乘法器数量有限的FPGA来说是个不小的负担,所以在此采用IIR滤波器。IIR滤波器可以在较低的阶数下实现比同等阶数的FIR更好的滤波性能。(www.xing528.com)

在MATLAB中根据该参数设计出对应的巴特沃思模拟滤波器,然后根据脉冲响应不变法将模拟滤波器变换成数字滤波器,得到6阶的IIR低通滤波器。为了系统的稳定,将6阶滤波器降阶成3个2阶滤波器。在每个2阶滤波器中需要5个乘法器,由于系统的采样电流共有4路,所以如果不对乘法器复用,整个电流滤波系统共需要60个数字乘法器。FPGA中乘法器数量有限,而且整个控制系统的其他功能模块也需要运用乘法器。所以在此处对每一个2阶IIR滤波器的乘法器进行复用。进行乘法器复用后的2阶IIR滤波器的结构如图7.26所示。其中mult_ctrl模块控制着整个滤波器的运算时序,在特定时刻选择合适的数据输入乘法器中,并且控制从乘法器中输出的数据,使相应乘法器的结果保存到特定的输出寄存器中,以备IIR滤波器的反馈和用于下级2阶滤波器。整个2阶IIR滤波器中只有一个乘法器,所以整个系统中用于电流滤波器中的乘法器个数为12个,极大地减少了FPGA乘法器资源的负担。

图7.25 FIR和IIR滤波器结构图

(a)FIR滤波器y(n)=∑h(k)x(n-k);(b)IIR滤波器y(n)=∑b(k)x(n-k)-∑a(m)y(n-m)。

图7.26 IIR滤波器的FPGA结构

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈