当前位置: 首页 > 专利查询>辉达公司专利>正文

用于检测同质处理单元中的故障的基于硬件的故障扫描器制造技术

技术编号:36449307 阅读:17 留言:0更新日期:2023-01-25 22:45
本发明专利技术描述了用于检测处理管线中的故障的装置、系统和技术。一种加速器电路包括执行与神经网络层对应的操作的固定功能电路。固定功能电路包括一组同质处理单元和一个故障扫描电路。故障扫描器电路包括附加的同质处理单元,用于按顺序扫描集合的每个处理单元以查找功能故障。功能故障。功能故障。

【技术实现步骤摘要】
【国外来华专利技术】用于检测同质处理单元中的故障的基于硬件的故障扫描器


[0001]至少一个实施例涉及用于执行和促进人工智能的处理资源。例如,至少一个实施例涉及用于检测处理管线中的故障的基于硬件的故障扫描器。

技术介绍

[0002]在许多情况下,深度学习推理的大部分计算工作都基于数学运算,这些运算通常可分为四个部分:卷积、激活、池化和归一化。这些操作有一些共同的特点,使它们特别适合于硬件实现:它们的内存访问模式是可预测的,并且易于并行化,例如在并行处理管线中。功能安全是指在运行时,由于处理单元的故障行为而导致的故障不会造成不合理的风险。功能安全旨在将伤害风险从不可接受的水平降低到可容忍的水平。先前的一种方法使用纠错编码(ECC)来检测存储器中的故障。这种方法仅限于检测数据中的错误,但不能区分底层逻辑中的永久性错误和临时性错误。另一种检测故障的方法是使用软诊断库定期执行预先确定的工作负载,然后将结果与已知参考(也称为黄金参考)进行比较。这种方法只比较接口数据,内部数据可能比接口数据具有更高的精度。这种方法还影响性能,因为在执行预先确定的工作负载时,底层资源被占用。另一种检测故障的方法使用基于算法的错误检测技术。基于算法的错误检测技术需要高精度的数学,这在硅上的面积方面是昂贵的。某些比较可能没有足够的位,因此在比较过程中允许一定的错误阈值。错误阈值可能导致误报。由于不同计算序列中不可避免的舍入误差以及比较过程中使用的误差阈值,有些故障需要检测数千个周期,有些故障根本无法检测。
附图说明
[0003]图1是根据至少一些实施例的具有硬件故障扫描器的加速器核心的框图,该硬件故障扫描器用于检测在固定功能电路的同质处理单元中发生的故障;
[0004]图2是根据至少一些实施例的具有一组同质处理单元和以时间复用方式操作的硬件故障扫描器的处理管线的框图;
[0005]图3是根据至少一些实施例的具有一组齐次卷积乘法累加(CMAC)单元和硬件故障扫描器的卷积核的卷积管线的框图;
[0006]图4是根据至少一些实施例的用于检测处理管线的同质处理单元中的故障的方法的流程图;
[0007]图5是根据至少一些实施例的深度学习加速器(DLA)系统的框图;和
[0008]图6是根据至少一些实施例的DLA系统的框图。
具体实施方式
[0009]如上所述,深度学习推理基于非常适合硬件实现的操作。深度学习加速器(DLA)电路,如深度学习加速器(NVDLA),可通过提供加速核心深度学习操作的构建块来解决推理的计算需求。深度学习加速器可用于加速不同的神经网络,如卷积神经网络
(CNN)、递归神经网络(RNN)、全连接神经网络等。这些神经网络可能具有非常不同的结构,可能不遵循任何预定义的网络结构,并且新的神经网络正在定期引入。
[0010]目前,DLA电路对这些神经网络中不同类型的层使用固定功能引擎(在本文中也称为固定功能单元或固定功能电路),例如用于卷积、激活函数、池化、批归一化等的固定功能引擎。应当注意的是,从算法角度来看的神经网络可以用一组层(在本文中称为“原始层”)来指定,例如偏置和批归一化。这些原始层可以被编译或转换成另一组层(这里称为“硬件层”)。每个硬件层被用作在加速器电路上执行调度的基本元素。原始层和硬件层之间的映射可以是m:n,其中m是原始层的数量,n是硬件层的数量。例如,神经网络中的原始层偏差、批归一化和局部响应归一化(LRN)(例如,校正线性单元(ReLU))可编译为一个硬件层。在这种情况下,m:n是3:1。每个硬件层都可以用一条基本硬件指令来表示,用于其中一个固定功能引擎执行操作,并且每个层通过内存接口与另一层通信。例如,第一层可以由第一固定功能引擎执行,该引擎接收输入张量,对输入张量执行操作以生成输出张量,并将输出张量存储在系统存储器中,例如耦合到加速器的动态随机存取存储器(DRAM)。第二层可由第二固定函数引擎执行,该引擎从存储器接收来自第一层的输出张量作为第二输入张量,对第二输入张量执行操作以生成第二输出张量,并将第二输出张量存储在DRAM中。每次通信都会在内存接口中引入张量读取操作和张量写入操作。
[0011]如上所述,以前用于检测DLA电路中的故障的方法是不够的,因为它们只检测存储器中的故障,只比较接口数据,无法区分永久性故障和临时性故障,影响DLA电路的性能,并且实施成本高。
[0012]本公开的方面和实施例通过提供例如硬件故障扫描器来检测处理管线中的故障来解决这些和其他挑战。本专利技术的方面和实施例可提供硬件故障扫描器(在此也称为故障扫描器电路或故障扫描器单元),其是以时间复用方式扫描功能故障的附加处理单元。在给定的周期内,处理单元和硬件故障扫描器可以具有相同的实现和相同的输入数据,从而允许逐位比较处理单元和硬件故障扫描器的输出。硬件故障扫描器可用于DLA电路的固定功能电路和GPU中的并行处理单元。由于故障扫描与处理单元的操作并发执行,因此本公开的方面和实施例不会遭受性能损失。本公开的方面和实施例可以提供逐位比较,从而产生比基于算法的错误检测技术更少的误报。与需要更高精度和更多区域的基于算法的错误检测技术不同,本公开的方面和实施例可以在更小的区域中实现,并且可以使用与处理单元相同的精度和实现。
[0013]图1是根据至少一些实施例的加速器核心100的框图,加速器核心100具有硬件故障扫描器102,用于检测固定功能电路104

114中的故障。加速器核心100(在本文中也称为DLA核心或加速器电路)包括硬件故障扫描器102和各种固定功能电路,例如卷积引擎104(在本文中也称为卷积核心),激活引擎106(在本文中也称为单数据处理器(SDP))是用于激活功能的单点查找引擎,池化引擎108(在本文中也称为平面数据处理器(PDP))是用于池化的平面平均引擎,本地响应归一化(LRN)引擎110(在本文中也称为跨信道数据处理器(CDP)),其是应用在信道维度上而不是空间维度上操作的LRN功能的专用单元,执行数据格式转换(例如,分割或切片、合并、收缩、重塑传输)的数据重塑引擎112(在此也称为RUBIK)和可在系统DRAM和专用存储器接口之间移动数据的桥接直接存储器访问(DMA)引擎114。下面描述硬件故障扫描器102的附加细节。在其他实施例中,加速器核心100可以包括比图1中
所述的更多或更少的引擎。这些引擎中的每一个都可以是单独的且可独立配置的。例如,不需要池化操作的系统可以完全删除平面平均引擎。例如,需要额外卷积性能的系统可以在不修改加速器核心100中的其他单元的情况下放大卷积核心的性能。
[0014]如图1所示,加速器核心100与DLA系统的其余部分有多个连接,包括配置接口块116,配置接口块116包括配置空间总线(CSB)接口和中断接口。配置接口块116可以是实现寄存器文件(例如,配置寄存器)和中断接口(标记为CSB/中断接口118)的控制信道接口。在至少一个实施例中,CSB接口是同步、低带宽、低功耗、32位控制总线,其被设计为由CPU(图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种集成电路,包括:多个同质处理单元;以及故障扫描电路,包括附加的同质处理单元,其中所述故障扫描电路用于:选择性地接收序列中的所述多个同质处理单元中的每一个的输入和输出;使用所述附加的同质处理单元,基于所述多个同质处理单元中的每一个的输入生成第二输出;以及响应于所述多个同质处理单元中的相应一个的输出和基于所述多个同质处理单元中的所述相应一个的输入生成的第二输出之间的不匹配,来检测故障。2.根据权利要求1所述的集成电路,其中所述故障扫描电路还包括:耦合到所述附加的同质处理单元的比较器;以及选择电路,用于选择性地接收所述序列中的所述多个同质处理单元中的每一个的所述输入和所述输出。3.根据权利要求1所述的集成电路,其中所述同质处理单元是卷积核的同质乘法累积MAC单元,其中所述附加的同质处理单元是所述卷积核的附加同质MAC单元,并且其中所述多个同质处理单元中的每一个的所述输入包括特征数据和权重数据。4.根据权利要求3所述的集成电路,其中所述权重数据在整个条带操作期间保持不变,并且其中所述序列基于所述整个条带操作的周期数乘以所述多个同质处理单元的数量而重复。5.根据权利要求3所述的集成电路,其中所述权重数据在整个条带操作期间保持不变,并且其中所述序列基于整个条带操作的周期数乘以所述多个同质处理单元的数量的一半而重复。6.根据权利要求1所述的集成电路,其中所述同质处理单元是单个数据点处理器SDP或跨通道数据处理器CDP的同质查找表LUT逻辑单元,其中所述附加的同质处理单元是所述SDP或所述CDP的附加同质LUT逻辑单元。7.根据权利要求1所述的集成电路,其中所述同质处理单元是同质处理管线,并且其中,所述附加的同质处理单元是附加的同质处理管线。8.根据权利要求1所述的集成电路,其中所述集成电路是加速器电路。9.根据权利要求1所述的集成电路,其中所述集成电路是图形处理单元(GPU)。10.一种加速器电路,包括:存储器接口块;以及固定功能电路,其耦合到所述存储器接口块,用于执行与神经网络层对应的操作,其中所述固定功能电路包括:多个同质处理单元;以及故障扫描器电路,包括附加的同质处理单元,其中所述故障扫描器电路用于对序列中的所述多个同质处理单元中的每一个进行功能故障的扫描。11.根据权利要求10所述的加速器电路,其中,为了对序列中的所述多个同质处理单元中的每一个进行功能故障的扫描,所述故障扫描电路用于:选择性地接收所述序...

【专利技术属性】
技术研发人员:张益林张山刚周焱凡启飞
申请(专利权)人:辉达公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1