张量控制器架构的制作方法

文档序号:35968190发布日期:2023-11-09 08:40阅读:24来源:国知局
张量控制器架构的制作方法

本公开总体上涉及用于机器学习模型的加速器,并且更具体地,涉及与机器学习加速器联用的存储器地址生成。


背景技术:

1、神经网络被越来越多地用来实现机器学习(machine learning,ml)技术,以解决多种多样的问题,这些问题包括但不限于对象识别、特征分类、或者内容驱动的图像处理。可以被称为卷积神经网络的一些神经网络包括一个或多个卷积层。在卷积神经网络(convolutional neural network,cnn)中,卷积层通常负责在cnn内的、和/或cnn与ml模型的其它元素之间的绝大多数被执行的计算和数据移动,这使得卷积层成为性能瓶颈。因此,现有的ml加速器专注于在整个存储器层次结构中,使用高计算并行以及优化后的数据编排,以加速卷积层的处理。然而,现有的ml加速器在如下的边缘设备中实现时可能表现不佳:所述边缘设备具有严格的功耗约束,并且使用先前训练的模型实时运行推理练习。例如,现有的ml加速器在如下人工现实系统中可能表现不佳:所述人工现实系统为在独立的头戴式显示器(例如,在增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)头戴式设备(headset))、移动设备或其它边缘计算设备上实现的vr、ar、混合现实(mixed reality,mr)或混合现实(hybrid reality)人工现实系统。


技术实现思路

1、在本说明书中描述的本发明的一方面中,提供了一种机器学习加速器系统,包括:多个控制器,每个控制器被配置为根据如下的多个指令对具有n个维度的特征图进行遍历:所述多个指令为n个维度中的每个维度指定相应的遍历大小,其中,每个控制器包括:计数器堆栈,该计数器堆栈包括多个计数器,每个计数器均与特征图的n个维度中的相应维度相关联,其中,每个计数器被配置为将相应计数从相应的初始值递增到与所述相应维度相关联的所述相应的遍历大小,所述相应维度与所述计数器相关联;多个地址生成器,每个地址生成器被配置为使用多个计数器的相应计数,来生成存储特征图的一部分的至少一个存储器地址;以及依赖控制器计算模块,该依赖控制器计算模块被配置为:(1)对使多个计数器递增的多个条件状态进行追踪、以及(2)基于该多个条件状态,允许或不允许使多个计数器中的每个计数器递增。

2、依赖控制器还可以被配置为:识别表示多个操作数的多个依赖令牌,以执行每个相应维度的计算,其中,依赖控制器可以基于如下条件来允许或不允许使多个计数器中的每个计数器递增:相应维度的该多个依赖令牌的存在状态。

3、依赖控制器计算模块还可以被配置为:生成如下的使能信号:该使能信号指示相应维度的每个依赖令牌是存在的,其中,用于相应维度的计数器仅响应于接收到该相应维度的相关联的使能信号而使相应计数递增。

4、依赖控制器计算模块还可以被配置为:生成如下的停止信号:该停止信号指示相应维度的至少一个依赖令牌缺失,其中,用于相应维度的计数器响应于接收到该相应维度的相关联的停止信号而不使相应计数递增。

5、该多个依赖令牌中的第一依赖令牌可以指示:用于特定维度的、2d卷积机器学习操作的激活值被存储在存储器中,该多个依赖令牌中的第二依赖令牌可以指示:用于特定维度的、2d卷积机器学习操作的权重被存储在存储器中,并且该多个依赖令牌中的第三依赖令牌可以指示:一可用存储器位置可用于存储2d卷积机器学习操作的输出。

6、多个地址生成器中的第一地址生成器可以被配置为基于来自计数器的计数,来生成如下的激活存储器地址:该激活存储器地址存储2d卷积机器学习操作的激活值。

7、多个地址生成器中的第二地址生成器可以被配置为基于来自计数器的计数,来生成如下的权重存储器地址:该权重存储器地址存储2d卷积机器学习操作的权重值。

8、多个地址生成器中的第三地址生成器可以被配置为基于来自计数器的计数,来生成如下的输出存储器地址:该输出存储器地址存储2d卷积机器学习操作的输出值。

9、多个地址生成器中的第四地址生成器可以被配置为生成如下的信号:所述信号用于使能或禁止机器学习加速器系统的逻辑级。

10、初始值可以为零。

11、在本发明的一个方面,提供了一种方法,包括:对具有n个维度的特征图进行遍历,n个维度中的每个维度与相应的遍历大小相关联,其中,对于每个维度:在多个计数器中的每个计数器处,将相应计数从相应的初始值递增到与相应维度相关联的所述相应的遍历大小,所述相应维度与所述计数器相关联,该多个计数器中的每个计数器均与特征图的n个维度中的相应维度相关联;在多个地址生成器中的每个地址生成器处,基于多个计数器的相应计数,来生成存储特征图的一部分的至少一个存储器地址;由依赖控制器计算模块对使多个计数器递增的多个条件状态进行追踪;以及由依赖控制器计算模块基于该多个条件状态,允许或不允许使多个计数器中的每个计数器递增。

12、该方法还可以包括:由依赖控制器计算模块识别表示多个操作数的多个依赖令牌,以执行每个相应维度的计算,其中,依赖控制器基于以下条件来允许或不允许使多个计数器中的每个计数器递增:相应维度的多个依赖令牌的存在状态。

13、该方法还可以包括:由依赖控制器计算模块生成如下的使能信号:该使能信号指示相应维度的每个依赖令牌是存在的,其中,用于相应维度的计数器仅响应于接收到该相应维度的相关联的使能信号而使相应计数递增。

14、该方法还可以包括:该多个依赖令牌中的第一依赖令牌指示:用于特定维度的、2d卷积机器学习操作的激活值被存储在存储器中,该多个依赖令牌中的第二依赖令牌指示:用于特定维度的、2d卷积机器学习操作的权重被存储在存储器中,并且该多个依赖令牌中的第三依赖令牌指示:一可用存储器位置可用于存储2d卷积机器学习操作的输出。

15、生成至少一个存储器地址还可以包括:基于来自计数器的计数,来生成如下的激活存储器地址:该激活存储器地址存储2d卷积机器学习操作的激活值。

16、生成至少一个存储器地址还可以包括:基于来自计数器的计数,来生成如下的权重存储器地址:该权重存储器地址存储2d卷积机器学习操作的权重值。

17、生成至少一个存储器地址还可以包括:基于来自计数器的计数,来生成如下的输出存储器地址:该输出存储器地址存储2d卷积机器学习操作的输出值。

18、生成至少一个存储器地址还可以包括:生成如下的信号:所述信号用于使能或禁止机器学习加速器系统的逻辑级。

19、在本发明的一个方面,提供了一种或多种计算机可读非易失性存储介质,该一种或多种计算机可读非易失性存储介质包含软件,该软件在被执行时能够操作以:对具有n个维度的特征图进行遍历,n个维度中的每个维度与相应的遍历大小相关联,其中,对于每个维度:在多个计数器中的每个计数器处,将相应计数从相应的初始值递增到与相应维度相关联的所述相应的遍历大小,所述相应维度与所述计数器相关联,该多个计数器中的每个计数器均与特征图的n个维度中的相应维度相关联;在多个地址生成器中的每个地址生成器处,基于多个计数器的相应计数,来生成存储特征图的一部分的至少一个存储器地址;由依赖控制器计算模块对使多个计数器递增的多个条件状态进行追踪;以及由依赖控制器计算模块基于该多个条件状态,允许或不允许使多个计数器中的每个计数器递增。

20、在附图和以下描述中,对本说明书中描述的主题的一个或多个实施例的细节进行了阐述。该主题的其它潜在特征、方面和优势将从该描述和附图、以及从权利要求中变得显而易见。

21、本文中所公开的各个实施例仅是示例,并且本公开的范围不限于这些实施例。特定实施例可以包括上面所公开的这些实施例中的所有或一些部件、元件、特征、功能、操作或步骤,或者不包括这些部件、元件、特征、功能、操作或步骤。针对方法、存储介质、系统和计算机程序产品的所附权利要求中特别披露了根据本发明的实施例,其中,在一个权利要求类别(例如,方法)中提到的任何特征也可以主张在另一个利要求类别(例如,系统)中得到保护。所附权利要求中的从属关系或引用关系仅仅是出于形式上的原因而选择的。然而,也可以主张保护通过对任何多项先前权利要求的有意引用(特别是多个从属关系)而产生的任何主题,从而披露了多项权利要求及其特征的任何组合,并且不管所附权利要求中选择的从属关系如何,都可以主张保护该多项权利要求及其特征的任何组合。可主张保护的主题不仅包括所附多项权利要求中阐述的多个特征的多种组合,还包括该多项权利要求中的多个特征的任何其它组合,其中,该多项权利要求中提到的每个特征可以与该多项权利要求中的任何其它特征相组合、或者与多个其它特征的组合相组合。此外,可以在单个权利要求中主张保护本文中所描述或描绘的多个实施例和多个特征中的任何实施例和特征,和/或可以主张保护本文所描述或描绘的多个实施例和多个特征中的任何实施例和特征与本文所描述或描绘的任何实施例或特征的任何组合、或可以主张保护本文所描述或描绘的多个实施例和多个特征中的任何实施例和特征与所附权利要求的任何特征的任何组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1