[发明专利]具有可重构指令集的硬件加速器在审
申请号: | 202080082790.6 | 申请日: | 2020-12-03 |
公开(公告)号: | CN114761920A | 公开(公告)日: | 2022-07-15 |
发明(设计)人: | R·戴尔蒙特 | 申请(专利权)人: | 亚马逊技术股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 钱慰民;周全 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 具有 可重构 指令 硬件 加速器 | ||
在一个实例中,一种硬件加速器包括:可编程硬件指令解码器,所述可编程硬件指令解码器进行编程以存储多个操作码;可编程指令模式映射表,所述可编程指令模式映射表实施作为内容可寻址存储器(CAM),并且进行编程以将所述多个操作码映射到多个指令中的操作数的多个定义;硬件执行引擎;以及控制器,所述控制器被配置成:接收包含所述多个操作码的第一操作码的指令;控制所述硬件指令解码器以从所述指令中提取所述第一操作码;从所述指令模式映射表中并且基于所述第一操作码获得第一操作数的第一定义;并且将所述指令和所述第一定义转发到所述硬件执行引擎以控制所述硬件执行引擎基于所述第一定义从所述指令中提取所述第一操作数,并且基于所述第一操作数执行所述指令。
背景技术
人工神经网络是具有基于生物神经网络的架构的计算系统。可以使用训练数据对人工神经网络进行训练,以了解如何针对应用进行某个计算任务。
硬件加速器,如神经网络处理器可以通过进行与人工神经网络相关联的各种操作来实施人工神经网络。操作可以包含例如计算操作、存储器存取操作等。硬件加速器通常包含被具体配置成进行和加速这些操作的硬件组件。通常,这些硬件组件可通过指令进行编程,以支持例如不同的神经网络拓扑、神经网络的不同应用等。
附图说明
将参考附图描述根据本公开的各个实施例,在附图中:
图1展示了使用本文所公开的技术处理数据的分类器装置的实例;
图2A-2D是展示了根据本公开的某些方面的使用本文所公开的技术的预测模型和计算的简化框图;
图3展示了在计算环境中的神经网络操作的示例序列;
图4A-4D展示了根据本公开的某些方面的示例神经网络处理器和其操作;
图5A-5D展示了图4A-4D的神经网络处理器的内部组件的实例;
图6展示了根据本公开的某些方面的各种形式的指令模式程序;
图7A-7C展示了根据本公开的某些方面的由图4A-4D的神经网络处理器支持的不同存储器存取模式的指令的实例;
图8A和图8B展示了根据本公开的某些方面的在硬件加速器处进行计算的示例方法;
图9包含根据本公开的某些方面的可以使用图4A-4D的神经网络处理器的主机系统的框图;并且
图10包含示例网络的图。
具体实施方式
本公开的实例涉及硬件加速器,并且更具体地涉及具有可重构指令集的神经网络硬件加速器。
硬件加速器,如神经网络处理器可以通过进行与人工神经网络相关联的各种操作来实施人工神经网络。所述操作可以包含计算操作,例如卷积操作、后处理操作,如池化、激活函数处理等,以及支持这些计算操作的存储器存取操作。硬件加速器通常包含被具体配置成进行和/或加速这些操作的硬件组件。例如,硬件加速器可以包含被具体设计成进行某些算术操作(例如,卷积操作)的电路、被具体设计成进行某些池化操作的电路、被具体设计成进行某些激活函数处理操作的电路、被具体设计成进行存储器存取操作、计算操作等的电路。
这些硬件组件通常可通过指令进行编程以支持不同的神经网络拓扑和/或用于神经网络的不同应用。指令可以包含例如输入数据的指示和要由硬件加速器执行的卷积操作的权重、激活函数和/或池化操作的选择、用于控制不同神经网络层之间的数据流的存储器存取操作等。硬件组件可以从指令中提取此信息,并且基于所提取的信息进行操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于亚马逊技术股份有限公司,未经亚马逊技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202080082790.6/2.html,转载请声明来源钻瓜专利网。