[发明专利]一种浮点数转换电路在审
申请号: | 202010111005.7 | 申请日: | 2020-02-24 |
公开(公告)号: | CN111310909A | 公开(公告)日: | 2020-06-19 |
发明(设计)人: | 王中风;徐铭阳;方超;林军 | 申请(专利权)人: | 南京大学 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06F7/483 |
代理公司: | 北京弘权知识产权代理事务所(普通合伙) 11363 | 代理人: | 逯长明;许伟群 |
地址: | 210023 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 浮点 转换 电路 | ||
本发明公开了一种浮点数转换电路,能够将基于IEEE 754规范的单精度浮点数转换为posit数据格式的单精度浮点数,即第二浮点数。在很多神经网络的训练过程中,其运算数据近似服从正态分布,可通过变换使数据集中在0附近,而本发明中的posit数据格式的单精度浮点数在神经网络训练过程中就可以在0附近保证精度,并且,本发明中posit数据格式的单精度浮点数的预设总位宽是可以调控的,因此又可以很大程度的减少数据位宽,进而减少存储所需要的资源以及读写过程所消耗的资源,提高神经网络训练的效率。
技术领域
本发明涉及计算机技术领域,尤其涉及一种浮点数转换电路。
背景技术
神经网络一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。近年来,随着深度学习技术的快速发展,神经网络的训练变得普遍并且重要,神经网络训练的速度和资源消耗也成为了对于深度学习评价的重要指标。
在以往的神经网络训练过程中,大部分的浮点数使用的都是基于IEEE 754规范的规格化单精度浮点数格式,这种数据格式通常包括符号段、指数段和尾数段,并且通常使用32位的位宽来表示,即符号段、指数段和尾数段的总位宽为32位。这种单精度浮点数可以表示一个很大范围的数值,同时也能满足神经网络训练的要求。
但是,虽然上述这种基于IEEE 754规范的单精度浮点数在精度上能够满足神经网络训练的要求,但是由于其位宽较长,在处理这种数据时需要耗费一定的时间并且消耗一定的资源,进而影响神经网络的训练速度,使神经网络训练的效率降低。
发明内容
本发明提供了一种浮点数转换电路,以解决目前使用基于IEEE 754规范的单精度浮点数造成的神经网络训练的效率低的问题。
本发明实施例提供了一种浮点数转换电路,包括:
数据获取单元,用于分别获取第一浮点数中符号段的值、指数段的值、尾数段的值、预设指数位宽和预设总位宽,所述第一浮点数为规格化数据格式的单精度浮点数;
数据转换单元,用于将所述指数段的值转换为2的补码形式,获得指数段的二进制码,以及用于将所述尾数段的值转换为二进制码,获得尾数段的二进制码,并且所述指数段的二进制码的位宽通过所述预设总位宽和所述预设指数段位宽确定;
绝对值运算器,用于对所述指数段的二进制码取绝对值,获得指数绝对值;
按位或门,用于将所述指数绝对值中符合第一预设位数的值作为输入,得到输出结果;
非门,用于对所述指数段的二进制码的最高位值取非,得到输出结果;
与门,用于将所述按位或门的输出结果和所述指数段的二进制码的最高位值作为输入,得到输出结果;
第一多路选择器,用于将所述与门的输出结果作为第一选择信号,利用所述第一选择信号得到输出结果,所述第一多路选择器的输出结果包括所述指数段的二进制码中符合第一预设位数的值或者所述指数绝对值中符合第一预设位数的值;
或门,用于将所述非门的输出结果和所述与门的输出结果作为输入,得到输出结果;
拼接单元,用于按顺序依次将所述指数段的二进制码的最高位值、所述第一多路选择器的输出结果和所述尾数段的二进制码拼接,得到输出结果;
右移位器,用于将所述指数绝对值中符合第二预设位数的值作为移位值,按照所述移位值将所述拼接单元输出结果中的每一位二进制码依次向右移动,得到输出结果;
额外移位器,用于将所述右移位器的输出结果中的每一位二进制码继续依次向右移动一位,得到输出结果;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010111005.7/2.html,转载请声明来源钻瓜专利网。