CN113556101B - Iir滤波器及其数据处理方法 - Google Patents

Iir滤波器及其数据处理方法 Download PDF

Info

Publication number
CN113556101B
CN113556101B CN202110854056.3A CN202110854056A CN113556101B CN 113556101 B CN113556101 B CN 113556101B CN 202110854056 A CN202110854056 A CN 202110854056A CN 113556101 B CN113556101 B CN 113556101B
Authority
CN
China
Prior art keywords
clock cycle
iir filter
clock
accumulated
result
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.)
Active
Application number
CN202110854056.3A
Other languages
English (en)
Other versions
CN113556101A (zh
Inventor
张菊
刘欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Spreadtrum Communications Shanghai Co Ltd
Original Assignee
Spreadtrum Communications Shanghai Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Spreadtrum Communications Shanghai Co Ltd filed Critical Spreadtrum Communications Shanghai Co Ltd
Priority to CN202110854056.3A priority Critical patent/CN113556101B/zh
Publication of CN113556101A publication Critical patent/CN113556101A/zh
Application granted granted Critical
Publication of CN113556101B publication Critical patent/CN113556101B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H2017/0072Theoretical filter design
    • H03H2017/009Theoretical filter design of IIR filters

Abstract

本发明提供一种IIR滤波器及其数据处理方法。该IIR滤波器包括:分时复用的乘法器、分时复用的加法器和移位操作单元,乘法器用于在连续的多个时钟周期分别根据不同的乘法系数对操作数进行乘法操作,操作数为IIR滤波器的输入数据或者IIR滤波器的输出数据;加法器用于在连续的多个时钟周期分别对两个操作数进行加法操作,在每个时钟周期,两个操作数为乘法器在当前时钟周期得到的计算结果以及加法器在设定的其他时钟周期得到的累加结果;移位操作单元用于在连续的多个时钟周期的第一个时钟周期对加法器的累加结果进行移位操作,移位操作结果作为IIR滤波器的输出数据。本发明能够降低IIR滤波器逻辑占用面积和逻辑之间连线面积。

Description

IIR滤波器及其数据处理方法
技术领域
本发明涉及滤波器技术领域,尤其涉及一种IIR滤波器及其数据处理方法。
背景技术
耳机等音频设备中的音频处理模块,基本都与滤波器有关,而且为了满足音频的性能指标,例如信噪比和谐波失真,这些音频处理模块往往是多级滤波器级联构成,且音频采样率越低,满足性能指标需要的滤波器级数越多。对于每一级滤波器,常用的是IIR(Infinite Impulse Response,无线脉冲响应)滤波器,又称递归型滤波器,即结构上带有反馈环路的滤波器。
IIR滤波器的传统实现方法是同时进行滤波器的乘法以及加法等操作,虽然节省了算法处理的时间,但是例如处理5路数据,将需要5个乘法、5个加法以及5个round&sat操作,不仅增加了组合逻辑的面积且增加了组合逻辑引起的复杂连线面积。这对于音频设备中需要大量滤波器级联的音频处理模块来说,将引起极大的芯片面积,从而降低耳机等音频设备在市场上的竞争力。
发明内容
为解决上述问题,本发明提供了一种IIR滤波器及其数据处理方法,能够降低IIR滤波器逻辑占用面积和逻辑之间连线面积。
一方面,本发明提供一种IIR滤波器,包括:
分时复用的乘法器,所述乘法器在连续的多个时钟周期具有不同的乘法系数,用于在连续的多个时钟周期的每个时钟周期分别根据不同的乘法系数对操作数进行乘法操作,乘法操作的操作数为IIR滤波器的输入数据或者IIR滤波器的输出数据;
分时复用的加法器,所述加法器用于在所述连续的多个时钟周期的每个时钟周期分别对两个操作数进行加法操作,在每个时钟周期,加法操作的两个操作数为所述乘法器在当前时钟周期得到的计算结果以及所述加法器在设定的其他时钟周期得到的累加结果;
移位操作单元,用于在所述连续的多个时钟周期的第一个时钟周期对所述加法器的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据。
可选地,还包括:
分时复用的四舍五入及高位扩展运算器,用于在每个时钟周期对所述乘法器在当前时钟周期得到的计算结果进行四舍五入计算,以及进行高位扩展计算。
可选地,还包括:
分时复用的第一饱和截位器,用于对所述加法器得到的累加结果进行饱和截位操作;
分时复用的高位扩展运算器,用于对所述第一饱和截位器得到的饱和截位操作结果进行高位扩展。
可选地,还包括:第二饱和截位器,用于对所述移位操作单元得到的移位操作结果进行饱和截位操作,饱和截位操作结果作为所述IIR滤波器的输出数据。
可选地,所述连续的多个时钟周期包括连续的第一时钟周期、第二时钟周期、第三时钟周期、第四时钟周期和第五时钟周期,
所述乘法器,用于在第一时钟周期根据第一乘法系数对IIR滤波器的输入数据进行乘法操作,得到第一待累加数;
还用于在第二时钟周期根据第二乘法系数对IIR滤波器的输入数据进行乘法操作,得到第二待累加数;
还用于在第三时钟周期根据第三乘法系数对IIR滤波器的输出数据进行乘法操作,得到第三待累加数;
还用于在第四时钟周期根据第四乘法系数对IIR滤波器的输入数据进行乘法操作,得到第四待累加数;
还用于在第五时钟周期根据第五乘法系数对IIR滤波器的输出数据进行乘法操作,得到第五待累加数;
所述加法器,用于在第一时钟周期对所述第一待累加数与第三时钟周期的累加结果进行加法操作,得到第一时钟周期的累加结果,其中第三时钟周期的累加结果是根据所述第二待累加数、所述第三待累加数、所述第四待累加数以及所述第五待累加数累加得到的;
还用于在第二时钟周期对所述第二待累加数与第五时钟周期的累加结果进行加法操作,得到第二时钟周期的累加结果,其中第五时钟周期的累加结果是根据所述第四待累加数以及所述第五待累加数累加得到的;
还用于在第三时钟周期对所述第三待累加数与第二时钟周期的累加结果进行加法操作,得到第三时钟周期的累加结果;
还用于在第四时钟周期对所述第四待累加数与初始累加数进行加法操作,得到第四时钟周期的累加结果,所述初始累加数为0;
还用于在第五时钟周期对所述第五待累加数与第四时钟周期的累加结果进行加法操作,得到第五时钟周期的累加结果;
所述移位操作单元,用于对所述第一时钟周期的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据。
另一方面,本发明提供一种IIR滤波器的数据处理方法,包括:
在连续的多个时钟周期的每个时钟周期,分时复用的乘法器分别根据不同的乘法系数对操作数进行乘法操作,乘法操作的操作数为IIR滤波器的输入数据或者IIR滤波器的输出数据,之后,分时复用的加法器分别对两个操作数进行加法操作,加法操作的两个操作数为所述乘法器在当前时钟周期得到的计算结果以及所述加法器在设定的其他时钟周期得到的累加结果;
其中,在所述连续的多个时钟周期的第一个时钟周期,移位操作单元对所述加法器在所述第一个时钟周期的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据。
可选地,所述方法还包括:
在所述连续的多个时钟周期的每个时钟周期,分时复用的四舍五入及高位扩展运算器对所述乘法器在当前时钟周期得到的计算结果进行四舍五入计算,以及进行高位扩展计算。
可选地,所述方法还包括:
在所述连续的多个时钟周期的至少两个时钟周期,分时复用的第一饱和截位器对所述加法器得到的累加结果进行饱和截位操作,之后分时复用的高位扩展运算器对所述第一饱和截位器得到的饱和截位操作结果进行高位扩展。
可选地,所述方法还包括:
在所述连续的多个时钟周期的第一个时钟周期,第二饱和截位器对所述移位操作单元得到的移位操作结果进行饱和截位操作,饱和截位操作结果作为所述IIR滤波器的输出数据。
可选地,所述连续的多个时钟周期包括连续的第一时钟周期、第二时钟周期、第三时钟周期、第四时钟周期和第五时钟周期,所述方法包括:
在第一时钟周期,所述乘法器根据第一乘法系数对IIR滤波器的输入数据进行乘法操作,得到第一待累加数,之后所述加法器对所述第一待累加数与第三时钟周期的累加结果进行加法操作,得到第一时钟周期的累加结果,之后所述移位操作单元对所述第一时钟周期的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据;
在第二时钟周期,所述乘法器根据第二乘法系数对IIR滤波器的输入数据进行乘法操作,得到第二待累加数,之后所述加法器对所述第二待累加数与第五时钟周期的累加结果进行加法操作,得到第二时钟周期的累加结果;
在第三时钟周期,所述乘法器根据第三乘法系数对IIR滤波器的输出数据进行乘法操作,得到第三待累加数,之后所述加法器对所述第三待累加数与第二时钟周期的累加结果进行加法操作,得到第三时钟周期的累加结果;
在第四时钟周期,所述乘法器根据第四乘法系数对IIR滤波器的输入数据进行乘法操作,得到第四待累加数,之后所述加法器对所述第四待累加数与初始累加数进行加法操作,得到第四时钟周期的累加结果,所述初始累加数为0;
在第五时钟周期,所述乘法器根据第五乘法系数对IIR滤波器的输出数据进行乘法操作,得到第五待累加数,之后所述加法器对所述第五待累加数与第四时钟周期的累加结果进行加法操作,得到第五时钟周期的累加结果。
本发明提供的IIR滤波器及其数据处理方法,在Rtl(register transfer level,寄存器传输级)实现上采用分时复用,与现有IIR滤波器相比,要实现同样的功能,可以降低IIR滤波器逻辑占用面积和逻辑之间连线面积,用来实现音频设备中需要大量滤波器级联的音频处理模块,减少芯片面积。
附图说明
图1为本发明一实施例的IIR滤波器要实现的功能框图;
图2为本发明一实施例的IIR滤波器的工作时序图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
本发明实施例提供一种IIR滤波器,该IIR滤波器包括:分时复用的乘法器、分时复用的加法器和移位操作单元,
乘法器在连续的多个时钟周期具有不同的乘法系数,用于在连续的多个时钟周期的每个时钟周期分别根据不同的乘法系数对操作数进行乘法操作,乘法操作的操作数为IIR滤波器的输入数据或者IIR滤波器的输出数据;
加法器用于在连续的多个时钟周期的每个方时钟周期分别对两个操作数进行加法操作,在每个时钟周期,加法操作的两个操作数为乘法器在当前时钟周期得到的计算结果以及加法器在设定的其他时钟周期得到的累加结果;
移位操作单元用于在连续的多个时钟周期的第一个时钟周期对加法器的累加结果进行移位操作,移位操作结果作为IIR滤波器的输出数据。
可选地,该IIR滤波器还可以包括:分时复用的四舍五入及高位扩展运算器,用于在每个时钟周期对乘法器在当前时钟周期得到的计算结果进行四舍五入计算,以及进行高位扩展计算。
可选地,该IIR滤波器还可以包括:分时复用的第一饱和截位器和分时复用的高位扩展运算器,其中,
分时复用的第一饱和截位器,用于对加法器得到的累加结果进行饱和截位操作;
分时复用的高位扩展运算器,用于对第一饱和截位器得到的饱和截位操作结果进行高位扩展。
可选地,该IIR滤波器还可以包括:第二饱和截位器,用于对移位操作单元得到的移位操作结果进行饱和截位操作,饱和截位操作结果作为IIR滤波器的输出数据。
另外,作为一种实施方式,若连续的多个时钟周期包括连续的第一时钟周期、第二时钟周期、第三时钟周期、第四时钟周期和第五时钟周期,则乘法器用于在第一时钟周期根据第一乘法系数对IIR滤波器的输入数据进行乘法操作,得到第一待累加数;还用于在第二时钟周期根据第二乘法系数对IIR滤波器的输入数据进行乘法操作,得到第二待累加数;还用于在第三时钟周期根据第三乘法系数对IIR滤波器的输出数据进行乘法操作,得到第三待累加数;还用于在第四时钟周期根据第四乘法系数对IIR滤波器的输入数据进行乘法操作,得到第四待累加数;还用于在第五时钟周期根据第五乘法系数对IIR滤波器的输出数据进行乘法操作,得到第五待累加数;
加法器用于在第一时钟周期对第一待累加数与第三时钟周期的累加结果进行加法操作,得到第一时钟周期的累加结果,其中第三时钟周期的累加结果是根据第二待累加数、第三待累加数、第四待累加数以及第五待累加数累加得到的;还用于在第二时钟周期对第二待累加数与第五时钟周期的累加结果进行加法操作,得到第二时钟周期的累加结果,其中第五时钟周期的累加结果是根据第四待累加数以及第五待累加数累加得到的;还用于在第三时钟周期对第三待累加数与第二时钟周期的累加结果进行加法操作,得到第三时钟周期的累加结果;还用于在第四时钟周期对第四待累加数与初始累加数进行加法操作,得到第四时钟周期的累加结果,初始累加数为0;还用于在第五时钟周期对第五待累加数与第四时钟周期的累加结果进行加法操作,得到第五时钟周期的累加结果;
移位操作单元,用于对第一时钟周期的累加结果进行移位操作,移位操作结果作为IIR滤波器的输出数据。
可以理解的是,五个时钟周期是一直循环往复的,第一时钟周期用到的第三时钟周期的累加结果,可以理解为上一个第三时钟周期得到的累加结果。
图1示出了上述实施例的IIR滤波器要实现的功能框图,其功能实质上相当于一个如图1所示的传统结构的IIR滤波器。如图1所示,图1的IIR滤波器是由6个乘法器、3个加法器、5个Round&SXT、3个sat等组成,其中Round&SXT表示四舍五入处理与高位扩展处理,Round是一种四舍五入的处理,对于正数和负数都是小数大于等于0.5就加1,否则去掉小数位。SXT是高位扩展,不影响数据的正负、大小。Sat表示饱和截位,直接去掉有符号数的最高符号,或者无符号数据高位的0,如果发现溢出了,就把数据保持为最大的正数或者负数。Z-1是延迟一拍的操作,即信号延迟一个时钟周期。B0_0、B1_0、B2_0、A1_0、A2_0分别为乘法操作的运算系数。din表示滤波器的输入数据,add_a1、add_a2、add_a3、add_a4、add_a5分别表示每个时钟周期,乘法器得到的待累加数,add_out1、add_out2、add_out3、add_out4、add_out5分别表示每个时钟周期,加法器得到的累加结果。移位操作单元对add_out1的数据左移两位,相当于乘以4,经sat2饱和截位后得到输出数据add_out。
本发明实施例的IIR滤波器,在Rtl(register transfer level,寄存器传输级)实现上采用分时复用,即多个反馈回路复用1个逻辑,其时序图可以参考图2。图2中,上方的方波表示时钟,下方表示操作时序,如图2所示,在5个时钟周期内分别依次实现对应图1中1-5的五个乘法操作以及对应加法操作,时序图中还添加了每个时钟周期分别对应的处理操作,这里只截取了乘法和加法两种操作的处理,各操作数与图1是对应的。
在5个时钟周期,乘法器是复用的,分别使用不同的乘法系数进行乘法操作,同样地,加法器也是复用的,由于Round&SXT中的SXT不影响数据的正负和大小,本申请只进行了Round操作,Round也是5个时钟周期复用,因为有存储器来存Z-1之前,sat1之后的数据,故本申请没有做打拍处理,因此,要实现与图1等同的功能,本发明实施例的IIR滤波器只需要一个乘法器、一个加法器、一个四舍五入运算器Round、两个饱和截位器sat即可实现,这种IIR滤波器结构对于音频设备中例如均衡器这种有10级相同结构的IIR滤波器组成的音频处理模块来说,不仅降低滤波器逻辑占用面积,且大大降低逻辑之间连线面积,对面积优化有很大的贡献。
另一方面,本发明实施例提供一种IIR滤波器的数据处理方法,该方法包括:
在连续的多个时钟周期的每个时钟周期,分时复用的乘法器分别根据不同的乘法系数对操作数进行乘法操作,乘法操作的操作数为IIR滤波器的输入数据或者IIR滤波器的输出数据,之后,分时复用的加法器分别对两个操作数进行加法操作,加法操作的两个操作数为乘法器在当前时钟周期得到的计算结果以及加法器在设定的其他时钟周期得到的累加结果;
其中,在连续的多个时钟周期的第一个时钟周期,移位操作单元对加法器在第一个时钟周期的累加结果进行移位操作,移位操作结果作为IIR滤波器的输出数据。
进一步地,在上述实施例的基础上,该数据处理方法还可以包括:
在连续的多个时钟周期的每个时钟周期,分时复用的四舍五入及高位扩展运算器对乘法器在当前时钟周期得到的计算结果进行四舍五入计算,以及进行高位扩展计算。
进一步地,在上述实施例的基础上,该数据处理方法还可以包括:
在连续的多个时钟周期的至少两个时钟周期,分时复用的第一饱和截位器对加法器得到的累加结果进行饱和截位操作,之后分时复用的高位扩展运算器对第一饱和截位器得到的饱和截位操作结果进行高位扩展。
进一步地,在上述实施例的基础上,该数据处理方法还可以包括:
在连续的多个时钟周期的第一个时钟周期,第二饱和截位器对移位操作单元得到的移位操作结果进行饱和截位操作,饱和截位操作结果作为IIR滤波器的输出数据。
另外,作为一种实施方式,若连续的多个时钟周期包括连续的第一时钟周期、第二时钟周期、第三时钟周期、第四时钟周期和第五时钟周期,则上述数据处理方法可以按以下步骤执行,具体包括:
在第一时钟周期,乘法器根据第一乘法系数对IIR滤波器的输入数据进行乘法操作,得到第一待累加数,之后加法器对第一待累加数与第三时钟周期的累加结果进行加法操作,得到第一时钟周期的累加结果,之后移位操作单元对第一时钟周期的累加结果进行移位操作,移位操作结果作为IIR滤波器的输出数据;
在第二时钟周期,乘法器根据第二乘法系数对IIR滤波器的输入数据进行乘法操作,得到第二待累加数,之后加法器对第二待累加数与第五时钟周期的累加结果进行加法操作,得到第二时钟周期的累加结果;
在第三时钟周期,乘法器根据第三乘法系数对IIR滤波器的输出数据进行乘法操作,得到第三待累加数,之后加法器对第三待累加数与第二时钟周期的累加结果进行加法操作,得到第三时钟周期的累加结果;
在第四时钟周期,乘法器根据第四乘法系数对IIR滤波器的输入数据进行乘法操作,得到第四待累加数,之后加法器对第四待累加数与初始累加数进行加法操作,得到第四时钟周期的累加结果,初始累加数为0;
在第五时钟周期,乘法器根据第五乘法系数对IIR滤波器的输出数据进行乘法操作,得到第五待累加数,之后加法器对第五待累加数与第四时钟周期的累加结果进行加法操作,得到第五时钟周期的累加结果。
可以看出,本发明实施例的方法实施例是与前述IIR滤波器相对应的,是对前述IIR滤波器的工作方式的一个详细说明,二者可以相互引用。本发明实施例的IIR滤波器的数据处理方法,基于IIR滤波器中乘法器、加法器等的分时复用来实现,简化了IIR滤波器,但是不影响数据处理的结果。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (10)

1.一种IIR滤波器,其特征在于,包括:
分时复用的乘法器,所述乘法器在连续的多个时钟周期具有不同的乘法系数,用于在连续的多个时钟周期的每个时钟周期分别根据不同的乘法系数对操作数进行乘法操作,乘法操作的操作数为IIR滤波器的输入数据或者IIR滤波器的输出数据;
分时复用的加法器,所述加法器用于在所述连续的多个时钟周期的每个时钟周期分别对两个操作数进行加法操作,在每个时钟周期,加法操作的一个操作数为所述乘法器在当前时钟周期得到的计算结果,另一个操作数为所述加法器在设定的其他时钟周期得到的累加结果或者初始累加数;
移位操作单元,用于在所述连续的多个时钟周期的第一个时钟周期对所述加法器的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据。
2.根据权利要求1所述的IIR滤波器,其特征在于,还包括:
分时复用的四舍五入及高位扩展运算器,用于在每个时钟周期对所述乘法器在当前时钟周期得到的计算结果进行四舍五入计算,以及进行高位扩展计算。
3.根据权利要求1所述的IIR滤波器,其特征在于,还包括:
分时复用的第一饱和截位器,用于对所述加法器得到的累加结果进行饱和截位操作;
分时复用的高位扩展运算器,用于对所述第一饱和截位器得到的饱和截位操作结果进行高位扩展。
4.根据权利要求1所述的IIR滤波器,其特征在于,还包括:第二饱和截位器,用于对所述移位操作单元得到的移位操作结果进行饱和截位操作,饱和截位操作结果作为所述IIR滤波器的输出数据。
5.根据权利要求1所述的IIR滤波器,其特征在于,所述连续的多个时钟周期包括连续的第一时钟周期、第二时钟周期、第三时钟周期、第四时钟周期和第五时钟周期,
所述乘法器,用于在第一时钟周期根据第一乘法系数对IIR滤波器的输入数据进行乘法操作,得到第一待累加数;
还用于在第二时钟周期根据第二乘法系数对IIR滤波器的输入数据进行乘法操作,得到第二待累加数;
还用于在第三时钟周期根据第三乘法系数对IIR滤波器的输出数据进行乘法操作,得到第三待累加数;
还用于在第四时钟周期根据第四乘法系数对IIR滤波器的输入数据进行乘法操作,得到第四待累加数;
还用于在第五时钟周期根据第五乘法系数对IIR滤波器的输出数据进行乘法操作,得到第五待累加数;
所述加法器,用于在第一时钟周期对所述第一待累加数与第三时钟周期的累加结果进行加法操作,得到第一时钟周期的累加结果,其中第三时钟周期的累加结果是根据所述第二待累加数、所述第三待累加数、所述第四待累加数以及所述第五待累加数累加得到的;
还用于在第二时钟周期对所述第二待累加数与第五时钟周期的累加结果进行加法操作,得到第二时钟周期的累加结果,其中第五时钟周期的累加结果是根据所述第四待累加数以及所述第五待累加数累加得到的;
还用于在第三时钟周期对所述第三待累加数与第二时钟周期的累加结果进行加法操作,得到第三时钟周期的累加结果;
还用于在第四时钟周期对所述第四待累加数与初始累加数进行加法操作,得到第四时钟周期的累加结果,所述初始累加数为0;
还用于在第五时钟周期对所述第五待累加数与第四时钟周期的累加结果进行加法操作,得到第五时钟周期的累加结果;
所述移位操作单元,用于对所述第一时钟周期的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据。
6.一种IIR滤波器的数据处理方法,其特征在于,所述方法包括:
在连续的多个时钟周期的每个时钟周期,分时复用的乘法器分别根据不同的乘法系数对操作数进行乘法操作,乘法操作的操作数为IIR滤波器的输入数据或者IIR滤波器的输出数据,之后,分时复用的加法器分别对两个操作数进行加法操作,加法操作的一个操作数为所述乘法器在当前时钟周期得到的计算结果,另一个操作数为所述加法器在设定的其他时钟周期得到的累加结果或者初始累加数;
其中,在所述连续的多个时钟周期的第一个时钟周期,移位操作单元对所述加法器在所述第一个时钟周期的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述连续的多个时钟周期的每个时钟周期,分时复用的四舍五入及高位扩展运算器对所述乘法器在当前时钟周期得到的计算结果进行四舍五入计算,以及进行高位扩展计算。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述连续的多个时钟周期的至少两个时钟周期,分时复用的第一饱和截位器对所述加法器得到的累加结果进行饱和截位操作,之后分时复用的高位扩展运算器对所述第一饱和截位器得到的饱和截位操作结果进行高位扩展。
9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述连续的多个时钟周期的第一个时钟周期,第二饱和截位器对所述移位操作单元得到的移位操作结果进行饱和截位操作,饱和截位操作结果作为所述IIR滤波器的输出数据。
10.根据权利要求6所述的方法,其特征在于,所述连续的多个时钟周期包括连续的第一时钟周期、第二时钟周期、第三时钟周期、第四时钟周期和第五时钟周期,所述方法包括:
在第一时钟周期,所述乘法器根据第一乘法系数对IIR滤波器的输入数据进行乘法操作,得到第一待累加数,之后所述加法器对所述第一待累加数与第三时钟周期的累加结果进行加法操作,得到第一时钟周期的累加结果,之后所述移位操作单元对所述第一时钟周期的累加结果进行移位操作,移位操作结果作为所述IIR滤波器的输出数据;
在第二时钟周期,所述乘法器根据第二乘法系数对IIR滤波器的输入数据进行乘法操作,得到第二待累加数,之后所述加法器对所述第二待累加数与第五时钟周期的累加结果进行加法操作,得到第二时钟周期的累加结果;
在第三时钟周期,所述乘法器根据第三乘法系数对IIR滤波器的输出数据进行乘法操作,得到第三待累加数,之后所述加法器对所述第三待累加数与第二时钟周期的累加结果进行加法操作,得到第三时钟周期的累加结果;
在第四时钟周期,所述乘法器根据第四乘法系数对IIR滤波器的输入数据进行乘法操作,得到第四待累加数,之后所述加法器对所述第四待累加数与初始累加数进行加法操作,得到第四时钟周期的累加结果,所述初始累加数为0;
在第五时钟周期,所述乘法器根据第五乘法系数对IIR滤波器的输出数据进行乘法操作,得到第五待累加数,之后所述加法器对所述第五待累加数与第四时钟周期的累加结果进行加法操作,得到第五时钟周期的累加结果。
CN202110854056.3A 2021-07-27 2021-07-27 Iir滤波器及其数据处理方法 Active CN113556101B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110854056.3A CN113556101B (zh) 2021-07-27 2021-07-27 Iir滤波器及其数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110854056.3A CN113556101B (zh) 2021-07-27 2021-07-27 Iir滤波器及其数据处理方法

Publications (2)

Publication Number Publication Date
CN113556101A CN113556101A (zh) 2021-10-26
CN113556101B true CN113556101B (zh) 2023-03-14

Family

ID=78133025

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110854056.3A Active CN113556101B (zh) 2021-07-27 2021-07-27 Iir滤波器及其数据处理方法

Country Status (1)

Country Link
CN (1) CN113556101B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116861973B (zh) * 2023-09-05 2023-12-15 深圳比特微电子科技有限公司 用于卷积运算的改进的电路、芯片、设备及方法
CN117170622B (zh) * 2023-11-03 2024-03-01 深圳鲲云信息科技有限公司 累加器及用于累加器的方法和芯片电路及计算设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035502A (zh) * 2009-09-28 2011-04-27 联芯科技有限公司 一种fir滤波器的实现结构

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1152589C (zh) * 2002-01-30 2004-06-02 信息产业部电信传输研究所 采用流水线方式的基带成形滤波器的实现装置
US7159002B2 (en) * 2003-08-29 2007-01-02 Texas Instruments Incorporated Biquad digital filter operating at maximum efficiency
US20090080581A1 (en) * 2007-09-25 2009-03-26 Nanoamp Solutions Inc. (Cayman) Time sequential processing operations

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035502A (zh) * 2009-09-28 2011-04-27 联芯科技有限公司 一种fir滤波器的实现结构

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于FPGA的高速高阶FIR滤波器设计";李文刚;《中国优秀硕士学位论文全文数据库》;20051115;第5-6页 *

Also Published As

Publication number Publication date
CN113556101A (zh) 2021-10-26

Similar Documents

Publication Publication Date Title
CN113556101B (zh) Iir滤波器及其数据处理方法
US8126949B1 (en) Reconfigurable filter node for an adaptive computing machine
CN106803750B (zh) 一种多通道流水fir滤波器
US5270953A (en) Fast convolution multiplier
US4121296A (en) Digital signal processing arrangement
WO2008034027A2 (en) Processor architecture for programmable digital filters in a multi-standard integrated circuit
EP1105967B1 (en) Multiplierless digital filtering
US6385635B1 (en) Product sum operation device capable of carrying out fast operation
US6304133B1 (en) Moving average filter
Vinay et al. Power efficient FIR filter architecture using distributed arithmetic algorithm
CN102457251B (zh) 一种实现通用数字滤波器的方法及装置
CN106505971A (zh) 一种基于结构加法器顺序重编排的低复杂度fir滤波器结构
Ye et al. A low cost and high speed CSD-based symmetric transpose block FIR implementation
EP1119910B1 (en) Area efficient realization of coefficient architecture for bit-serial fir, iir filters and combinational/sequential logic structure with zero latency clock output
CN110247642B (zh) 一种fir滤波方法及滤波器
Raj et al. A paradigm of distributed arithmetic (DA) approaches for digital FIR filter
Kannan A Design of Low Power and Area efficient FIR Filter using Modified Carry save Accumulator Method
Shilparani et al. FPGA implementation of FIR filter architecture using MCM technology with pipelining
EP1119909B1 (en) Area efficient realization of coefficient architecture for bit-serial fir, iir filters and combinational/sequential logic structure with zero latency clock output
CN116579353A (zh) 一种实现并行转置fir滤波器的方法及装置
US6944217B1 (en) Interleaved finite impulse response filter
JP3243831B2 (ja) Fir型フィルタ
CN115603707A (zh) 通用滤波器、协处理器及滤波方法
Amira et al. An fpga based walsh hadamard transforms
Revathi et al. Implementation of Area and Power Efficient Pulse Shaping FIR Interpolation Filter for Multi Standard DUC

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
GR01 Patent grant
GR01 Patent grant