[发明专利]一种运算装置和运算方法在审
申请号: | 201810782174.6 | 申请日: | 2018-07-17 |
公开(公告)号: | CN110728364A | 公开(公告)日: | 2020-01-24 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 上海寒武纪信息科技有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063 |
代理公司: | 11277 北京林达刘知识产权代理事务所(普通合伙) | 代理人: | 刘新宇 |
地址: | 200120 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 运算子 运算模块 运算装置 并行执行 存储单元 带宽需求 命令完成 数据包括 数据访问 数据执行 网络模型 运算操作 运算单元 和运算 存储 配置 | ||
本公开涉及一种运算装置和运算方法,其中所述运算装置包括:多个运算模块,该多个运算模块通过并行执行相应的运算子命令完成网络模型的运算操作;其中,所述运算模块包括:至少一个运算单元,其配置为利用第一运算子数据执行第一运算子命令;存储单元,其至少用于存储所述第一运算子数据,该第一运算子数据包括用于执行所述第一运算子命令的数据。本公开实施例能够降低用于数据访问的带宽需求,且成本低。
技术领域
本公开涉及数据处理技术领域,尤其涉及一种运算装置、数据处理芯片、电子设备和运算方法。
背景技术
现有技术中,涉及深度学习的网络模型中通常存在大量的运算,例如神经网络计算中有一些计算需要并行处理,例如正向运算、反向运算以及权值更新等过程都需要大量的并行运算。在传统的并行计算系统中,处理单元需要从访存开销太大的存储单元中读写数据,由于存在大量的并行运算,浙江会导致对带宽的需求很高,且造成巨大的能耗开销。
发明内容
本公开实施例提出了一种能够减低成本且降低带宽需求的技术方案,其中提出了一种运算装置、数据处理芯片、电子设备和运算方法。
根据本公开的第一方面,提供了一种运算装置,其包括:多个运算模块,该多个运算模块通过并行执行相应的运算子命令完成网络模型的运算操作;其中,所述运算模块包括:
至少一个运算单元,其配置为利用第一运算子数据执行第一运算子命令;
存储单元,其至少用于存储所述第一运算子数据,该第一运算子数据包括用于执行所述第一运算子命令的数据;
在本公开实施例中,至少两个运算模块之间存在数据连接,并且其中一个运算模块配置为利用所述第一运算子数据和另一个运算模块的第二运算子数据执行所述第一运算子命令,其中所述第二运算子数据包括该另一个运算模块中的存储单元内存储的数据和/或该另一个运算模块中的运算单元所生成的数据。
在本公开实施例中,还包括控制模块,其配置为根据接收的运算命令和运算数据,为各所述运算模块分配对应的运算子命令以及运算子数据;
所述运算命令包括多个运算子命令,以及所述运算数据包括执行各所述运算子命令所需的运算子数据。
在本公开实施例中,所述控制模块包括:
第一分配单元,其配置为根据运算命令中的运算逻辑关系,将所述运算命令划分成多个运算子命令,并将该多个运算子命令对应分配至不同的运算模块进行运算;
第二分配单元,其配置为确定执行各所述运算子命令所需的运算子数据,并将所述运算子数据分配至对应的运算模块进行存储。
在本公开实施例中,所述控制模块还配置为根据各运算子命令之间的运算逻辑关系,选择性地连接各所述运算模块。
在本公开实施例中,所述运算单元包括网络处理器或者计算机设备。
在本公开实施例中,所述存储单元包括寄存器、寄存器堆以及存储器阵列中的至少一种。
根据本公开的第二方面,提供了一种数据处理芯片,其包括如上述实施例所述的运算装置。
根据本公开的第三方面,提供了一种电子设备,其包括如上述实施例所述的数据处理芯片。
根据本公开的第四方面,提供了一种运算方法,所述方法应用在运算装置中,所述运算装置包括多个运算模块,该多个运算模块通过并行执行相应的运算子命令完成网络模型的运算操作,并且所述方法包括:
通过各运算模块的存储单元存储第一运算子数据,该第一运算子数据包括用于执行第一运算子命令的数据;
通过各运算模块的运算单元利用第一运算子数据执行第一运算子命令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海寒武纪信息科技有限公司,未经上海寒武纪信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810782174.6/2.html,转载请声明来源钻瓜专利网。