A pulsating array implemented in an integrated circuit is disclosed, which comprises a processing element array comprising a processing element array. The systolic array includes one or more feeder circuits that are coupled to the array of processing elements. Each of one or more feeder circuits includes: a first region configured to receive data stored in a memory outside the integrated circuit; and a second region configured to transmit received data to the processing element array from the memory to the processing element array. The data is double buffered by the first area and the second region. The pulsation array also includes one or more discharge circuits communicatively coupled to the processing element array, which includes one or more memory buffers configured to store data output by the processing element array.
【技术实现步骤摘要】
用于脉动阵列架构的静态可调度馈送和排放结构相关申请的交叉引用本申请要求享有2017年4月21日提交的题为“StaticallyschedulableFeedandDrainStructureforSystolicArrayArchitecture”的美国临时专利申请No.62/488635的优先权和权益,在此通过引用的方式将该美国临时专利申请的全文并入。
本公开总体上涉及矩阵乘法运算。更具体而言,本公开涉及实施用于矩阵乘法运算的脉动阵列矩阵乘法器的方法和设备。
技术介绍
本节意在向读者介绍可能与以下描述和/或主张的本公开的各方面相关的技术的各方面。相信本论述有助于为读者提供背景信息以便于更好地理解本公开的各方面。因此,应当理解,这些陈述要从这一角度阅读,并且不能作为现有技术被接纳。很多数值计算应用,例如高性能计算、深度学习(例如,人工神经网络和相关机器学习算法的研究)和数字信号处理(DSP),都依赖于矩阵乘法计算。在硬件和软件中使用脉动阵列执行矩阵乘法计算已经取得很大成功。然而,在现场可编程门阵列(FPGA)平台上实施脉动阵列架构可能存在困难。例如,可能存在与外部 ...
【技术保护点】
1.一种在集成电路的电路中实施的脉动阵列,包括:处理元件阵列,所述处理元件阵列包括处理元件;通信耦合到所述处理元件阵列的一个或多个馈送器电路,其中,所述一个或多个馈送器电路中的每个包括:第一区域,其被配置成接收存储在所述集成电路外部的存储器中的数据;以及第二区域,其被配置成向所述处理元件阵列发送所接收的数据,其中,从所述存储器传输到所述处理元件阵列的数据被所述第一区域和所述第二区域双重缓冲;通信耦合到所述处理元件阵列的一个或多个排出电路,所述一个或多个排出电路包括被配置成存储由所述处理元件阵列输出的数据的一个或多个存储器缓冲器。
【技术特征摘要】
2017.04.21 US 62/488,635;2017.09.29 US 15/719,9221.一种在集成电路的电路中实施的脉动阵列,包括:处理元件阵列,所述处理元件阵列包括处理元件;通信耦合到所述处理元件阵列的一个或多个馈送器电路,其中,所述一个或多个馈送器电路中的每个包括:第一区域,其被配置成接收存储在所述集成电路外部的存储器中的数据;以及第二区域,其被配置成向所述处理元件阵列发送所接收的数据,其中,从所述存储器传输到所述处理元件阵列的数据被所述第一区域和所述第二区域双重缓冲;通信耦合到所述处理元件阵列的一个或多个排出电路,所述一个或多个排出电路包括被配置成存储由所述处理元件阵列输出的数据的一个或多个存储器缓冲器。2.根据权利要求1所述的脉动阵列,包括通信耦合到所述一个或多个馈送器电路的第一控制器,其中,所述第一控制器包括:读取控制器,其被配置成使能对存储在所述集成电路外部的所述存储器中的所述数据的读取;有效检查逻辑单元,其被配置成对所述第一区域、所述第二区域或两者执行有效检查;以及反向压力检查逻辑单元,其被配置成提供与从所述一个或多个排出电路到所述读取控制器的反向压力相关的指示。3.根据权利要求2所述的脉动阵列,其中,所述反向压力检查逻辑单元响应于所述一个或多个排出电路的一个或多个存储器已满而提供指示。4.根据权利要求1所述的脉动阵列,包括通信耦合到所述一个或多个排出电路的第二控制器,其中,所述第二控制器包括:写入控制器,其被配置成使能对由所述处理元件阵列输出的所述数据的写入;以及缓冲器监测器,其被配置成监测所述一个或多个存储器缓冲器中的每个的先进先出(FIFO)水平。5.根据权利要求4所述的脉动阵列,其中,所述第二控制器响应于所述一个或多个存储器缓冲器已满而发送信号以停止向所述处理元件阵列馈送所述外部存储器中存储的所述数据。6.根据权利要求1所述的脉动阵列,其中,所述外部储存器中存储的所述数据包括:采用第一预先布置的矩阵结构重新布置的矩阵Am,n,其中,采用所述第一预先布置的矩阵结构的所述矩阵Am,n的取向与采用其初始布置的所述矩阵Am,n的取向不同;以及采用第二预先布置的矩阵结构重新布置的矩阵Bk,l。7.根据权利要求6所述的脉动阵列,其中,所述第一预先布置的矩阵结构包括被布置成促进所述矩阵Am,n进入所述处理元件阵列的第一馈送模式的一个或多个子区域,其中,所述第二预先布置的矩阵结构包括被布置成促进所述矩阵Bk,l进入所述处理元件阵列的第二馈送模式的一个或多个子区域。8.根据权利要求7所述的脉动阵列,其中,所述第一预先布置的矩阵结构和所述第二预先布置的矩阵结构是基于所述处理元件阵列的尺寸和尺寸而预先确定的。9.根据权利要求1所述的脉动阵列,其中,所述集成电路是现场可编程门阵列。10.一种集成电路装置,包括:包括脉动阵列的集成电路,所述脉动阵列包括:处理元件阵列,其包括在竖直方向和水平方向上布置的处理元件;通信耦合到所述处理元件阵列的排出阵列;第一馈送器阵列,其包括在竖直方向上通信耦合到所述处理元件的第一馈送器,所述第一馈送器根据第一馈送模式从外部存储器向所述处理元件阵列加载第一矩阵数据,其中,所述第一矩阵数据包括采用第一预先布置的矩阵结构的矩阵Am,n,使得采用所述第一预先布置的矩阵结构的所述矩阵Am,n的取向与所述矩阵Am,n的初始取向不同;以及第二馈送器阵列,其包括在水平方向上通信耦合到所述处理元...
【专利技术属性】
技术研发人员:R·黄,Y·T·刘,J·G·H·翁,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。