[发明专利]应用于神经网络硬件加速系统的高效数据访存管理装置有效
申请号: | 201611105491.1 | 申请日: | 2016-12-05 |
公开(公告)号: | CN107689948B | 公开(公告)日: | 2020-09-01 |
发明(设计)人: | 李於彬;单羿 | 申请(专利权)人: | 赛灵思公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;G06N3/04;G06N3/063;G06N3/08 |
代理公司: | 北京卓孚律师事务所 11821 | 代理人: | 任宇 |
地址: | 美国加利福尼亚*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用于 神经网络 硬件加速 系统 高效 数据 管理 装置 | ||
一种应用于神经网络硬件加速系统的数据访存管理装置,部署在存储器和计算单元之间传输数据,该装置包括:参数访存控制电路,从存储器中读取计算单元请求的参数,经过转换位宽后,输出至计算单元;向量访存控制电路,从存储器读取计算单元请求的向量,经过位宽转换后,输出至计算单元;计算结果数据控制电路,从计算单元读取计算结果,经过位宽转换后,输出至存储器;控制电路,控制所述参数访存控制电路、向量访存控制电路、计算结果数据控制电路与所述存储器、所述计算单元之间的交互。该装置可以高效地实现神经网络硬件加速系统的数据访存管理。
本申请要求于2016年8月22日提交的美国专利申请No.15/242,622、于2016年8月22日提交的美国专利申请No.15/242,624的优先权。其全部内容在此参考并入。
发明领域
本发明装置涉及神经网络硬件加速系统,特别地,该装置应用于神经网络硬件加速系统中可实现高效的访存管理。
背景技术
人工神经网络(Artificial Neural Networks,ANN)也简称为神经网络(NNs),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。近年来神经网络发展很快,被广泛应用于很多领域,包括图像识别、语音识别,自然语言处理,天气预报,基因表达,内容推送等等。
在近几年里,神经网络的规模不断增长,公开的比较先进的神经网络都有数亿个链接,属于计算和访存密集型应用。现有技术方案中通常是采用通用处理器(CPU)或者图形处理器(GPU)来实现。由于软件指令的顺序执行特性,上述实现方案不能更充分的挖掘网络中的并行潜力,计算速度受到限制;而且CPU和GPU的功耗也很大。
为了缓解(克服)上述困难,基于FPGA或ASIC的神经网络硬件加速系统最近也被提出。随着计算并行度的提升,数据访存的带宽需求越来越大。
图1示出了神经网络硬件加速系统的系统结构。如图1所示,包括:多个硬件计算核、一个数据访存控制装置、一个存储器、一个神经网络控制器。
如前所述,对于稀疏矩阵的处理,为了减少内存,往往需要对矩阵进行压缩存储,比较经典的存储方法包括:行压缩(Compressed Row Storage CRS)和列压缩存储(Compressed Column Storage CCS)。
为了利用激励函数的稀疏性,可以将编码稀疏权重矩阵W存入压缩列存储(CCS)格式的变量中。
对于W矩阵每列Wj,我们存储一个包含非零权重的向量v,以及等长向量z,向量z用于编码v的相应条目之前零的个数,v和z各自由一个四位数值表示。如果超过15个零出现在一个非零的条目,在向量v中添加一个零。例如,以下列被编码为:
[0,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3]
v=[1,2,0,3],z=[2,0,15,2]。
所有列的v和z的都存储在一对大阵列中,其中指针向量p指向每个列的向量的开始。p指针向量中的最后一项指向超过最后一个向量元素,这样pj+1-pj给出了第j列中的非零数(包括填补的零)。
通过压缩列存储格式(CCS format)中列存储稀疏矩阵,使得利用激励函数的稀疏性变得容易。只需要用每个非零激励与其相应列中的所有非零元素相乘。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于赛灵思公司,未经赛灵思公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611105491.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种集成吊顶
- 下一篇:用于控制装置之间的连接的方法和设备