专利转让平台_买专利_卖专利_中国高校专利技术交易-买卖发明专利上知查网

全部分类
全部分类
一种基于FPGA实现的分数阶积分器

一种基于FPGA实现的分数阶积分器

IPC分类号 : H03H17/00,H03H17/02

申请号
CN201820937532.1
可选规格
  • 专利类型: 实用新型专利
  • 法律状态: 有权
  • 申请日: 2018-06-15
  • 公开号: 208190613U
  • 公开日: 2018-12-04
  • 主分类号: H03H17/00
  • 专利权人: 北京化工大学

专利摘要

本实用新型涉及一种基于FPGA实现的分数阶积分器,包括:量化模块,用于量化分数阶积分器的系数,得到分数阶积分器时域下的差分表达式;FPGA模块,用于根据所述差分表达式,将所述分数阶积分器的实现分解为无反馈结构的零点系数的FPGA实现、无反馈结构的极点系数的FPGA实现及无反馈结构的顶层运算的FPGA实现。本实用新型提供的技术方案,提高了高阶IIR滤波器的系统稳定性,并简化了系统结构。

权利要求

1.一种基于FPGA实现的分数阶积分器,其特征在于,包括:

量化模块,用于量化分数阶积分器的系数,得到分数阶积分器时域下的差分表达式;

FPGA模块,用于根据所述差分表达式,将所述分数阶积分器的实现分解为无反馈结构的零点系数的FPGA实现、无反馈结构的极点系数的FPGA实现及无反馈结构的顶层运算的FPGA实现。

2.根据权利要求1所述的分数阶积分器,其特征在于,所述量化模块,包括:

获取子模块,用于获取分数阶积分器的标准传递函数;

变形子模块,用于将所述标准传递函数变形为分数阶传递函数;

量化子模块,用户对所述分数阶传递函数的系数进行量化;

输出子模块,用于根据量化后的系数,输出所述分数阶传递函数时域下的差分表达式。

3.根据权利要求2所述的分数阶积分器,其特征在于,所述量化子模块,还用于将量化后的分数阶传递函数分母系数的第一项设置为2的整数次幂次方的形式。

4.根据权利要求2所述的分数阶积分器,其特征在于,若所述标准传递函数包括:比例系数、积分系数和半阶积分算子,则所述变形子模块,包括:

接收子模块,用于接收用户设定的比例系数和积分系数;

展开子模块,用于采用预设的积分算法将所述半阶积分算子展开;

代入子模块,用于将所述比例系数、积分系数和展开后的半阶积分算子代入到所述标准传递函数中,将所述标准传递函数变形为分数阶传递函数。

5.根据权利要求4所述的分数阶积分器,其特征在于,所述展开子模块,具体用于采用Al-aloui算法对所述半阶积分算子进行数值逼近,以将所述半阶积分算子展开。

6.根据权利要求1所述的分数阶积分器,其特征在于,所述FPGA模块,包括:

求差子模块,用于对零点系数的FPGA实现结果与极点系数的FPGA实现结果做差运算;

移位子模块,用于对所述求差子模块输出的结果进行移位;

截位子模块,用于将所述移位子模块输出的结果截位后输出。

7.根据权利要求6所述的分数阶积分器,其特征在于,所述FPGA模块,还包括:

第一移位相加子模块,用于实现所述零点系数的常系数乘法运算;

第一求和子模块,用于对所述第一移位相加子模块的运算结果求和,以输出零点系数的FPGA实现结果;

第二移位相加子模块,用于实现所述极点系数的常系数乘法运算;

第二求和子模块,用于对所述第二移位相加子模块的运算结果求和,以输出极点系数的FPGA实现结果。

8.根据权利要求1所述的分数阶积分器,其特征在于,所述零点系数的FPGA实现与极点系数的FPGA实现皆采用FIR滤波器实现时所使用的方法。

说明书

技术领域

本实用新型涉及数字滤波器技术领域,具体涉及一种基于FPGA实现的分数阶积分器。

背景技术

数字滤波器由数字乘法器、加法器和延时单元组成的一种算法或装置。数字滤波器的功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。数字滤波器具有可靠性高、一致性好和参数设置便捷等优点,在许多应用领域使用数字滤波器替代模拟滤波器可获得更为理想的性能。

数字滤波器包括:FIR滤波器(Finite Impulse Response滤波器,有限长单位冲激响应滤波器)和IIR滤波器(Infinite Impulse Response滤波器,无限长单位激响应滤波器)。与FIR滤波器相比,IIR滤波器具有更好的幅频特性。由于具有反馈回路,IIR滤波器在相同阶数时取得的滤波效果更好。然而IIR滤波器存在稳定性问题,这主要取决于IIR滤波器具有反馈型结构,滤波器传递函数的零极点分布影响其稳定性。低阶IIR滤波器结构简单,电路容易实现,稳定性好,但由于阶数太低,限制了系统的滤波降噪能力,造成系统整体的性能不高;高阶IIR滤波器滤波降噪能力强,但面临系统的稳定性变差问题,需要合理设计系统结构与参数。

实用新型内容

有鉴于此,本实用新型的目的在于克服现有技术的不足,提供一种基于FPGA实现的分数阶积分器,提高高阶IIR滤波器的系统稳定性,并简化系统结构。

为实现以上目的,本实用新型采用如下技术方案:

一种基于FPGA实现的分数阶积分器,包括:

量化模块,用于量化分数阶积分器的系数,得到分数阶积分器时域下的差分表达式;

FPGA模块,用于根据所述差分表达式,将所述分数阶积分器的实现分解为无反馈结构的零点系数的FPGA实现、无反馈结构的极点系数的FPGA实现及无反馈结构的顶层运算的FPGA实现。

优选地,所述量化模块,包括:

获取子模块,用于获取分数阶积分器的标准传递函数;

变形子模块,用于将所述标准传递函数变形为分数阶传递函数;

量化子模块,用户对所述分数阶传递函数的系数进行量化;

输出子模块,用于根据量化后的系数,输出所述分数阶传递函数时域下的差分表达式。

优选地,所述量化子模块,还用于将量化后的分数阶传递函数分母系数的第一项设置为2的整数次幂次方的形式。

优选地,若所述标准传递函数包括:比例系数、积分系数和半阶积分算子,则所述变形子模块,包括:

接收子模块,用于接收用户设定的比例系数和积分系数;

展开子模块,用于采用预设的积分算法将所述半阶积分算子展开;

代入子模块,用于将所述比例系数、积分系数和展开后的半阶积分算子代入到所述标准传递函数中,将所述标准传递函数变形为分数阶传递函数。

优选地,所述展开子模块,具体用于采用Al-aloui算法对所述半阶积分算子进行数值逼近,以将所述半阶积分算子展开。

优选地,所述FPGA模块,包括:

求差子模块,用于对零点系数的FPGA实现结果与极点系数的FPGA实现结果做差运算;

移位子模块,用于对所述求差模块输出的结果进行移位;

截位子模块,用于将所述移位模块输出的结果截位后输出。

优选地,所述FPGA模块,还包括:

第一移位相加子模块,用于实现所述零点系数的常系数乘法运算;

第一求和子模块,用于对所述第一移位相加子模块的运算结果求和,以输出零点系数的FPGA实现结果;

第二移位相加子模块,用于实现所述极点系数的常系数乘法运算;

第二求和子模块,用于对所述第二移位相加子模块的运算结果求和,以输出极点系数的FPGA实现结果。

优选地,所述零点系数的FPGA实现与极点系数的FPGA实现皆采用FIR滤波器实现时所使用的方法。

本实用新型采用以上技术方案,至少具备以下有益效果:

由上述技术方案可知,本实用新型提供的这种基于FPGA实现的分数阶积分器,针对传统IIR滤波器存在设计参数多、稳定性差的问题,将传统整数阶IIR滤波器和分数阶微积分运算相结合,构造分数阶IIR滤波器,由于分数阶IIR滤波器属于广义的整数高阶IIR滤波器,具有高阶IIR滤波器的所有优势,同时分数阶滤波器在稳定性、鲁棒性方面较整数阶滤波器具有明显优势。

可以理解的是,目前对于数字滤波器的设计多局限于软件仿真,在硬件实现时还需解决字长确定及浮点乘法定点化的问题。由于DSP硬件资源丰富运算能力强,使用DSP芯片实现数字滤波器软件设计较为简单,但硬件系统较为复杂。与DSP相比,FPGA在成本、功耗、灵活性上都更有优势。

本实用新型通过对高阶IIR滤波器频域下传递函数的系数量化,得到分数阶积分器时域下的差分表达式,并通过对差分表达式进行分解,将具有反馈结构的分数阶积分器分解为了无反馈结构的零点系数的FPGA实现、极点系数的FPGA实现及顶层运算的FPGA实现,简化了系统结构,提高了系统稳定性。

附图说明

为了更清楚地说明本实用新型实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本实用新型的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本实用新型一实施例提供的一种基于FPGA实现的分数阶积分器的示意框图;

图2为本实用新型一实施例提供的分数阶积分器的直接型实现结构示意框图。

具体实施方式

为使本实用新型的目的、技术方案和优点更加清楚,下面将对本实用新型的技术方案进行详细的描述。显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本实用新型所保护的范围。

下面通过附图和实施例,对本实用新型的技术方案做进一步的详细描述。

参见图1,本实用新型一实施例提供的一种基于FPGA实现的分数阶积分器100,包括:

量化模块101,用于量化分数阶积分器的系数,得到分数阶积分器时域下的差分表达式;

FPGA模块102,用于根据所述差分表达式,将所述分数阶积分器的实现分解为无反馈结构的零点系数的FPGA实现、无反馈结构的极点系数的FPGA实现及无反馈结构的顶层运算的FPGA实现。

需要说明的是,分数阶微积分理论是将普通意义下的微积分运算的运算阶次从整数阶推广到分数和复数的情况。分数阶微积分因其阶次灵活性,被逐渐应用于工程实践中,特别是在信息科学领域中,一些新颖的应用被相继提出和实现,如系统建模、曲线拟合、信号滤波、模式识别、图像边界提取、系统辨识、系统稳定性分析等等。

由上述技术方案可知,本实用新型提供的这种基于FPGA实现的分数阶积分器,针对传统IIR滤波器存在设计参数多、稳定性差的问题,将传统整数阶IIR滤波器和分数阶微积分运算相结合,构造分数阶IIR滤波器,由于分数阶IIR滤波器属于广义的整数高阶IIR滤波器,具有高阶IIR滤波器的所有优势,同时分数阶滤波器在稳定性、鲁棒性方面较整数阶滤波器具有明显优势。

可以理解的是,目前对于数字滤波器的设计多局限于软件仿真,在硬件实现时还需解决字长确定及浮点乘法定点化的问题。由于DSP硬件资源丰富运算能力强,使用DSP芯片实现数字滤波器软件设计较为简单,但硬件系统较为复杂。与DSP相比,FPGA在成本、功耗、灵活性上都更有优势。

本实用新型通过对高阶IIR滤波器频域下传递函数的系数量化,得到分数阶积分器时域下的差分表达式,并通过对差分表达式进行分解,将具有反馈结构的分数阶积分器分解为了无反馈结构的零点系数的FPGA实现、极点系数的FPGA实现及顶层运算的FPGA实现,简化了系统结构,提高了系统稳定性。

优选地,所述量化模块101,包括:

获取子模块,用于获取分数阶积分器的标准传递函数;

变形子模块,用于将所述标准传递函数变形为分数阶传递函数;

量化子模块,用户对所述分数阶传递函数的系数进行量化;

输出子模块,用于根据量化后的系数,输出所述分数阶传递函数时域下的差分表达式。

可以理解的是,所述量化模块主要用于将频域下的标准传递函数变形为分数阶传递函数,以便于FPGA实现时,将具有反馈结构的IIR滤波器的结构分解为无反馈结构的多个功能模块进行实现,以简化系统结构,提高系统稳定性。

优选地,若所述标准传递函数包括:比例系数、积分系数和半阶积分算子,则所述变形子模块,包括:

接收子模块,用于接收用户设定的比例系数和积分系数;

展开子模块,用于采用预设的积分算法将所述半阶积分算子展开;

代入子模块,用于将所述比例系数、积分系数和展开后的半阶积分算子代入到所述标准传递函数中,将所述标准传递函数变形为分数阶传递函数。

优选地,所述展开子模块,具体用于采用Al-aloui算法对所述半阶积分算子进行数值逼近,以将所述半阶积分算子展开。

假设本实用新型提供的这种分数阶积分器的标准传递函数为:

H(z)=kp+ki(w(z-1))-0.5 (1)

式(1)中,kp为比例系数、ki为积分系数、(w(z-1))-0.5为半阶积分算子。

采用Al-aloui积分算法对半阶积分算子展开可得:

这里取kp和ki为kp=0.0008372,ki=2.0667

最终,分数阶积分器可表示为:

通过式(3)可知,分数阶积分器的分子和分母为:

b=[0.004971 0.001648 -0.002736 -0.001243 0.0002569]

a=[1 0.5 -0.75 -0.25 0.0625]

在进行FPGA实现时,必须对每个系数进行量化处理,这里将系数进行12比特量化,则在MATLAB命令窗中直接输入:

b=[0.004971 0.001648 -0.002736 -0.001243 0.0002569];

a=[1 0.5 -0.75 -0.25 0.0625];

m=max(max(abs(a),abs(b)));

Qb=round(b/m*(2^(12-1)-1))

Qa=round(a/m*(2^(12-1)-1))

运行上述M程序可得:

Qb=[10 3 -6 -3 1]

Qa=[2047 1024 -1535 -512 128]

则,根据分数阶积分器的传递函数(3),可以直接写出其差分表达式:

2047y(n)=10x(n)+3x(n-1)-6x(n-2)-3x(n-3)+x(n-4)

-[1024y(n-1)+1535y(n-2)-512y(n-3)+128y(n-4)] (4)

优选地,所述量化子模块,还用于将量化后的分数阶传递函数分母系数的第一项设置为2的整数次幂次方的形式。

需要说明的是,上式(4)中等式左边乘了2047,为了正确求取分数阶积分器下一时刻输出值,需要在计算完后,上式(4)右边除以2047,这样才能得到y(n)。那么也就是说FPGA需要增加一级常数除法运算操作。不过即使是常系数的除法运算在FPGA实现时也是十分耗费资源的,但当除数是2的整数次幂次方时,根据二进制数的特点,可直接采用移位的方法来近似实现除法运算。移位不仅占用硬件资源少,且运算速度快。为此,在实现式(4)所表示的分数阶积分器时,一个简单可行的方法是在对系数进行量化时,有意将量化后的分数阶积分器分母系数的第一项设置为2的整数次幂次方的形式。

仍然采用MATLAB软件来对分数阶积分器系数进行量化。其命令为:

b=[0.004971 0.001648 -0.002736 -0.001243 0.0002569];

a=[1 0.5 -0.75 -0.25 0.0625];

m=max(max(abs(a),abs(b)));

Qm=floor(log2(m/a(1)));

if Qm<log2(m/a(1))

Qm=Qm+1;

End

Qm=2^Qm

Qb=round(b/m*(2^(12-1)-1))

Qa=round(a/m*(2^(12-1)-1))

运行上述M程序可得:

Qb=[10 3 -6 -3 1]

Qa=[2048 1024 -1535 -512 128]

根据分数阶积分器的传递函数(3)可以直接写出其差分表达式:

2048y(n)=10x(n)+3x(n-1)-6x(n-2)-3x(n-3)+x(n-4)

-[1024y(n-1)+1535y(n-2)-512y(n-3)+128y(n-4)] (5)

可以理解的是,IIR滤波器的FPGA实现相对于FIR滤波器来讲要复杂,主要区别在于IIR滤波器的反馈结构。根据前述可知,所要实现的分数阶积分器差分方程如式(5)所示。根据式(5),可取上式右边运算结构后,再除以2048即完成一次完整的滤波运算。根据FPGA的特点,采用右移的方法来近似实现除以2048运算,因此分数阶积分器的直接型实现结构可参见附图2表示。

优选地,所述零点系数的FPGA实现与极点系数的FPGA实现皆采用FIR滤波器实现时所使用的方法。

从图2也可以看出,对于零点系数的实现结构其实可完全看作没有反馈环路的FIR滤波器结构,且可以利用对称系数的特点进一步减少乘法运算;单独查看系统极点系数的实现结构,也可以看成一个不带反馈环路的电路结构;整个IIR滤波器的闭环过程只在对零点系数的FPGA实现结果与极点系数的FPGA实现结果做差运算中,以及移位算法实现除法运算的过程中完成。滤波器在求取零点系数的FPGA实现结果与极点系数的FPGA实现结果的过程中均可通过增加寄存器字长来实现全精度运算,唯一出现运算误差的环节在于除法运算,以及除法运算后的截位输出。当整个IIR滤波器环路稳定,且截位输出数据不出现溢出时,整个环路运算误差仅由除法运算产生。

优选地,所述FPGA模块102,包括:

求差子模块,用于对零点系数的FPGA实现结果与极点系数的FPGA实现结果做差运算;

移位子模块,用于对所述求差模块输出的结果进行移位;

截位子模块,用于将所述移位模块输出的结果截位后输出。

可以理解的是,分析式(5),其实可以将其分解成两部分,即

2048y(n)=Zero(n)-Pole(n) (6)

式(6)中

Zero(n)=10x(n)+3x(n-1)-6x(n-2)-3x(n-3)+x(n-4) (7)

Pole(n)=[1024y(n-1)+1535y(n-2)-512y(n-3)+128y(n-4)] (8)

y(n)=[Zero(n)-Pole(n)]/2048 (9)

因此,可以将极点系数的运算看成计算式(8)的运算,而计算式(8)同样可以看成是一个没有反馈的实现结构。整个分数阶积分器系统的反馈结构则体现在计算式(9)的过程中。计算式(8)的FPGA实现的过程与计算式(7)的过程没有什么本质的区别,同样是一个典型的乘加运算。

优选地,所述FPGA模块102,还包括:

第一移位相加子模块,用于实现所述零点系数的常系数乘法运算;

第一求和子模块,用于对所述第一移位相加子模块的运算结果求和,以输出零点系数的FPGA实现结果;

第二移位相加子模块,用于实现所述极点系数的常系数乘法运算;

第二求和子模块,用于对所述第二移位相加子模块的运算结果求和,以输出极点系数的FPGA实现结果。

零点系数的FPGA实现和极点系数的FPGA实现都可完全看作一个FIR系统,因此可完全采用FIR滤波器实现时所使用的方法。需要注意的是,由于IIR滤波器的反馈结构特性,需要实现零点系数及极点系数的运算满足严格的时序要求。也就是说,要求在计算零/极点运算式时不出现时延,这一结构特点实际上限制了系统的实现速度。本发明中的零点系数运算中采用移位相加实现常系数乘法运算。所谓移位相加法,就是使用移位运算及加、减法运算来实现常系数乘法运算的方法。在二进制运算中,当常系数是2的整数次幂次方时,可以采用左移相应位数来实现相应的乘法运算。比如,左移一位相当于乘以2;左移2位,相当于乘以4.如果能将常系数分解成多个2的整数次幂的数相加的形式,则可以采用移位及加减法操作来实现常系数乘法操作。下面列举几个常系数乘法运算实例。

A×3=A×(2+1)=A左移1位+A

A×9=A×(8+1)=A左移3位+A

A×24=A×(8+16)=A左移3位+A左移4位。

具体实践中,还对本实用新型提供的这种分数阶积分器的FPGA实现进行了测试仿真,仿真结果显示采用FPAG所实现的分数阶积分器能够实现很好的滤波器功能。实测结果与理论结果吻合,达到了预期的滤波效果。

综上所述,本实用新型提供的技术方案,不仅为分数阶理论在实际FIR滤波器的应用提供了一个有效的解决方案,还具有现实的理论意义和应用价值。

以上所述,仅为本实用新型的具体实施方式,但本实用新型的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本实用新型揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本实用新型的保护范围之内。因此,本实用新型的保护范围应以所述权利要求的保护范围为准。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“多个”指两个或两个以上,除非另有明确的限定。

一种基于FPGA实现的分数阶积分器专利购买费用说明

专利买卖交易资料

Q:办理专利转让的流程及所需资料

A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。

1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。

2:按规定缴纳著录项目变更手续费。

3:同时提交相关证明文件原件。

4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。

Q:专利著录项目变更费用如何缴交

A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式

Q:专利转让变更,多久能出结果

A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。

动态评分

0.0

没有评分数据
没有评价数据
×

打开微信,点击底部的“发现”

使用“扫一扫”即可将网页分享至朋友圈

×
复制
用户中心
我的足迹
我的收藏

您的购物车还是空的,您可以

  • 微信公众号

    微信公众号
在线留言
返回顶部