数据处理方法技术

技术编号:39734290 阅读:8 留言:0更新日期:2023-12-17 23:36
本申请实施例提供了一种数据处理方法

【技术实现步骤摘要】
数据处理方法、装置、电子设备及计算机可读存储介质


[0001]本申请涉及嵌入式微处理器
,具体而言,本申请涉及一种数据处理方法

装置

电子设备及计算机可读存储介质


技术介绍

[0002]嵌入式微处理器是嵌入式系统的核心部分,直接关系到整个嵌入式系统的性能

自微处理器的问世以来,嵌入式系统也得到了飞速的发展,嵌入式微处理器担负着控制

系统工作的重要任务,使宿主设备功能智能化

灵活设计和操作简便

[0003]嵌入式微处理器都存在其对应的指令系统,指令系统的功能也决定了由该微处理器构成的计算机系统及其基本功能

指令系统中所设计的每条指令都对应着微处理器要完成的一种规定功能操作,即这些指令功能的实现都是由微处理器中的物理器件完成的

指令功能的执行速度将直接影响微处理器的性能

例如,
FSCALE
指令
(
一种指数运算指令
)
可以用于实现指数运算,微处理器一般通过复用加法和乘法来执行
FSCALE
指令
(
即目标指数运算指令
)
,存在运算速度慢

功耗高的问题


技术实现思路

[0004]本申请实施例提供了一种数据处理方法

装置

电子设备及计算机可读存储介质,可以解决嵌入式微处理器在执行
FSCALE
指令的过程中,运算速度慢

功耗高的问题

所述技术方案如下:
[0005]根据本申请实施例的一个方面,提供了一种数据处理方法,该方法包括:
[0006]获取用户输入的源数据和源数据对应的目标运算参数;其中,源数据为浮点数;
[0007]若目标运算参数为整数,针对源数据和目标运算参数进行如下运算操作,以执行目标指数运算指令,生成源数据对应的目标数据:
[0008]基于源数据的隐藏位确定源数据的格式属性;
[0009]根据格式属性和目标运算参数的数值范围针对源数据进行计算,生成移位数值

源数据的阶码的更新值

源数据的粘滞位;
[0010]基于移位数值

更新值和粘滞位,通过浮点数类型转换单元对源数据分别进行移位操作

舍入操作和阶码更新操作,生成目标数据

[0011]在一个可能的实现方式中,上述根据格式属性和目标运算参数的数值范围针对源数据进行计算,生成移位数值

源数据的阶码的更新值

源数据的粘滞位,包括:
[0012]当格式属性为非规格化浮点数,且目标运算参数为负数时,将目标运算参数的绝对值作为移位数值,并根据源数据的尾数的前导零计数

尾数的位元宽度和目标运算参数确定阶码的更新值,根据尾数的后缀零计数和目标运算参数确定粘滞位;
[0013]当格式属性为非规格化浮点数,且目标运算参数为正数时,基于尾数的前导零计数和目标运算参数的差值确定移位数值,并根据阶码的最大值

前导零计数和目标运算参数确定阶码的更新值,将粘滞位置为零;
[0014]当格式属性为非规格化浮点数,且目标运算参数等于零时,将移位数值和粘滞位置为零,阶码不进行更新

[0015]在一个可能的实现方式中,上述方法还包括:
[0016]当格式属性为规格化浮点数,且目标运算参数为负数时,根据阶码

尾数的位元宽度和目标运算参数确定移位数值和阶码的更新值,根据阶码

尾数的后缀零计数和目标运算参数确定粘滞位;
[0017]当格式属性为规格化浮点数,且目标运算参数为非负数时,将移位数值和粘滞位置为零,根据阶码的最大值

阶码和目标运算参数确定阶码的更新值

[0018]在又一个可能的实现方式中,上述基于移位数值

更新值和粘滞位,通过浮点数类型转换模块对源数据分别进行移位操作

舍入操作和阶码更新操作,生成目标数据,包括:
[0019]针对源数据的尾数基于移位数值进行移位操作,得到移位后的尾数;
[0020]基于粘滞位对移位后的尾数进行舍入操作,得到目标尾数;
[0021]基于阶码的更新值

目标尾数和源数据的符号位进行格式打包,生成目标数据

[0022]在又一个可能的实现方式中,上述基于阶码的更新值

目标尾数和源数据的符号位进行格式打包,生成目标数据,包括:
[0023]当根据移位操作和舍入操作确定需要对源数据的阶码进行二次更新,则根据目标尾数更新阶码的更新值,得到目标阶码;
[0024]基于目标阶码

目标尾数和源数据的符号位进行格式打包,生成目标数据

[0025]在另一个可能的实现方式中,上述方法还包括:
[0026]基于舍入操作对应的舍入规则

源数据在运算操作中的格式属性变更状态,生成目标数据对应的例外状态信息

[0027]在另一个可能的实现方式中,上述源数据为半精度浮点数,方法还包括:
[0028]当格式属性为非规格化浮点数,且目标运算参数为正数时,源数据对应的目标数据为规格化浮点数

非规格化浮点数或无穷大浮点数;
[0029]当格式属性为非规格化浮点数,且目标运算参数为负数时,源数据对应的目标数据为非规格化浮点数或零;
[0030]当格式属性为规格化浮点数,且目标运算参数为正数时,源数据对应的目标数据为规格化浮点数或无穷大浮点数;
[0031]当格式属性为规格化浮点数,且目标运算参数为负数时,源数据对应的目标数据为规格化浮点数

非规格化浮点数或零

[0032]根据本申请实施例的另一个方面,提供了一种数据处理装置,该装置包括:
[0033]获取模块,用于获取用户输入的源数据和源数据对应的目标运算参数;其中,源数据为浮点数;
[0034]运算模块,用于若目标运算参数为整数,针对源数据和目标运算参数进行如下运算操作,以执行目标指数运算指令,生成源数据对应的目标数据:
[0035]基于源数据的隐藏位确定源数据的格式属性;根据格式属性和目标运算参数的数值范围针对源数据进行计算,生成移位数值

源数据的阶码的更新值

源数据的粘滞位;基于移位数值

更新值和粘滞位,通过浮点数类型转换单元对源数据分别进行移位操作

舍入操作和阶码更新本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种数据处理方法,应用于处理器,包括:获取用户输入的源数据和所述源数据对应的目标运算参数;其中,所述源数据为浮点数;若所述目标运算参数为整数,针对所述源数据和目标运算参数进行如下运算操作,以执行目标指数运算指令,生成所述源数据对应的目标数据:基于所述源数据的隐藏位确定所述源数据的格式属性;根据所述格式属性和所述目标运算参数的数值范围针对所述源数据进行计算,生成移位数值

所述源数据的阶码的更新值

所述源数据的粘滞位;基于所述移位数值

所述更新值和所述粘滞位,通过浮点数类型转换单元对所述源数据分别进行移位操作

舍入操作和阶码更新操作,生成目标数据
。2.
根据权利要求1所述的方法,其特征在于,所述根据所述格式属性和所述目标运算参数的数值范围针对所述源数据进行计算,生成移位数值

所述源数据的阶码的更新值

所述源数据的粘滞位,包括:当所述格式属性为非规格化浮点数,且所述目标运算参数为负数时,将所述目标运算参数的绝对值作为移位数值,并根据所述源数据的尾数的前导零计数

所述尾数的位元宽度和目标运算参数确定所述阶码的更新值,根据所述尾数的后缀零计数和所述目标运算参数确定所述粘滞位;当所述格式属性为非规格化浮点数,且所述目标运算参数为正数时,基于所述尾数的前导零计数和目标运算参数的差值确定所述移位数值,并根据所述阶码的最大值

前导零计数和目标运算参数确定所述阶码的更新值,将所述粘滞位置为零;当所述格式属性为非规格化浮点数,且所述目标运算参数等于零时,将所述移位数值和粘滞位置为零,所述阶码不进行更新
。3.
根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述格式属性为规格化浮点数,且所述目标运算参数为负数时,根据所述阶码

所述尾数的位元宽度和目标运算参数确定移位数值和所述阶码的更新值,根据所述阶码

尾数的后缀零计数和目标运算参数确定所述粘滞位;当所述格式属性为规格化浮点数,且所述目标运算参数为非负数时,将所述移位数值和粘滞位置为零,根据所述阶码的最大值

所述阶码和目标运算参数确定所述阶码的更新值
。4.
根据权利要求1所述的方法,其特征在于,所述基于所述移位数值

所述更新值和所述粘滞位,通过浮点数类型转换模块对所述源数据分别进行移位操作

舍入操作和阶码更新操作,生成目标数据,包括:针对所述源数据的尾数基于所述移位数值进行移位操作,得到移位后的尾数;基于所述粘滞位对所述移位后的尾数进行舍入操作,得到目标尾数;基于...

【专利技术属性】
技术研发人员:王胜仁
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:

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

1