[发明专利]一种多层前馈神经网络并行加速器有效
申请号: | 201810488050.7 | 申请日: | 2018-05-21 |
公开(公告)号: | CN108710943B | 公开(公告)日: | 2021-11-16 |
发明(设计)人: | 李丽;李宏炜;樊朝煜;潘红兵;何书专;陈沁雨 | 申请(专利权)人: | 南京大学 |
主分类号: | G06N3/063 | 分类号: | G06N3/063 |
代理公司: | 南京汇盛专利商标事务所(普通合伙) 32238 | 代理人: | 陈扬;吴扬帆 |
地址: | 210046 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多层 神经网络 并行 加速器 | ||
1.一种多层前馈神经网络并行加速器,其特征在于包括:
主控制模块,接收系统启动信号,控制整个计算流程;
系数地址生成模块,根据主控制模块的数据划分和系数数据的存储方式,生成系数的地址,将所述系数的地址输出;并接收存储控制模块的系数数据,根据系数数据的存储规则将系数数据拆分后输出;
操作数地址生成模块,生成操作数的存储地址并输出;接收存储控制模块的操作数数据,将数据拆分后并输出;
前馈网络计算模块,接收拆分后的系数数据与操作数数据,包含若干路并行计算的计算单元;
神经元地址生成模块,接收前馈网络计算模块计算得到的神经元数据,生成神经元的存储地址和神经元数据,并将所述神经元的存储地址和神经元数据输出;
存储控制模块,接收系数地址生成模块、操作数地址生成模块和神经元地址生成模块的存储地址,接收所述神经元数据,生成存储地址与物理存储模块地址的映射,产生物理存储模块的控制信号,完成读写操作;
数据划分模块,根据并行度将所有隐含层神经元的计算划分到各路计算单元,得出各路计算单元需要计算的神经元数量;
主控制模块在接收到启动信号后,首先启动系数地址生成模块、操作数地址生成模块和存储控制模块,接着基于数据延迟启动前馈网络计算模块,根据神经元地址生成模块的已完成计算神经元的计数和数据划分模块分配给各计算单元的计算量输出运算结束信号;
操作数地址生成模块基于输入操作数数据量的大小和操作数的存储方式,确定操作数地址的上限;并根据数据划分模块分配给各计算单元需要计算的神经元的数量,确定操作数地址循环的次数;同时接收存储控制模块传来的操作数数据,根据操作数的存储规则将数据拆分后驱动各路计算单元。
2.根据权利要求1所述的多层前馈神经网络并行加速器,其特征在于:系数地址生成模块基于数据划分模块分配给各计算单元需要计算的神经元的数量,以递增的形式将生成的系数地址输出。
3.根据权利要求1所述的多层前馈神经网络并行加速器,其特征在于:神经元地址生成模块接收前馈网络计算模块的神经元计算完成信号,接收神经元数据后根据存储模块的位宽,产生神经元的存储地址和神经元数据,并输出至存储控制模块。
4.根据权利要求1所述的多层前馈神经网络并行加速器,其特征在于:前馈网络计算模块中每一计算单元由两个加法器和一个乘法器组成,完成流水乘累加操作,各计算单元之间相互独立。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810488050.7/1.html,转载请声明来源钻瓜专利网。