CN115865044A - 支持浮点系数的定点iir滤波器和电子设备 - Google Patents
支持浮点系数的定点iir滤波器和电子设备 Download PDFInfo
- Publication number
- CN115865044A CN115865044A CN202211524213.5A CN202211524213A CN115865044A CN 115865044 A CN115865044 A CN 115865044A CN 202211524213 A CN202211524213 A CN 202211524213A CN 115865044 A CN115865044 A CN 115865044A
- Authority
- CN
- China
- Prior art keywords
- multiplier
- coefficient
- register
- output
- adder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本申请实施例公开一种支持浮点系数的定点IIR滤波器和电子设备,涉及数字信号处理领域。对现有的定点IIR滤波器的硬件结构的基础上增加相关器件,通过对浮点系数的缩放在定点IIR滤波器中实现利用浮点系数进行IIR滤波,具有运算速度快耗时短等优点,相对于浮点IIR滤波器不会降低运算速度,也能利用现有的定点IIR滤波器进行兼容设计,减少硬件成本和设计成本。
Description
技术领域
本发明涉及数字信号处理领域,尤其涉及一种支持浮点系数的定点IIR滤波器和电子设备。
背景技术
在数字电路中,数字信号的滤波和反馈控制离不开滤波器,而由于IIR(InfiniteImpulse Response,无限脉冲响应)滤波器既可以对信号进行低通、高通、带通、带阻滤波,还可以替代数字控制里的经典PID控制、零极点补偿控制,应用越来越广泛。但通常IIR滤波器的滤波系数(分子系数和分母系数)的数据类型都是浮点型,这就要求IIR滤波器能够支持浮点运算,而且对浮点运算处理能力有较高的要求;但是在实际的应用场景中会使用不支持浮点运算的IIR滤波器,然而IIR滤波器是不支持浮点系数。
发明内容
本申请实施例提供了的IIR滤波器和电子设备,可以解决相关技术中定点IIR滤波器不支持浮点系数的问题。所述技术方案如下:
第一方面,本申请实施例提供了一种支持浮点系数的定点IIR滤波器,包括:
数据输入端、分子缩放系数寄存器、分母缩放系数寄存器、反馈缩放系数寄存器、输出缩放系数寄存器、数据输出端、分子系数寄存器R0~分子系数寄存器Rn、乘法器A0~乘法器An、乘法器B0~乘法器Bn、加法器C0~加法器Cn、延时器D0~延时器Dn-1、乘法器E1~乘法器En、乘法器F1~乘法器Fn、分母系数寄存器S1~分母系数寄存器Sn、第一除法器M1、第二除法器M2、限幅器M2;n为大于1的整数;所述分子系数寄存器R0~分子系数寄存器Rn分别用于存储浮点分子系数,所述分母系数寄存器S1~分母系数寄存器Sn分别用于存储浮点分母系数;
其中,所述输入端分别与乘法器B0~乘法器Bn的第一输入端相连;
所述分子缩放系数寄存器分别与乘法器A0~乘法器An的第一输入端相连;
所述分母缩放系数寄存器分别与乘法器F1~乘法器Fn的第一输入端相连;
分子系数寄存器R0~分子系数寄存器Rn与乘法器A0~乘法器An的第二输入端采用一对一的方式相连;
乘法器A0~乘法器An的输出端与乘法器B0~乘法器Bn的第二输入端采用一对一的方式相连;
乘法器B0~乘法器Bn的输出端与加法器C0~加法器Cn的第一输入端采用一对一的方式相连;
延时器D0~延时器Dn-1的输出端与加法器C0~加法器Cn-1的第二输入端采用一对一的方式相连;
乘法器E1~乘法器En-1的输出端与加法器C1~加法器Cn-1的第三输入端采用一对一的方式相连;
加法器C0的输出端与第一除法器M1的被除数端相连,第一除法器的除数端与反馈缩放系数寄存器相连,所述第一除法器的输出端与限幅器的输入端相连;所述限幅器的输出端与所述第二除法器的被输出端相连,且所述限幅器的输出端分别与乘法器E1~乘法器En的第一输入端相连;所述第二除法器的除数端与输出缩放系数寄存器相连,所述第二除法器的输出端与所述数据输出端相连;
加法器Cn的第二输入端与乘法器En的输出端相连,加法器Cn的输出端与延时器Dn-1的输入端相连;
乘法器F1~乘法器Fn的输出端与乘法器E1~乘法器En的第二输入端采用一对一的方式相连;
分母系数寄存器S1~分母系数寄存器Sn与乘法器F1~乘法器Fn的第一输入端采用一对一的方式相连。
第二方面,本申请提供了一种电子设备,包括:包括上述的IIR滤波器。
本申请一些实施例提供的技术方案带来的有益效果至少包括:
在现有的定点IIR滤波器的结构的基础上,增加分子缩放系数寄存器、分母缩放系数寄存器、反馈缩放系数寄存器、输出缩放系数寄存器、乘法器A0~乘法器An、乘法器F1~乘法器Fn、第一除法器M1、第二除法器M2、限幅器M2,通过对浮点系数的缩放实现在定点IIR滤波器中实现利用浮点系数进行IIR滤波,具有运算速度快耗时短等优点,相对于浮点IIR滤波器不会降低运算速度,也能利用现有的定点IIR滤波器进行兼容设计,减少硬件成本和设计成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的n阶IIR滤波器的结构示意图;
图2是本发明实施例提供的4阶IIR滤波器的结构图;
图3是本发明实施例提供的数值区间的分布示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明提供实施例的一种IIR滤波器的结构示意图,IIR滤波器包括:。
数据输入端1、分子缩放系数寄存器2、分母缩放系数寄存器3、反馈缩放系数寄存器4、输出缩放系数寄存器5、数据输出端6、分子系数寄存器R0~分子系数寄存器Rn、乘法器A0~乘法器An、乘法器B0~乘法器Bn、加法器C0~加法器Cn、延时器D0~延时器Dn-1、乘法器E1~乘法器En、乘法器F1~乘法器Fn、分母系数寄存器S1~分母系数寄存器Sn、第一除法器M1、第二除法器M2、限幅器M2;n为大于1的整数。
乘法器用于执行乘法运算,加法器用于执行加法运算,寄存器用于存储相关数据,除法器用于执行触发运算,延时器用于执行延时处理,即暂存上一次数据,限幅器用于限制输出数据的数值范围。上述的各个器件均为数字器件。
其中,IIR滤波器可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable GateArray,FPGA)、可编程逻辑阵列(ProgrammableLogicArray,PLA)中的至少一种硬件形式来实现。
IIR滤波器包括的各个部件的连接关系为:
乘法器B0~乘法器Bn共计有n+1个乘法器,每个乘法器设置有第一输入端、第二输入端和输出端。本申请的数据输入端分别与乘法器B0~乘法器Bn的第一输入端相连。
分子缩放系数寄存器用于存放第一缩放系数,分子缩放系数寄存器分别与乘法器A0~乘法器An的第一输入端相连。
分母缩放系数寄存器用于存放第二缩放系数,分母缩放系数寄存器分别与乘法器F1~乘法器Fn的第一输入端相连,
分子系数寄存器R0~分子系数寄存器Rn与乘法器A0~乘法器An的第二输入端采用一对一的方式相连,分子系数寄存器R0~分子系数寄存器Rn分别用于存储浮点分子系数:F_b0~F_bn,分子系数寄存器R0与乘法器A0的第二输入端相连、分子系数寄存器R1与乘法器A1的第二输入端相连、…、分子系数寄存器Rn与乘法器An的第二输入端相连。
乘法器A0~乘法器An的输出端与乘法器B0~乘法器Bn的第二输入端采用一对一的方式相连,即乘法器A0的输出端与乘法器B0的第二输入端相连、乘法器A1的输出端与乘法器B1的第二输入端相连、…、乘法器An的输出端与乘法器Bn的第二输入端相连。
乘法器B0~乘法器Bn的输出端与加法器C0~加法器Cn的第一输入端采用一对一的方式相连,即乘法器B0的输出端和加法器C0的第一输入端相连、乘法器B1的输出端和加法器C1的第一输入端相连、…、乘法器Bn的输出端和加法器Bn的第一输入端相连。
延时器D0~延时器Dn-1的输出端与加法器C0~加法器Cn-1的第二输入端采用一对一的方式相连,即延时器D0的输出端与加法器C0的第二输入端相连、延时器D1的输出端与加法器C1的第二输入端相连、…、延时器Dn-1的输出端与加法器Cn-1的第二输入端相连。
乘法器E1~乘法器En-1的输出端与加法器C1~加法器Cn-1的第三输入端采用一对一的方式相连。
加法器C0的输出端与第一除法器M1的被除数端相连,第一除法器的除数端与反馈缩放系数寄存器相连,第一除法器的输出端与限幅器的输入端相连;限幅器的输出端与第二除法器的被输出端相连,且限幅器的输出端分别与乘法器E1~乘法器En的第一输入端相连;第二除法器的除数端与输出缩放系数寄存器相连,第二除法器的输出端与数据输出端相连。
加法器Cn的第二输入端与乘法器En的输出端相连,加法器Cn的输出端与延时器Dn-1的输入端相连。
乘法器F1~乘法器Fn的输出端与乘法器E1~乘法器En的第二输入端采用一对一的方式相连,分母系数寄存器S1~分母系数寄存器Sn与乘法器F1~乘法器Fn的第一输入端采用一对一的方式相连,分母系数寄存器S1~Sn分别用于存储浮点分母系数:F_a1~F_an。
本申请的IIR滤波器的工作过程包括:
根据n阶IIR滤波器的性能指标生成浮点分子系数F_b0~F_bn和浮点分母系数F_a1~F_an,例如:根据低通滤波、高通滤波、带通滤波或带阻滤波的性能指标,调用MATLABLE的fdatool工具生成上述的浮点分母系数和浮点分子系数,浮点分母系数属于n阶IIR滤波器的传输函数的分母,浮点分子系数属于n阶IIR滤波器的传输函数的分子。浮点分子系数和浮点分母系数的数据类型为浮点型。处理器将生成的浮点分子系数F_b0~F_bn分别写入到分子系数寄存器R0~Rn中,以及将生成的浮点分母系数F_a1~F_an分别写入到分母系数寄存器S1~Sn中。其中,浮点分母系数F_a0=1。
然后,在数据输入端1输入待处理数据。利用乘法器A0~An,将分子缩放系数寄存器2中存储分子缩放系数2bx_coef_bit的分别与浮点分子系数F_b0~F_bn进行相乘得到定点分子系数:Q_b0~Q_bn。以及利用乘法器F1~Fn,将分母缩放系数寄存器3中存储的2ax_coef_bit分别与浮点分母系数F_a1~F_an进行相乘得到定点分母系数F_a1~F_an。定点分子系数和定点分母系数的数据类型为定点型。
对于加法器C0的输出结果,第一除法器M1将该输出结果除以反馈缩放系数寄存器4中存放的反馈缩放系数2feedback_bit得到商值,然后利用限幅器Q1对该商值进行限幅处理,第二除法器M2将限幅处理后的结果除以输出缩放系数寄存器5中存储的输出缩放系数2fscale_o_bit得到IIR滤波器的输出数据,通过数据输出端7输出该输出数据。
举例来说,参见图2所示的IIR滤波器的结构示意图,n=4,图3中的IIR寄存器省略了分子系数寄存器R0~R4、乘法器A0~A4、乘法器F1~F4、分母系数寄存器S1~S4。数据输入端输入16bit的待处理数据,生成的5个定点分子系数为F_b0~F_b4,4个定点分母系数为F_a1~F_a4,上述系数均为16bit。然后再加法器C0输出60bit的输出结果,第一除法器M1将该输出结果除以反馈缩放系数寄存器4中存放的反馈缩放系数Q_feedback得到商值,然后利用限幅器Q1对该商值进行限幅处理,第二除法器M2将限幅处理后的结果除以输出缩放系数寄存器5中存储的输出缩放系数Q_scaleO得到IIR滤波器的输出数据,通过数据输出端7输出该24bit的输出数据,实现IIR滤波器的定点运算。
进一步的,本申请实施例中,处理器还可以根据不同需求,在多个系数集中为IIR滤波器选择对应的系数集,然后将系数集中的各个系数配置到IIR滤波器中,以适应不同运算场景。各个系数集包括分子缩放系数、分母缩放系数、n+1浮点分子系数、n个浮点分母系数、反馈缩放系数和输出缩放系数。
可选的,选择的系数集与输入的待处理数据的大小有关,在IIR滤波器处理该待处理数据之前,确定待处理数据所在的数值区间,然后查询该数值区间在多个系数集中对应的目标系数集,将目标系数集配置到IIR滤波器中的寄存器中。
例如:参见图3所示的数值区间分布示意图,本申请预配置有4个系数集:g0、g1、g2、g3,当|Din|>L3,选择系数集g3对IIR滤波器进行配置;当|Din|∈[L2,L23],选择系数集g2对IIR滤波器进行配置;当|Din|∈[L1,L12],选择系数集g1对IIR滤波器进行配置;当|Din|∈[0,L0],选择系数集g0对IIR滤波器进行配置。其中,L3>L2>L1>L0。
进一步的,L12和L23根据如下的任意一种公式来确定:
本申请实施例的硬件架构,在现有的定点IIR滤波器的结构的基础上,增加分子缩放系数寄存器、分母缩放系数寄存器、反馈缩放系数寄存器、输出缩放系数寄存器、乘法器A0~乘法器An、乘法器F1~乘法器Fn、第一除法器M1、第二除法器M2、限幅器M2,通过对浮点系数的缩放实现在定点IIR滤波器中实现利用浮点系数进行IIR滤波,具有运算速度快耗时短等优点,相对于浮点IIR滤波器不会降低运算速度,也能利用现有的定点IIR滤波器进行兼容设计,减少硬件成本和设计成本。
本申请实施例提供的电子设备除包括上述的控制装置之外,还可以包括:用于容纳各个部件的壳体。
以上所述的实施方式,并不构成对该技术方案保护范围的限定。任何在上述实施方式的精神和原则之内所作的修改、等同替换和改进等,均应包含在该技术方案的保护范围之内。
Claims (5)
1.一种支持浮点系数的定点IIR滤波器,其特征在于,包括:
数据输入端、分子缩放系数寄存器、分母缩放系数寄存器、反馈缩放系数寄存器、输出缩放系数寄存器、数据输出端、分子系数寄存器R0~分子系数寄存器Rn、乘法器A0~乘法器An、乘法器B0~乘法器Bn、加法器C0~加法器Cn、延时器D0~延时器Dn-1、乘法器E1~乘法器En、乘法器F1~乘法器Fn、分母系数寄存器S1~分母系数寄存器Sn、第一除法器M1、第二除法器M2、限幅器M2;n为大于1的整数;所述分子系数寄存器R0~分子系数寄存器Rn分别用于存储浮点分子系数,所述分母系数寄存器S1~分母系数寄存器Sn分别用于存储浮点分母系数;
其中,所述输入端分别与乘法器B0~乘法器Bn的第一输入端相连;
所述分子缩放系数寄存器分别与乘法器A0~乘法器An的第一输入端相连;
所述分母缩放系数寄存器分别与乘法器F1~乘法器Fn的第一输入端相连;
分子系数寄存器R0~分子系数寄存器Rn与乘法器A0~乘法器An的第二输入端采用一对一的方式相连;
乘法器A0~乘法器An的输出端与乘法器B0~乘法器Bn的第二输入端采用一对一的方式相连;
乘法器B0~乘法器Bn的输出端与加法器C0~加法器Cn的第一输入端采用一对一的方式相连;
延时器D0~延时器Dn-1的输出端与加法器C0~加法器Cn-1的第二输入端采用一对一的方式相连;
乘法器E1~乘法器En-1的输出端与加法器C1~加法器Cn-1的第三输入端采用一对一的方式相连;
加法器C0的输出端与第一除法器M1的被除数端相连,第一除法器的除数端与反馈缩放系数寄存器相连,所述第一除法器的输出端与限幅器的输入端相连;所述限幅器的输出端与所述第二除法器的被输出端相连,且所述限幅器的输出端分别与乘法器E1~乘法器En的第一输入端相连;所述第二除法器的除数端与输出缩放系数寄存器相连,所述第二除法器的输出端与所述数据输出端相连;
加法器Cn的第二输入端与乘法器En的输出端相连,加法器Cn的输出端与延时器Dn-1的输入端相连;
乘法器F1~乘法器Fn的输出端与乘法器E1~乘法器En的第二输入端采用一对一的方式相连;
分母系数寄存器S1~分母系数寄存器Sn与乘法器F1~乘法器Fn的第一输入端采用一对一的方式相连。
2.根据权利要求1所述的IIR滤波器,其特征在于,还包括:输入寄存器和输出寄存器,所述输入寄存器用于存储待处理数据,所述数据寄存器用于存储输出数据。
3.一种电子设备,其特征在于,包括权利要求1或2所述的IIR滤波器。
4.根据权利要求3所述的电子设备,其特征在于,还包括:处理器和存储器;
其中,所述处理器分别与所述存储器和所述IIR滤波器相连;
所述存储器,用于存储有多个系数集;
所述处理器,用于在执行滤波处理之前,在所述多个系数集中选择一个目标系数集,然后将目标系数集中的各个系数配置给所述IIR滤波器。
5.根据权利要求3所述的电子设备,其特征在于,所述在多个系数集中选择一个目标系数集,包括:
确定待处理数据所属的数值区间;
获取所述数值区间在所述多个系数集中对应的目标系数集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211524213.5A CN115865044A (zh) | 2022-11-30 | 2022-11-30 | 支持浮点系数的定点iir滤波器和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211524213.5A CN115865044A (zh) | 2022-11-30 | 2022-11-30 | 支持浮点系数的定点iir滤波器和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115865044A true CN115865044A (zh) | 2023-03-28 |
Family
ID=85668535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211524213.5A Pending CN115865044A (zh) | 2022-11-30 | 2022-11-30 | 支持浮点系数的定点iir滤波器和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115865044A (zh) |
-
2022
- 2022-11-30 CN CN202211524213.5A patent/CN115865044A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7284027B2 (en) | Method and apparatus for high speed calculation of non-linear functions and networks using non-linear function calculations for digital signal processing | |
McClellan | Hardware realization of a Fermat number transform | |
US4843581A (en) | Digital signal processor architecture | |
US4062060A (en) | Digital filter | |
CN113556101B (zh) | Iir滤波器及其数据处理方法 | |
JPH082014B2 (ja) | 多段デジタル・フィルタ | |
Brisebarre et al. | A lattice basis reduction approach for the design of finite wordlength FIR filters | |
CN115865044A (zh) | 支持浮点系数的定点iir滤波器和电子设备 | |
JPH11212768A (ja) | 対数値算出回路 | |
CN100550622C (zh) | 带有下采样功能的数字信号滤波装置及方法 | |
Huang et al. | Modified sliding-block distributed arithmetic with offset binary coding for adaptive filters | |
Mehendale et al. | Area-delay tradeoff in distributed arithmetic based implementation of FIR filters | |
Howal et al. | HDL implementation of digital filters using floating point vedic multiplier | |
CN114448390A (zh) | 一种Biquad数字滤波器装置及实现方法 | |
CN114389575A (zh) | 数字滤波器的生成方法、装置及数字信号处理系统 | |
US9673780B2 (en) | Multi-stage filter processing device and method | |
Damian et al. | A low area FIR filter for FPGA implementation | |
Huang et al. | Adaptive filters using modified sliding-block distributed arithmetic with offset binary coding | |
JPH0127463B2 (zh) | ||
WO1991009371A1 (en) | Random access fir filtering | |
US8041756B1 (en) | Method and apparatus for high speed calculation of non-linear functions and networks using non-linear function calculations for digital signal processing | |
CN102710237A (zh) | 一种一阶数字低通滤波方法、滤波器及电子设备 | |
JP2622962B2 (ja) | Fftアナライザのズーミング装置 | |
KR0149314B1 (ko) | 데이타 버스 구조의 멀티-채널, 멀티-스테이지의 오버 샘플링 하프 밴드 필터 | |
Arshad et al. | An fpga based architecture for moving target indication (mti) processing using iir filters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |