一种计算7位精度浮点平方根倒数值的系统及方法技术方案

技术编号:32822069 阅读:20 留言:0更新日期:2022-03-26 20:20
本发明专利技术涉及数据处理技术领域,具体涉及一种计算7位精度浮点平方根倒数值的系统及方法,包括以下步骤:S1获取待解析浮点数据,利用数据解析部件判断浮点数据类型;S2判断异常数据的计算结果和异常标志位,并将正常数据进入DEN处理;S3根据DEN传来数据的阶码值的最低位和尾数的高6位,查表得到结果尾数的高7位;S4使用DEN传来数据的阶码值,计算结果的阶码值,最终根据数据类型选择计算结果输出。本发明专利技术用于快速计算浮点平方根倒数的7位精度值并实现非规格化浮点数的计算,提高了硬件处理效率。提高了硬件处理效率。提高了硬件处理效率。

【技术实现步骤摘要】
一种计算7位精度浮点平方根倒数值的系统及方法


[0001]本专利技术涉及数据处理
,具体涉及一种计算7位精度浮点平方根倒数值的系统及方法。

技术介绍

[0002]浮点数,是属于有理数中某特定子集的数的数字表示,在计算机中用以近似表示任意某个实数。具体的说,这个实数由一个整数或定点数(即尾数)乘以某个基数(计算机中通常是2)的整数次幂得到,这种表示方法类似于基数为10的科学计数法,而浮点型数据分为浮点型常量和浮点型变量。
[0003]现有技术中一些硬件系统不支持非规格化浮点数据处理,由软件对非规格化浮点数进行处理将带来极大的性能损失;一些硬件系统将非规格化数当作0来处理,会产生额外的除以0异常和NaN异常,需要进入异常处理流程刷新流水线,硬件处理效率低;一些硬件系统将非规格化数当作0来处理,实际非规格化数是数值比较小的数,会损失计算精度;当前主流硬件系统使用平方根倒数速算法,计算7位精度数值需要若干拍,且不支持非规格化数据处理。因此本文提供一种计算7位精度浮点平方根倒数值的系统及方法。

技术实现思路

[0004]针对现有技术的不足,本专利技术公开了一种计算7位精度浮点平方根倒数值的系统及方法,用于快速计算浮点平方根倒数的7位精度值并实现非规格化浮点数的计算,提高硬件处理效率。
[0005]本专利技术通过以下技术方案予以实现:
[0006]第一方面,本专利技术公开了一种计算7位精度浮点平方根倒数值的方法,包括以下步骤:
[0007]S1获取待解析浮点数据,利用数据解析部件判断浮点数据类型;
[0008]S2判断异常数据的计算结果和异常标志位,并将正常数据进入DEN处理;
[0009]S3根据DEN传来数据的阶码值的最低位和尾数的高6位,查表得到结果尾数的高7位;
[0010]S4使用DEN传来数据的阶码值,计算结果的阶码值,最终根据数据类型选择计算结果输出。
[0011]更进一步的,所述方法中,浮点数据类型包括:正规格化数、正非规格化数、负数、正零、负零、正无穷、正无穷、通知的非数和安静的非数。
[0012]更进一步的,所述方法中,浮点数据中异常数据为:负数、正零、负零、正无穷、正无穷、通知的非数和安静的非数。
[0013]更进一步的,所述方法中,根据IEEE

754标准来判断异常数据的计算结果和异常标志位。
[0014]更进一步的,所述方法中,DEN处理正常数据时,使用数字符串头零功能、字符串左
移n位功能和加法功能。
[0015]更进一步的,所述方法中,DEN处理正常数据时,查找Denormal数尾数有多少个头0,其格式为00

1.xxx,并将尾数移位成1xxxx格式,同时计算尾数移位后的等价阶码值。
[0016]更进一步的,所述方法中,使用DEN传来数据的阶码值exp,去计算结果的阶码为(3*2m
‑2‑2–
{1

b0,exp}),其中(3*2m
‑2–
2)为常数,然后使用1个加法器快速算出结果阶码值;
[0017]其中b是浮点数据的指数偏移值,该值等于2m
‑1‑
1,m是存储指数的比特长度。
[0018]第二方面,本专利技术公开了一种计算7位精度浮点平方根倒数值的系统,所述系统用于实现第一方面所述的计算7位精度浮点平方根倒数值的方法,包括数据解析部件DIFF、异常数据处理部件EXC、非规格化浮点数规格化处理部件DEN、查表计算尾数部件TAB和阶码计算部件EXP。
[0019]更进一步的,所述DIFF用于解析浮点数据为哪一种数据;
[0020]所述EXC根据IEEE

754标准来判断异常数据的计算结果和异常标志位;
[0021]所述DEN包含数字符串头零功能、字符串左移n位功能和加法功能;
[0022]所述TAB根据所述DEN传来数据的阶码值的最低位exp[0]和尾数的高6位sig[MSB:

6]去查表,得到结果尾数的高7位;
[0023]所述EXP使用所述DEN传来数据的阶码值快速算出结果阶码值。
[0024]本专利技术的有益效果为:
[0025]本专利技术可1/2拍计算出IEEE

754规定浮点数的7位精度平方根倒数值;硬件处理非规格化数,极大的提高了性能。
[0026]本专利技术不把非规格化数当成0处理,不会产生额外的除以0异常和NaN异常,提高流水线效率。
[0027]本专利技术把非规格化数当作极小数来处理,提高计算精度;规格化数据,非规格化数据,异常数据并行处理,效率高;设计简单,硬件实现代价小。
附图说明
[0028]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0029]图1是一种计算7位精度浮点平方根倒数值的方法的原理步骤图;
[0030]图2是一种计算7位精度浮点平方根倒数值的系统的原理图;
[0031]图3是本专利技术实施例的执行节拍示意图。
具体实施方式
[0032]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0033]实施例1
[0034]本实施例公开如图1所示的一种计算7位精度浮点平方根倒数值的方法,包括以下步骤:
[0035]S1获取待解析浮点数据,利用数据解析部件判断浮点数据类型;
[0036]S2判断异常数据的计算结果和异常标志位,并将正常数据进入DEN处理;
[0037]S3根据DEN传来数据的阶码值的最低位和尾数的高6位,查表得到结果尾数的高7位;
[0038]S4使用DEN传来数据的阶码值,计算结果的阶码值,最终根据数据类型选择计算结果输出。
[0039]本实施例浮点数据类型包括:正规格化数、正非规格化数、负数、正零、负零、正无穷、正无穷、通知的非数和安静的非数。
[0040]本实施例浮点数据中异常数据为:负数、正零、负零、正无穷、正无穷、通知的非数和安静的非数。
[0041]本实施例根据IEEE

754标准来判断异常数据的计算结果和异常标志位。
[0042]本实施例中,DEN处理正常数据时,使用数字符串头零功能、字符串左移n位功能和加法功能。
[0043]本实施例更进一步实施时,DEN处理正常数据,查找Denormal数尾数有多本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算7位精度浮点平方根倒数值的方法,其特征在于,所述方法包括以下步骤:S1获取待解析浮点数据,利用数据解析部件判断浮点数据类型;S2判断异常数据的计算结果和异常标志位,并将正常数据进入DEN处理;S3根据DEN传来数据的阶码值的最低位和尾数的高6位,查表得到结果尾数的高7位;S4使用DEN传来数据的阶码值,计算结果的阶码值,最终根据数据类型选择计算结果输出。2.根据权利要求1所述的计算7位精度浮点平方根倒数值的方法,其特征在于,所述方法中,浮点数据类型包括:正规格化数、正非规格化数、负数、正零、负零、正无穷、正无穷、通知的非数和安静的非数。3.根据权利要求2所述的计算7位精度浮点平方根倒数值的方法,其特征在于,所述方法中,浮点数据中异常数据为:负数、正零、负零、正无穷、正无穷、通知的非数和安静的非数。4.根据权利要求1所述的计算7位精度浮点平方根倒数值的方法,其特征在于,所述方法中,根据IEEE

754标准来判断异常数据的计算结果和异常标志位。5.根据权利要求1所述的计算7位精度浮点平方根倒数值的方法,其特征在于,所述方法中,DEN处理正常数据时,使用数字符串头零功能、字符串左移n位功能和加法功能。6.根据权利要求5所述的计算7位精度浮点平方根倒数值的方法,其特征在于,所述方法中,DEN处理正常数据时,查找Denormal数尾数有多少个头0,其格式为00

1.xxx,并将尾数移位成1xxxx...

【专利技术属性】
技术研发人员:张弛
申请(专利权)人:广东赛昉科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1