[发明专利]一种浮点数据处理方法、装置及存储介质有效
申请号: | 202110938937.3 | 申请日: | 2021-08-16 |
公开(公告)号: | CN113377334B | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 郇丹丹;赵继业;李祖松 | 申请(专利权)人: | 北京微核芯科技有限公司 |
主分类号: | G06F7/57 | 分类号: | G06F7/57 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 张梦瑶 |
地址: | 100190 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 浮点 数据处理 方法 装置 存储 介质 | ||
1.一种浮点数据处理方法,其特征在于,包括:
当浮点数据由除浮点运算部件和浮点寄存器堆部件之外的部件输入至浮点寄存器堆部件时,对所述浮点数据进行拆分处理以将所述浮点数据的格式由浮点原始格式转换为浮点内部格式;其中,浮点内部格式下浮点数据所指示的数值与浮点原始格式下浮点数据所指示的数值相等;
利用浮点运算部件对浮点寄存器堆部件中格式为浮点内部格式的浮点数据进行浮点运算以得到运算结果,所述运算结果的格式为浮点内部格式,以及,所述浮点运算部件在对浮点数据进行运算时,所述浮点数据的格式均为浮点内部格式;
其中,当所述浮点原始格式为规格化数时,所述拆分处理包括:从所述浮点原始格式的浮点数据中拆分出符号位、阶码、和尾数,并对所述阶码增加一位数,且增加一位后的阶码与增加一位前的阶码所指示的数值相等,以及将所述阶码转换为原码;
当所述浮点原始格式为非规格化数,所述拆分处理包括:对所述浮点原始格式的浮点数据进行规格化处理,从规格化处理后的浮点数据中拆分出符号位、阶码、和尾数,并将所述阶码转换为原码。
2.根据权利要求1所述的浮点数据处理方法,所述浮点原始格式满足IEEE 754标准数据格式和BF16数据格式。
3.根据权利要求2所述的浮点数据处理方法,其特征在于,当所述浮点原始格式为规格化数,所述拆分处理包括:从所述浮点原始格式的浮点数据中拆分出符号位、阶码、和尾数,以及,先对所述阶码增加一位数,且增加一位后的阶码对应的原码所指示的数值与增加一位前的阶码对应的原码所指示的数值相等,之后,再将增加一位后的阶码转换为原码。
4.根据权利要求2所述的浮点数据处理方法,其特征在于,当所述浮点原始格式为规格化数时,所述拆分处理包括:从所述浮点原始格式的浮点数据中拆分出符号位、阶码、和尾数,以及,先将所述阶码转换为原码,再在原码格式下的阶码的最高位之前增加一位数,以将阶码原码转换为增加一位后的阶码原码,且增加一位前的阶码原码与增加一位后的阶码原码表示的数值相等。
5.根据权利要求1所述的浮点数据处理方法,其特征在于,所述规格化处理包括:将所述浮点原始格式的尾数用0进行第一预设位数的左移位,并将差值所对应的二进制数作为所述浮点内部格式下浮点数据的阶码,且所述浮点内部格式下浮点数据的阶码的位宽为浮点原始格式的浮点数据的阶码位宽加一;
其中,所述差值由设定值与第一预设位数相减得出;所述第一预设位数为所述浮点原始格式的尾数从首位数的第一个1之前的零的个数加一;其中,所述设定值和所述第一预设位数均为十进制数,所述设定值的取值规则包括:当所述浮点数据为单精度时,所述设定值等于129;当所述浮点数据为双精度时,所述设定值等于1025;当所述浮点数据为半精度时,所述设定值等于17。
6.根据权利要求2所述的浮点数据处理方法,其特征在于,所述方法还包括:
浮点运算部件将运算结果传输至所述浮点寄存器堆部件中存储,所述运算结果的格式不进行转换;
浮点寄存器堆部件输出所述运算结果至除所述浮点运算部件和浮点寄存器堆部件之外的部件时,对所述运算结果进行合并处理以将所述浮点内部格式转换为所述浮点原始格式;其中,浮点原始格式下运算结果所指示的数值与浮点内部格式下运算结果所指示的数值相等。
7.根据权利要求6所述的浮点数据处理方法,其特征在于,所述合并处理包括:将所述浮点内部格式的阶码去除一位,并将所述符号位、去除一位后的阶码、和尾数进行合并。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京微核芯科技有限公司,未经北京微核芯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110938937.3/1.html,转载请声明来源钻瓜专利网。