基于随机计算与余数系统相结合的fir滤波系统

文档序号:1660186 发布日期:2019-12-27 浏览:32次 >En<

阅读说明:本技术 基于随机计算与余数系统相结合的fir滤波系统 (FIR filtering system based on combination of random calculation and remainder system ) 是由 卢有亮 赵成 滕云龙 王浩 张桓源 元硕成 卢鹏宇 罗建平 于 2019-09-25 设计创作,主要内容包括:本发明公开一种基于随机计算与余数系统相结合的FIR滤波系统,该FIR滤波系统包括余数系统前向转换单元、随机计算前向转换单元、运算单元、随机计算后向转换单元及余数系统后向转换单元。本发明将输入的二进制数通过前向转换单元转换为余数表示,并再通过随机计算前向转换单元将对应通道的数据转换成概率域比特流,然后将原本的乘法和加法操作使用与门和随机计算后向转换单元替换,最后将最终的结果通过余数系统后向转换单元转换回二进制输出,在大量减少构造传统的滤波器所需要的资源的同时减少了因随机计算所增加的时延。(The invention discloses an FIR filtering system based on the combination of random calculation and a remainder system. The invention converts the input binary number into remainder representation through a forward conversion unit, converts the data of the corresponding channel into probability domain bit stream through a random calculation forward conversion unit, then replaces the original multiplication and addition operations by an AND gate and a random calculation backward conversion unit, and finally converts the final result back to binary output through a remainder system backward conversion unit, thereby greatly reducing the resources required by constructing the traditional filter and simultaneously reducing the time delay increased by random calculation.)

基于随机计算与余数系统相结合的FIR滤波系统

技术领域

本发明属于数字信号处理技术领域,特别涉及一种基于随机计算与余数系统相结合的FIR滤波系统。

背景技术

有限长单位冲激响应滤波器(Finite Impulse Response,FIR)滤波器因其可以设计成为任意幅频特性,同时保证精确、严格的线性相位特性,其单位抽样响应是有限长的,是一个稳定的系统,因此其是数字信号处理系统中最常用、最重要的滤波器之一。在实际使用中FIR数字滤波器的主要目标不仅是获取满足性能指标的滤波器系数,同时还要尽可能的减少使用的硬件资源和消耗的能源。

余数系统(Residue Number System,RNS)是一种无权的运算,各个模运算之间具有天然的独立、并行特性,相互之间不存在进位。在余数系统中,一个大整数X通过一组两两互质的余数基{m1,m2,m3…mL}被划分为一组独立并行运算的小整数{x1,X2,x3…xL},在加法和乘法运算中,各并行模块间无进位传播,从而减小了关键路径时延,因此在具有大量乘加运算的数字信号处理中得到了广泛的应用和研究。

随机计算(Stochastic Computing,SC)是一种无权重的,低成本,抗噪声的近似计算方法,在随机计算中,一个数字被转换成概率域比特流进行计算,如果生成的概率域比特流为集中分布序列和均匀分布系列,那么通过简单的与和或门就能得到精确乘加的结果。随机计算能够大量减少资源消耗,但是同时也会带来巨大的延迟,降低运算速度。随机运算与余数系统相结合(Stochastic Computing based Residue Number System,SC-RNS),结合了余数系统的并行性和随机计算的低开销,在极大降低资源消耗的同时,减少了因随机计算增加的延迟。

发明内容

本发明的目的在于提供一种基于随机计算与余数系统相结合(SC-RNS)的FIR滤波器系统,以减少构造传统滤波器所需要的资源,同时降低因随机计算增加的时延。

为实现上述目的,本发明提供一种基于随机计算与余数系统相结合的FIR滤波系统,包括:

余数系统前向转换单元、随机计算前向转换单元、运算单元、随机计算后向转换单元及余数系统后向转换单元;

所述余数系统前向转换单元用于根据生成的余数基{m1,m2,m3,…,mi,…,mL}对输入的二进制数X进行转换,得到转换结果{x1,x2,x3,…,xi,…,xL};

所述随机计算前向转换单元用于对所述余数系统前向转换单元的转换结果{x1,x2,x3,…,xi,…,xL}进行二次转换,得到二次转换结果{s1,s2,s3,…,si,…,sL},其中si是由xi转换得到的概率域比特流;

所述运算单元用于在各通道下调用与门运算;

所述随机计算后向转换单元用于将对应的通道随机计算结果转换到余数系统,同时进行累加和取模操作;

所述余数系统后向转换单元用于将余数系统下的数转换到二进制表示,得到滤波结果。

进一步地,所述余数系统前向转换单元生成余数基具体为:

构建有限脉冲响应滤波系统,根据该滤波系统的输出数据的位数选择所述余数基,使输出数据的位数在所述余数基动态范围内。

进一步地,输出数据为32位时,采用的余数基为{211-1,211,211+1}。

进一步地,输出数据为32位时,对应的随机计算比特流长度为{2047,2048,2049},将取余结果转换成对应长度的随机计算比特流。

进一步地,所述随机计算前向转换单元进行二次转换具体为:

对所述余数系统前向转换单元的转换结果{x1,x2,x3,…,xi,…,xL}中的数据xi进行二次转换,得到二次转换结果{s1,s2,s3,…,si,…,sL},其中,所述二次转换结果中的数据为二进制数X通过所述余数基mi得到xi,再由xi转化到概率域比特流si

进一步地,所述运算单元在各通道下调用与门和所述随机计算后向转换单元进行乘法和加法运算,得到运算结果。

进一步地,所述余数系统后向转换单元将运算结果转换为二进制输出,优先转换经过二次转换的运算结果,得到滤波结果。

本发明的有益效果是:本发明将输入的二进制数通过前向转换单元转换为余数表示,并将余数表示的数再一次转换到随机计算的比特流表示,然后将原本的乘法和加法操作使用简单的与门替换,最后将最终的结果通过后向转换单元转换回二进制输出,在大量减少构造传统的滤波器所需要的资源的同时减少增加的时延。

附图说明

图1为本发明的基于随机计算与余数系统相结合的FIR滤波系统结构图;

图中:110-前向转换单元;120-二次转换单元;130-运算单元;140-概率计算后向转换单元,150-余数系统后向转换单元;

图2为本发明中一个二进制数X转换到余数域再转换到概率域比特流的前向转换单元结构图。

图3为本发明中的随机计算后向转换单元结构图;

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本发明实施例的主要解决方案为:

如图1所示,一种基于随机计算与余数系统相结合的FIR滤波系统,包括:

余数系统(RNS)前向转换单元110、随机计算(SC)前向转换单元120、运算单元130、随机计算(SC)后向转换单元140及余数系统(RNS)后向转换单元150;

本发明中输入端输入为二进制数X,经由余数系统前向转换单元110进行处理。

余数系统前向转换单元110中的余数基{m1,m2,m3,…,mi,…,mL}将二进制数X转换为余数{x1,x2,x3,…,xi,…,xL}表示,在经过随机计算前向转换单元120转换成相应的比特流。

其中,余数系统前向转换单元生成余数基具体为:

利用MATLAB的FDATOOL构建所需FIR滤波器,生成相应的Verilog代码,根据代码中滤波器的输出数据的位数选择余数基,使余数基的乘积大于最大位宽的值,即输出数据的位数在余数基动态范围内。

本实施例的优选实施例中,采用输出数据为32位的FIR滤波器,采用的余数基为{211-1,211,211+1},其所能表示的动态范围为 对应的随机计算比特流长度为{2047,2048,2049},将取余结果转换成对应长度的随机计算比特流。通过余数基转换后的二进制数X为{x1,x2,x3,x4,x5}。

随机计算前向转换单元120根据余数系统前向转换单元的转换结果{x1,x2,x3,…,xi,…,xL}中的第i项数据xi进行二次转换,得到二次转换结果{s1,s2,s3,…,si,…,sL},其中,二次转换结果中的第i项数据为二进制数X通过第i通道的余数基mi得到xi,再由xi转化到概率域比特流si,如图2所示。

运算单元130在各通道内使用与门,得到乘法运算的结果。

本实施例的优选实施例中,运算单元130在各通道下调用与门和随机计算后向转换单元140进行乘法和加法运算,得到运算结果。

随机计算后向转换单元140将对应的通道随机计算结果转换到余数系统,同时进行累加和取模操作,如图3所示。

余数系统后向转换单元150将余数系统下的数转换到二进制表示,得到运算的最终结果。

本实施例的优选实施例中,余数系统后向转换单元将运算结果转换为二进制输出,优先转换经过二次转换的运算结果,得到滤波结果。

本发明利用累加器和比较器实现随机计算的前向转换,其中模211-1和模211的加法器、乘法器因为位宽都是11位,所以都是采用11位计数器。而模211+1的位宽为12位,所以模212+1的转换到随机计算使用12位计数器。各个余数通道下通过运算单元130使用与门实现乘法操作,通过随机计算后向转换单元实现加法操作,即相应的滤波操作。

本发明先将随机计算最后生成的比特流转换到余数系统,然后再将最后的结果转换回二进制系统下即可得到最终的滤波结果,即利用随机计算后向转换单元140将随机运算结果转换为余数系统下表示,再由后向转换单元150将余数系统下的数转换到二进制表示,得到滤波结果。

综上所示,本发明先利用Matlab的FDATOOL工具箱设计需要的FIR滤波器并生成相应的Verilog代码,根据生成的代码中输出数据的位数选择余数基,使输出位数在余数基的动态范围内;然后根据选择的余数基,确定每个通道随机计算的比特流的长短;然后根据代码完成其他单元的构建,包括余数系统前向转换单元110,随机计算前向转换单元120,随机计算后向转换单元140及余数系统后向转换单元150;二进制数X进入本发明构建的FIR滤波系统中,通过余数系统前向转换单元110转换为余数表示,将余数表示通过随机计算前向转换单元120转换成比特流,然后将原本的乘法和加法操作使用与门和随机计算后向转换单元140替换,最后将最终的结果通过余数系统后向转换单元150转换回二进制输出,得到滤波结果。

本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于偏置电流失调的迟滞振荡器电路

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!