[发明专利]用于执行人工神经网络正向运算的装置和方法在审
申请号: | 202010150326.8 | 申请日: | 2016-01-20 |
公开(公告)号: | CN111340200A | 公开(公告)日: | 2020-06-26 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06N3/06 | 分类号: | G06N3/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100190 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 人工 神经网络 正向 运算 装置 方法 | ||
1.一种用于执行人工神经网络正向运算的装置,其特征在于,所述装置包括控制器电路、主运算电路、数据通路电路以及从运算电路;
所述控制器电路,用于读取指令,并对所述指令进行译码,得到微指令,所述微指令用于对所述主运算电路、所述数据通路电路或所述从运算电路的行为进行控制;
所述主运算电路,用于将输入神经元数据传输至所述数据通路电路;
所述数据通路电路,用于将所述输入神经元数据传输至所述从运算电路,以及将所述从运算电路得到的输出神经元数据拼成中间结果向量;
所述主运算电路,还用于根据所述中间结果向量进行后续处理。
2.根据权利要求1所述的装置,其特征在于,所述从运算电路的数量为多个;
多个所述从运算电路,用于根据相同的所述输入神经元数据以及各所述从运算电路所对应的不同的权值向量,并行计算出各所述从运算电路对应的输出神经元数据;
所述从运算电路对应的权值向量包括权值矩阵中与所述从运算电路相对应的列向量。
3.根据权利要求1所述的装置,其特征在于,所述数据通路电路包括多个节点;
所述将所述输入神经元数据传输至所述从运算电路,包括:将上游的所述节点的数据发给下游的所述节点,通过逐级传输将所述输入神经元数据传输至所述从运算电路;以及
所述将所述从运算电路得到的输出神经元数据拼成中间结果向量,包括:
所述从运算电路将输出神经元数据发送给下游的所述节点,所述下游的节点所述输出神经元数据进行合并,并将所述合并结果发送至上一级的所述节点,通过逐级合并将所述从运算电路的输出神经元数据拼成所述中间结果向量。
4.根据权利要求1所述的装置,其特征在于,所述数据通路电路包括多个节点构成的二叉树通路。
5.根据权利要求1所述的装置,其特征在于,所述装置还包括指令缓存电路,所述指令缓存电路用于缓存所述指令。
6.根据权利要求1所述的装置,其特征在于,
所述输入神经元数据包括输入神经元向量;和/或
所述输出神经元数据包括输出神经元向量。
7.根据权利要求1-6任一所述的装置,其特征在于,所述主运算电路根据所述中间结果向量进行后续处理,包括以下操作的一种或多种:
加偏置操作,所述加偏置操作包括在所述中间结果向量上加上偏置;
激活操作,所述激活操作包括根据激活函数对所述中间结果向量进行激活;
采样操作,所述采样操作包括将所述中间结果向量与随机数进行比较;若所述中间结果向量大于随机数,则输出1;若所述中间结果向量小于随机数,则输出0;
池化操作,所述池化操作包括最大值池化或平均值池化。
8.根据权利要求1所述的装置,其特征在于,所述主运算电路包括第一神经元缓存电路、第一运算电路以及第一数据依赖关系判断电路;
所述第一神经元缓存电路,用于缓存所述主运算电路在计算过程中用到的输入数据和输出数据;
所述第一运算电路,用于完成所述主运算电路的运算功能;
所述第一数据依赖关系判断电路,用于保证对所述第一神经元缓存电路中的读写不存在一致性冲突。
9.根据权利要求1所述的装置,其特征在于,所述从运算电路包括第二神经元缓存电路、权值缓存电路、第二运算电路以及第二数据依赖关系判断电路;
所述第二神经元缓存电路,用于缓存所述从运算电路的输入神经元数据和输出神经元数据;
所述权值缓存电路,用于缓存所述从运算电路在计算过程中需要的权值数据;
所述第二运算电路,用于接收所述控制器电路发出的所述微指令,并根据所述微指令进行算数逻辑运算;
所述第二数据依赖关系判断电路,用于保证对所述第二神经元缓存电路和所述权值缓存电路中的读写不存在一致性冲突。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010150326.8/1.html,转载请声明来源钻瓜专利网。