CN113515259B - 一种适用于浮点格式的复数的近似取模实现电路及方法 - Google Patents

一种适用于浮点格式的复数的近似取模实现电路及方法 Download PDF

Info

Publication number
CN113515259B
CN113515259B CN202110567692.8A CN202110567692A CN113515259B CN 113515259 B CN113515259 B CN 113515259B CN 202110567692 A CN202110567692 A CN 202110567692A CN 113515259 B CN113515259 B CN 113515259B
Authority
CN
China
Prior art keywords
floating point
floating
module
maximum value
minimum value
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
CN202110567692.8A
Other languages
English (en)
Other versions
CN113515259A (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN202110567692.8A priority Critical patent/CN113515259B/zh
Publication of CN113515259A publication Critical patent/CN113515259A/zh
Application granted granted Critical
Publication of CN113515259B publication Critical patent/CN113515259B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/4806Computations with complex numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30025Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明提供的一种适用于浮点格式的复数的近似取模实现电路及方法,通过流水线的方式进行浮点数格式的复数取模运算,数据输出延时相比传统方案降低一半,并且运算方式只有加法和乘法避免了资源消耗过大的开方运算,减少了运算处理所需消耗的资源。该实现电路中的倍数比较模块对于浮点数格式的复数提前进行的划分分组,参数选择模块来选择对应的倍数系数,从而简化现有技术的电路。

Description

一种适用于浮点格式的复数的近似取模实现电路及方法
技术领域
本发明属于数字信号处理技术领域,具体涉及一种适用于浮点格式的复数的近似取模实现电路及方法。
背景技术
在雷达、通信等领域数字信号处理过程中,所采用的信号数据经常是复数的形式其中包含了幅度信息和相位信息,其中涉及到的各种计算经常需要用到信号的幅度信息就需要进行复数取模运算,常规的复数取模是非线性的,实现起来非常复杂,并且无论是软件实现还是硬件实现的方式都需要消耗大量的运算,运算处理起来较慢,无法满足目前雷达信号处理所需要的实时性。
在硬件实现复数取模算法一般采用CORDIC算法。从广义上讲,CORDIC算法提供了一种数学计算的逼近方法。由于它最终可分解为一系列的加减和移位操作,故非常适合硬件实现。CORDIC算法的硬件实现可以分为串行和并行,对于串行算法需要多次的迭代才能完成一次取模运算,而且其加减操作对于浮点数格式数据进行计算时也同样会消耗大量资源。并行CORDIC算法采用流水线的实现方式,面积很大,实现成本很高,对于连续串行输入数据比较有效,有时候需要很多个时钟周期才能出结果。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种适用于浮点格式的复数的近似取模实现电路及方法。本发明要解决的技术问题通过以下技术方案实现:
第一方面,本发明提供的一种适用于浮点格式的复数的近似取模实现电路包括:浮点数取模模块、浮点数比较模块、浮点数倍数比较模块、参数选择模块、浮点乘法运算模块以及浮点加法运算模块;
所述浮点数取模模块,用于对输入浮点数格式的复数取模;
所述浮点数比较模块,用于将取模之后的实部和虚部进行比较,确定最大值以及最小值,
所述浮点数倍数比较模块,用于确定所述最大值与最小值的倍数关系,基于倍数关系,在预设的多个倍数范围中确定所述倍数关系所在的目标倍数范围;
所述参数选择模块,用于确定与目标倍数范围对应的取模系数;
所述浮点乘法运算模块,用于基于所述取模系数,分别对所述最大值与所述最小值进行浮点数格式的乘法运算处理,获得最大值的运算结果以及最小值的运算结果;
所述浮点加法运算模块,用于将最大值的运算结果与最小值的运算结果进行加法运算,获得单精度浮点数的近似取模运算结果。
可选的,所述浮点数取模模块具体用于:
对输入浮点数格式的复数的负符号位取反,正符号位保持不变,完成取模。
可选的,所述浮点数倍数比较模块,具体用于:
对于最大值以及最小值的阶码以及尾码进行分析运算,得两个浮点数的倍数关系。
可选的,所述浮点数倍数比较模块,具体用于:
计算最大值的阶码与最小值阶码之间的差值;
基于所述差值,以及最大值的尾码与最小值的尾码之间的关系,确定最大值与最小值之间的倍数关系。
可选的,所述浮点数倍数比较模块,具体用于:
基于所述差值,以及最大值的尾码与最小值的尾码之间的关系,使用倍数计算公式,确定最大值与最小值之间的倍数关系;
所述倍数计算公式为:
i=(Afa<Bfa)?expo_sub-1:expo_sub
2i<k<2i+1
其中,Afa表示最大值的尾码,Bfa表示最小值的尾码,expo_sub表示最大值的阶码与最小值阶码之间的差值,k表示倍数。
可选的,所述预设的多个倍数范围分别为:
1~(1.33~1.55)、(1.33~1.55)~2、2~4、4~8、8~16、16~正无穷。
第二方面,本发明提供的一种适用于浮点格式的复数的近似取模实现方法,提供第一方面的复数取模近似算法实现电路,所述复数取模近似算法实现方法包括:将待取模浮点格式的复数输入所述复数取模近似算法实现电路,得到所述待取模的浮点格式的复数的取模近似值。
本发明提供的一种适用于浮点格式的复数的近似取模实现电路及方法,通过流水线的方式进行浮点数格式的复数取模运算,数据输出延时可以满足实时性的要求,相比于传统方案降低一半。并且运算方式只有加法和乘法避免了资源消耗过大的开方运算,减少了运算处理所需消耗的资源。该实现电路中的倍数比较模块对于浮点数格式的复数提前进行的划分分组,参数选择模块来选择对应的倍数系数,从而简化现有技术的电路。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种适用于浮点格式的复数的近似取模实现电路的结构图;
图2是本发明实施例提供的浮点数格式示意图;
图3是现有技术的浮点数取模直接运算电路的结构图;
图4a是本发明实施例提供5组参数近似取模仿真效果图;
图4b表示本发明实施例的算法仿真效果图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
实施例一
如图1所示,本发明提供的一种适用于浮点格式的复数的近似取模实现电路包括:浮点数取模模块、浮点数比较模块、浮点数倍数比较模块、参数选择模块、浮点乘法运算模块以及浮点加法运算模块;
所述浮点数取模模块,用于对输入浮点数格式的复数取模;
其中,可以对输入浮点数格式的复数的负符号位取反,正符号位保持不变,完成取模。
所述浮点数比较模块,用于将取模之后的实部和虚部进行比较,确定最大值以及最小值;
所述浮点数倍数比较模块,用于确定所述最大值与最小值的倍数关系,基于倍数关系,在预设的多个倍数范围中确定所述倍数关系所在的目标倍数范围;
其中,所述预设的多个倍数范围分别为:
1~(1.33~1.55)、(1.33~1.55)~2、2~4、4~8、8~16、16~正无穷。
所述参数选择模块,用于确定与目标倍数范围对应的取模系数;
所述浮点乘法运算模块,用于基于所述取模系数,分别对所述最大值与所述最小值进行浮点数格式的乘法运算处理,获得最大值的运算结果以及最小值的运算结果;
所述浮点加法运算模块,用于将最大值的运算结果与最小值的运算结果进行加法运算,获得单精度浮点数的近似取模运算结果。
可以理解,常规的求模运算是非线性的,硬件实现较为复杂,且输出延迟大,消耗资源多,为此,在很多应用场合常采用近似求模算法,通过牺牲一定的精度来获得更快的计算速度和更少的资源消耗。
一般情况下,数据求模直接运算的公式为:
Figure BDA0003081356340000051
本发明的复数求模近似算法将上述公式简化为:
∣x(t0)|=a|xI|+b|xQ
上述可见,本发明使用复数取模近似算法可以简化计算电路。
传统的浮点数取模运算主要是通过直接运算得到的,将复数的虚部和实部进行平方后求和然后再进行开方操作,其电路图如图2所示。依据传统的近似求模电路结构需要同时进行多组参数的运算然后再进行结果比较。
参考图1,可以看出本发明的实现电路主体只有两个浮点乘法器和浮点加法器,从本发明的电路结构上也可以看出所消耗的资源比直接进行运算减少了开平方操作。这种电路实现的主要原因是在于倍数比较模块对于数据分组提前进行的划分,然后根据多路参数选择模块来选择对面倍数的参数,简化了电路。
本发明提供的一种适用于浮点格式的复数的近似取模实现电路通过流水线的方式进行浮点数格式的复数求模运算,数据输出延时可以满足实时性的要求,并且运算方式只有加法和乘法避免了资源消耗过大的开方运算,减少了运算处理所需消耗的资源。该实现电路中的倍数比较模块对于浮点数格式的复数提前进行的划分分组,参数选择模块来选择对应的倍数系数,从而简化现有技术的电路。
实施例二
作为本发明一种可选的实施例,所述浮点数倍数比较模块,具体用于:
对于最大值以及最小值的阶码以及尾码进行分析运算,得两个浮点数的倍数关系。
实施例三
作为本发明一种可选的实施例,所述浮点数倍数比较模块,具体用于:
计算最大值的阶码与最小值阶码之间的差值;
基于所述差值,以及最大值的尾码与最小值的尾码之间的关系,确定最大值与最小值之间的倍数关系。
实施例四
作为本发明一种可选的实施例,所述浮点数倍数比较模块,具体用于:
基于所述差值,以及最大值的尾码与最小值的尾码之间的关系,使用倍数计算公式,确定最大值与最小值之间的倍数关系;
所述倍数计算公式为:
i=(Afa<Bfa)?expo_sub-1:expo_sub
2i<k<2i+1
其中,Afa表示最大值的尾码,Bfa表示最小值的尾码,expo_sub表示最大值的阶码与最小值阶码之间的差值,k表示倍数。
浮点数的数据格式如图3,主要由符号位、阶码以及尾码组成,通过阶码求差值,以及尾码比较大小可以得到两个数的倍数关系。我们根据这种倍数划分为5个范围,对应着五种近似求模算法。
由于上述简化过程,不可避免会出现一些相对误差,其误差可以表示为:
Figure BDA0003081356340000071
由公式可知,需要改变a和b的数值来让误差达到最小,但是对这个公式进行仿真分析,当只有1组参数时,最小可以达到的误差是3.96%。所以一般情况下,将其函数进行分段计算参数,降低估计误差。
已知A和B为浮点数且A>B,k为A与B的倍数关系首先求得其阶码的差值,差值为:
expo_sub=Aexp-Bexp
再根据两个数据尾码的关系,以及阶码的差量得到其相差的倍数k的关系。根据k的值划分为k>16、4<k<16、2<k<4和1<k<2四个区间,在1<k<2区间内根据尾码信息判断进一步将区间划分为1<k<1.33和1.33<k<2。
进一步进行划分的方法如下所示:
a=(data_max_r[21:0]>=data_min_r[21:0])&&(data_max_r[22]^data_min_r[22])
b=(expo_sub_r==1&&data_max_r[22]==data_min_r[22])
mod0_sel=a||b
用本发明的实现电路可以进一步将其分成1<k<(1.33~1.5)和(1.33~1.5)<k<2,具体的倍数具体数值有关,这就要求在计算两个区间的时候第一个区间在1~1.5之间和第二个区间1.33~2的时候都具有精度很高的计算参数。
在每个倍数范围,具体的复数求模近似算法的公式如下:
当1<k<1.5时:
abs_r=0.775175*xmax+0.6356*xmin
当1.33<k<2时:
abs_r=0.844550*xmax+0.5406*xmin
当2<k<4时:
abs_r=0.94*xmax+0.35*xmin
当4<k<16时:
abs_r=0.9899*xmax+0.156*xmin
当k>16时:
abs_r=xmax
本发明通过复数取模近似算法实现电路,可以实现浮点格式的复数近似求模,近似求模过程根据浮点数的数据格式特性,结合5中不同的误差特性曲线的近似求模算法,采用两个浮点乘法器和一个浮点加法器实现了复数取模运算。可以实现0.35%的相对误差,是同类型其他算法精度的2.5~8.5倍,与基于CORDIC算法进行的取模运算相比,所消耗的时钟周期与资源消耗远远低于后者。
实施例五
本发明提供的一种适用于浮点格式的复数的近似取模实现方法,提供实施例一至实施例四任一个实施例的复数取模近似算法实现电路,实现方法包括:
将待取模浮点格式的复数输入所述复数取模近似算法实现电路,得到所述待取模的浮点格式的复数的取模近似值。
参考图4a以及图4b,参考图4a为5条参数近似取模的误差特性曲线,参考图4b为在根据倍数选择参数之后整体算法的误差特性曲线。为了更加直观的显示本发明提供的近似取模方法的效果,请参考表1:
表1
资源 本发明的电路结构 直接计算结构
LUT 548 968
FF 1007 1899
DSP 5 6
时钟周期 22 51
与直接运算结构相比,表1中展示本发明提供的算法硬件结构与直接运算的硬件结构的资源以及时钟消耗对比。由表1可知,本发明提供的电路结构以及方法在资源以及时钟消耗更少。
本发明可以采用现场可编程门阵列(FPGA)实现整个近似取模算法,克服了现有技术基于软件实现方式速度慢的问题,使得本发明速度快,硬件成本小,可以适用于图像处理和雷达探测等对数据处理速度要求较高的领域。可以通过流水线的方式进行数据求模运算,数据输出延时为22个时钟周期满足实时性的要求,并且运算方式只有加法和乘法避免了资源消耗过大的开方运算,减少了运算处理所需消耗的资源。浮点数数据格式的复数求模近似算法,可以应用于浮点数格式复数进行取模运算,并且运算精度为0.32%,相比于同类近似算法精度有了很大的提高。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (7)

1.一种适用于浮点格式的复数的近似取模实现电路,其特征在于,包括:浮点数取模模块、浮点数比较模块、浮点数倍数比较模块、参数选择模块、浮点乘法运算模块以及浮点加法运算模块;
所述浮点数取模模块,用于对输入浮点数格式的复数取模;
所述浮点数比较模块,用于将取模之后的实部和虚部进行比较,确定最大值以及最小值,
所述浮点数倍数比较模块,用于确定所述最大值与最小值的倍数关系,基于倍数关系,在预设的多个倍数范围中确定所述倍数关系所在的目标倍数范围;
所述参数选择模块,用于确定与目标倍数范围对应的取模系数;
所述浮点乘法运算模块,用于基于所述取模系数,分别对所述最大值与所述最小值进行浮点数格式的乘法运算处理,获得最大值的运算结果以及最小值的运算结果;
所述浮点加法运算模块,用于将最大值的运算结果与最小值的运算结果进行加法运算,获得单精度浮点数的近似取模运算结果。
2.根据权利要求1所述的一种适用于浮点格式的复数的近似取模实现电路,其特征在于,所述浮点数取模模块具体用于:
对输入浮点数格式的复数的负符号位取反,正符号位保持不变,完成取模。
3.根据权利要求1所述的一种适用于浮点格式的复数的近似取模实现电路,其特征在于,所述浮点数倍数比较模块,具体用于:
对于最大值以及最小值的阶码以及尾码进行分析运算,得两个浮点数的倍数关系。
4.根据权利要求3所述的一种适用于浮点格式的复数的近似取模实现电路,其特征在于,所述浮点数倍数比较模块,具体用于:
计算最大值的阶码与最小值阶码之间的差值;
基于所述差值,以及最大值的尾码与最小值的尾码之间的关系,确定最大值与最小值之间的倍数关系。
5.根据权利要求4所述的一种适用于浮点格式的复数的近似取模实现电路,其特征在于,所述浮点数倍数比较模块,具体用于:
基于所述差值,以及最大值的尾码与最小值的尾码之间的关系,使用倍数计算公式,确定最大值与最小值之间的倍数关系;
所述倍数计算公式为:
i=(Afa<Bfa)?expo_sub-1:expo_sub
2i<k<2i+1
其中,Afa表示最大值的尾码,Bfa表示最小值的尾码,expo_sub表示最大值的阶码与最小值阶码之间的差值,k表示倍数。
6.根据权利要求1所述的一种适用于浮点格式的复数的近似取模实现电路,其特征在于,所述预设的多个倍数范围分别为:
1~1.5、1.33~2、2~4、4~8、8~16、16~正无穷。
7.一种适用于浮点格式的复数的近似取模实现方法,提供权利要求1至权利要求6任一项所述的一种适用于浮点格式的复数的近似取模实现电路,其特征在于,所述复数取模近似算法实现方法包括:将待取模浮点格式的复数输入所述复数取模近似算法实现电路,得到所述待取模的浮点格式的复数的取模近似值。
CN202110567692.8A 2021-05-24 2021-05-24 一种适用于浮点格式的复数的近似取模实现电路及方法 Active CN113515259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110567692.8A CN113515259B (zh) 2021-05-24 2021-05-24 一种适用于浮点格式的复数的近似取模实现电路及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110567692.8A CN113515259B (zh) 2021-05-24 2021-05-24 一种适用于浮点格式的复数的近似取模实现电路及方法

Publications (2)

Publication Number Publication Date
CN113515259A CN113515259A (zh) 2021-10-19
CN113515259B true CN113515259B (zh) 2022-09-09

Family

ID=78064762

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110567692.8A Active CN113515259B (zh) 2021-05-24 2021-05-24 一种适用于浮点格式的复数的近似取模实现电路及方法

Country Status (1)

Country Link
CN (1) CN113515259B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273090A (zh) * 2017-05-05 2017-10-20 中国科学院计算技术研究所 面向神经网络处理器的近似浮点乘法器及浮点数乘法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1444750A1 (ru) * 1985-11-14 1988-12-15 Специальное Проектно-Конструкторское Бюро "Дискрет" Одесского Политехнического Института Устройство дл вычислени модул комплексного числа
CN108737301B (zh) * 2018-05-23 2020-08-07 南通大学 一种基于b样条神经网络的宽带通信发射机指纹估计方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273090A (zh) * 2017-05-05 2017-10-20 中国科学院计算技术研究所 面向神经网络处理器的近似浮点乘法器及浮点数乘法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
改进的不恢复余数的浮点开方算法的研究与FPGA实现;王文广等;《现代电子技术》;20070815(第16期);全文 *

Also Published As

Publication number Publication date
CN113515259A (zh) 2021-10-19

Similar Documents

Publication Publication Date Title
Juang et al. A lower error and ROM-free logarithmic converter for digital signal processing applications
CN107305484B (zh) 一种非线性函数运算装置及方法
US9552189B1 (en) Embedded floating-point operator circuitry
CN111984227B (zh) 一种针对复数平方根的近似计算装置及方法
CN108196822A (zh) 一种双精度浮点开方运算的方法及系统
Juang et al. High-performance logarithmic converters using novel two-region bit-level manipulation schemes
CN111078187B (zh) 一种针对单精度浮点数的任意次方根求解方法及其求解器
Ramachandran et al. Performance analysis of mantissa multiplier and Dadda tree multiplier and implementing with DSP architecture
Hussain et al. An efficient and fast softmax hardware architecture (EFSHA) for deep neural networks
CN104135457B (zh) 基于改进的cordic算法的数字鉴相方法及装置
WO2022170811A1 (zh) 一种适用于混合精度神经网络的定点乘加运算单元及方法
US20210064976A1 (en) Neural network circuitry having floating point format with asymmetric range
CN111984226B (zh) 一种基于双曲cordic的立方根求解装置及求解方法
JPH09325955A (ja) 二乗和の平方根演算回路
CN113515259B (zh) 一种适用于浮点格式的复数的近似取模实现电路及方法
EP3610367B1 (en) Energy-efficient variable power adder and methods of use thereof
CN107657078B (zh) 基于fpga的超声相控阵浮点聚焦发射实现方法
CN113778378B (zh) 一种求解复数n次方根的装置和方法
CN113791753A (zh) 一种基于fpga的支持快速除法的可编程dsp
Naregal et al. Design and implementation of high efficiency vedic binary multiplier circuit based on squaring circuits
Vinh et al. FPGA Implementation of Trigonometric Function Using Loop-Optimized Radix-4 CORDIC
Xu et al. Lightweight and efficient hardware implementation for Saber using NTT multiplication
KR20170030327A (ko) 연산을 제어하기 위한 장치 및 방법
Saha et al. Area efficient architecture of Hyperbolic functions for high frequency applications
Tian et al. A low-latency power series approximate computing and architecture for co-calculation of division and square root

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