[发明专利]自定义浮点数及其计算方法和硬件结构在审
申请号: | 201910114677.0 | 申请日: | 2019-02-14 |
公开(公告)号: | CN109901814A | 公开(公告)日: | 2019-06-18 |
发明(设计)人: | 张煜祺;刘功申 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F7/485 | 分类号: | G06F7/485;G06F7/487 |
代理公司: | 上海汉声知识产权代理有限公司 31236 | 代理人: | 庄文莉 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 浮点数 自定义 加法运算 能量消耗 运算 缓冲器 神经网络模型 芯片 片外存储器 压缩 乘法运算 封装结构 内存带宽 神经网络 网络参数 硬件结构 硬件实现 运算操作 运算单元 整数乘法 乘法器 复杂度 连接层 乘法 吞吐量 传输 共享 | ||
本发明提供了一种具有共享指数的自定义浮点数,把基于32‑bit浮点数的神经网络模型压缩到8‑bit,大幅度压缩了模型的大小的同时降低运算操作复杂度。在自定义的浮点数运算中,采用的是整数乘法和加法运算。与32‑bit浮点数乘法相比,自定义浮点数的乘法运算节省了17倍的能量消耗,30倍芯片面积;加法运算节省28倍能量消耗,116倍芯片面积。在全连接层的网络参数中,传输到片外存储器的数据所需的内存带宽减少了4倍。自定义浮点数有助于在片上缓冲器中保持4倍以上的参数。在硬件实现中,结合8‑bit的自定义浮点数与乘法器封装结构,实现在运算单元CU上运算增快整个神经网络的运行速度和吞吐量。
技术领域
本发明涉及卷积神经网络技术领域,具体地,涉及一种自定义浮点数及其计算方法和硬件结构,尤其是设计涉及一种基于自定义浮点和共享指数的,在FPGA卷积神经网络的乘法器封装结构。
背景技术
在最近对卷积神经网络(CNN)的研究中,为了最大限度地提高准确性,大多数模型都不太关注它们的复杂性。例如,现代深度CNN模型中,如AlexNet、GoogleNet、ResNet均需要数百万个参数和数十亿的算术运算,其所需要的极高的计算复杂度和大量的资源消耗阻碍其嵌入式设备的实现。
降低数据的表示精度是加速训练和减少内存带宽的常用方法。在内存需求方面,缩短位宽可以使更少的位数被用于读取或存储相同数量的值。在硬件平台上,降低精度也可同时减少运算时间,提高吞吐量。32-bit单精度浮点数是CNN模型中的常用数据类型。32-bit单精度浮点数表示和其对应的实际值如图1所示,尤其应用在FPGA的浮点乘法器上,具有高精度而高功耗、面积大的特点。许多研究者探索了CNN训练中权重或激活使用较短位宽的定点表示。例如,使用16-bit动态定点表示,提出一种称为Ristretto的定点量化方法。然而,他们没有考虑相应表示方法和硬件加速器的合作。动态定点数如图2所示,其小数点的位置可实时更新。动态定点数可以简化计算,但由于小数点位置的范围限制,通常只适用于CNNs的推理过程,而不能适应在大规模CNNs的训练中。在浮点数的最新研究方面,使用迷你浮点表示方法(9-bit),但是结果上仅给出了基于Cifar-10的top 5精确度。
在硬件加速的实践中,GPU被广泛应用于训练和分类任务,然而GPU的功耗(100W)对于定制的数据表示方法来说太高。相反,基于FPGA的CNN加速器更适合于高可重构性、低功耗和高能量效率的应用。此外,对于新的数据表示计算,FPGA仍然有很大的发展空间。
与本申请相关的现有技术是专利文献CN108763159,公开了一种基于FPGA的LSTM前向运算加速器,采用软硬件协同模式工作。硬件部分包含了三种加速器设计:单DMA模式LSTM神经网络前向算法加速器,双DMA模式LSTM神经网络前向算法加速器以及稀疏LSTM网络前向算法加速器。所述加速器用于长短期记忆(LSTM:Long short-term memory)网络前向计算部分的加速,其中包含了矩阵-向量乘法模块、Element-wise运算模块以及激活函数模块。其中单DMA模式加速器在性能、能效比方面均有良好的运算效果;而双DMA模式加速器和稀疏网络加速器在能效比方面效果较好,并且更加节省FPGA的片上存储资源。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种自定义浮点数及其计算方法和硬件结构。
根据本发明提供的一种自定义浮点数,由整数部分和共享指数组成,整数部分由1位符号位和Z-1位尾数位组成,Z表示整数部分的位数,共享指数是8位,共享指数的位宽和单精度浮点数相同。
优选地,当将原始数据从单精度浮点格式量化为自定义浮点数时,使用共享指数,所述共享指数来自原始数据的绝对最大值,如下式表示:
Es=Emax-(Z-2)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910114677.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种浮点运算装置及方法
- 下一篇:基于阻变存储器的并行逻辑门及乘法器