CN111832718A - 芯片架构 - Google Patents

芯片架构 Download PDF

Info

Publication number
CN111832718A
CN111832718A CN202010586026.4A CN202010586026A CN111832718A CN 111832718 A CN111832718 A CN 111832718A CN 202010586026 A CN202010586026 A CN 202010586026A CN 111832718 A CN111832718 A CN 111832718A
Authority
CN
China
Prior art keywords
module
convolution
image
external storage
chip architecture
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010586026.4A
Other languages
English (en)
Other versions
CN111832718B (zh
Inventor
谭黎敏
宋捷
桑迟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Xijing Technology Co ltd
Original Assignee
Shanghai Westwell Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Westwell Information Technology Co Ltd filed Critical Shanghai Westwell Information Technology Co Ltd
Priority to CN202010586026.4A priority Critical patent/CN111832718B/zh
Publication of CN111832718A publication Critical patent/CN111832718A/zh
Application granted granted Critical
Publication of CN111832718B publication Critical patent/CN111832718B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/955Hardware or software architectures specially adapted for image or video understanding using specific electronic processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Neurology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Complex Calculations (AREA)

Abstract

本发明提供一种芯片架构,包括:接口模块,包括数据通道控制模块以及指令通道控制模块;外部储存器接口模块,配置成获取待测图像,并储存至外部储存器;特征输入模块,配置成获取所述待测图像;卷积模块,配置成获取所述待测图像,基于所述待测图像及卷积权重进行卷积计算,获得卷积输出;处理模块,配置成获取所述卷积输出,并对所述卷积输出进行处理,所述卷积模块和所述处理模块级联;特征输出模块,配置成获得经处理后的卷积输出,并通过所述外部储存器接口模块储存至所述外部储存器;以及总控模块,配置成获取卷积神经网络计算参数,以对所述卷积模块和所述处理模块进行控制。本发明提供的芯片架构加速图像卷积的计算。

Description

芯片架构
技术领域
本发明涉及卷积神经网络领域,尤其涉及一种芯片架构。
背景技术
卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络, 它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理 有出色表现。它包括卷积层(convolutional layer)和池化层(pooling layer)。卷 积神经网络已广泛应用于图像分类、物体识别、目标追踪。
如何通过芯片架构的设计,提高图像卷积计算的速度,是本领域技术人 员亟待解决的问题。
发明内容
本发明为了克服上述现有技术存在的缺陷,提供一种芯片架构,用以加 速图像卷积的计算。
根据本发明的一个方面,提供一种芯片架构,包括:
接口模块,包括数据通道控制模块以及指令通道控制模块,分别配置成 控制数据通道和指令通道;
外部储存器接口模块,配置成自所述接口模块的数据通道获取待测图 像,并储存至外部储存器;
特征输入模块,配置成自所述外部储存器接口模块获取所述待测图像;
卷积模块,配置成自所述特征输入模块获取所述待测图像,基于所述待 测图像及卷积权重进行卷积计算,获得卷积输出;
处理模块,配置成自所述卷积模块获取所述卷积输出,并对所述卷积输 出进行处理,所述卷积模块和所述处理模块级联;
特征输出模块,配置成自所述处理模块获得经处理后的卷积输出,并通 过所述外部储存器接口模块储存至所述外部储存器;以及
总控模块,配置成获取卷积神经网络计算参数,以对所述卷积模块和所 述处理模块进行控制,并获取所述芯片架构各模块的执行状态以与所述指令 通道进行交互。
在本发明的一些实施例中,所述外部储存器接口模块还配置成自所述接 口模块的数据通道获取所述卷积权重以及所述卷积神经网络计算参数,并储 存至外部储存器。
在本发明的一些实施例中,所述指令通道控制模块还配置成:
控制寄存器列表的配置,所述寄存器列表包括第一部分寄存器和第二部 分寄存器,所述第一部分寄存器支持上位机进行读写,所述第一部分寄存器 中至少部分寄存器用于所述芯片架构的配置,所述第二部分寄存器仅支持上 位机进行读取,所述第二部分寄存器用于监控所述芯片架构各模块的执行状 态。
在本发明的一些实施例中,所述第一部分寄存器中最后一位为计算触发 位,以触发所述卷积模块和所述处理模块对一待测图像进行处理;
当该待测图像处理完成并储存至所述外部储存器时,所述总控模块通过 所述接口模块向所述上位机上报中断信息。
在本发明的一些实施例中,所述指令通道控制模块还配置成:通过所述 寄存器列表的第一部分寄存器,接收上位机发送的复位指令,并将所述复位 指令发送至所述总控模块,以通过所述总控模块使所述卷积模块和所述处理 模块按序复位。
在本发明的一些实施例中,所述总控模块包括:
参数缓存模块,配置成通过所述特征输入模块通过所述外部储存器接口 模块自所述外部储存器获取所述卷积神经网络计算参数进行缓存;
计算控制模块,配置成根据至少部分所述卷积神经网络计算参数使能所 述卷积模块和所述处理模块中的功能。
在本发明的一些实施例中,所述特征输入模块按乒乓读取,通过所述外 部储存器接口模块自所述外部储存器读取待测图像以及卷积权重。
在本发明的一些实施例中,当应用至多层卷积计算时,所述特征输出模 块通过所述外部储存器接口模块储存至所述外部储存器的经处理后的卷积输 出作为下一层卷积计算的待测图像。
在本发明的一些实施例中,当所述外部储存器接口模块开始自所述接口 模块的数据通道获取下一待测图像,并储存至外部储存器的同时,所述卷积 模块、所述处理模块、所述总控模块开始对当前待测图像进行处理。
相比现有技术,本发明的优势在于:
通过芯片架构设计中,总控模块对于级联的卷积模块和处理模块的控制, 加速图像的卷积计算和卷积输出的处理。
附图说明
通过参照附图详细描述其示例实施方式,本发明的上述和其它特征及优 点将变得更加明显。
图1示出了根据本发明实施例的芯片架构的结构示意图;
图2示出了根据本发明实施例的处理模块的结构示意图;
图3示出了根据本发明实施例的应用于尺寸为5*5的卷积核的一卷积组 的示意图;
图4示出了根据本发明实施例的卷积模块的示意图;
图5示出了根据本发明具体实施例的芯片架构处理图像的时序图;。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够 以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实 施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达 给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结 合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相 同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图 中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相 对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或 集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制 器装置中实现这些功能实体。
为了解决现有技术的缺陷,本发明提供一种处理模块。下面将结合图2 对本发明提供的处理模块进行进一步地描述。
首先参见图1,图1示出了根据本发明实施例的芯片架构20的结构示意 图。芯片架构20包括接口模块210、外部储存器接口模块240、特征输入模 块230、卷积模块250、处理模块260、特征输出模块270以及总控模块220。
接口模块210包括数据通道控制模块212以及指令通道控制模块211, 分别配置成控制数据通道和指令通道。外部储存器接口模块240配置成自所 述接口模块210的数据通道获取待测图像,并储存至外部储存器。特征输入 模块230配置成自所述外部储存器接口模块240获取所述待测图像。卷积模 块250配置成自所述特征输入模块230获取所述待测图像,基于所述待测图 像及卷积权重进行卷积计算,获得卷积输出。处理模块260配置成自所述卷 积模块250获取所述卷积输出,并对所述卷积输出进行处理,所述卷积模块 250和所述处理模块260级联。特征输出模块270配置成自所述处理模块260 获得经处理后的卷积输出,并通过所述外部储存器接口模块240储存至所述 外部储存器。总控模块270配置成获取卷积神经网络计算参数,以对所述卷 积模块250和所述处理模块260进行控制,并获取所述芯片架构各模块的执 行状态以与所述指令通道进行交互。
具体而言,在图1中,空心宽箭头代表着高位宽的数据通道和接口,外 部存储相关的数据通道一般为高位宽(诸如512位)。其余片内流水线内部 互联总线有更高的位宽。实心黑色箭头统一表示指令,参数,中断等低位宽 信号的通道。
具体而言,在本发明的各个实施例中,通过上位机控制所述芯片架构20 对待测图像进行卷积计算。首先,上位机根据用户输入、预存于上位机或通 过其它方式计算获得卷积神经网络模型中每层的卷积神经网络计算参数、每 层卷积计算所需的权重数据以及控制卷积计算的寄存器列表配置。由此,卷 积神经网络模型在本发明实施例中被参数化表示,每层的卷积神经网络相关 参数可以使用64个32位(本发明并非以为限制,根据具体的卷积神经网络 模型可以调整参数数量和每个参数的数据大小)的卷积参数来描述,不同功能则参数不同。由此,本发明可以支持不同模型的灵活适配,前后层之间没 有过多约束,可以通过设置和扩展适应多达255层的卷积神经网络模型(本 发明并非以此为限制,多于255层的卷积神经网络模型也可以在本发明中适 用)足够支持目前主流的各类深度神经网络。
在本发明的一些实施例中,所述外部储存器接口模块240还配置成自所 述接口模块的数据通道获取所述卷积权重以及所述卷积神经网络计算参数, 并储存至片外部储存器(诸如DDR,双倍速率同步动态随机存储器)。在该 实施例的一些具体实现中,在待测图像的卷积计算开始前,针对一个固定的 算法模型,上位机可启动参数预读取功能,将卷积神经网络模型每层的卷积 神经网络计算参数、每层卷积计算所需的权重数据以及控制卷积计算的寄存 器列表配置通过接口模块210中的数据通道,发送外部存储其接口模块240,以储存至片外的外部储存器存储。由此,对于一个固定的场景(或固定的算 法),比如检测视频图像的某个区域内有没有目标车辆出现,对于这个固定 的任务,模型的参数及权重将会是固定的。则只需要在任务开始前执行参数 预读取的功能一次,后续就无需再反复预取,只要机器不断电,则片外的外 部储存器中的参数及权重可以一直被反复使用。
在本发明的一些实施例中,所述指令通道控制模块211还配置成控制寄 存器列表的配置。所述寄存器列表包括第一部分寄存器和第二部分寄存器, 所述第一部分寄存器支持上位机进行读写,所述第一部分寄存器中至少部分 寄存器用于所述芯片架构的配置,所述第二部分寄存器仅支持上位机进行读 取,所述第二部分寄存器用于监控所述芯片架构各模块的执行状态。在该实 施例的一些具体实现中,当在待测图像的卷积计算开始前,参数预读取功能 完成后,上位机进入实时工作状态,比如,从视频流中按帧抽取图像,即待测图像,也经过接口模块210的数据通道,通过外部储存器接口模块240储 存至片外部储存器。然后,通过接口模块210的指令通道,进行寄存器列表 配置。寄存器列表是上位机按照IO操作可读写的部位,物理上存在于本发 明提供的芯片架构中的接口模块210的指令通道控制模块211中。本发明可 以提供多个寄存器(诸如128个寄存器,本发明并非以此为限制),每个寄 存器可以储存32位。在一个具体实现中,128个寄存器按照地址,从最低的 地址起,前16个寄存器为可读写寄存器(以作为第一部分寄存器,第一部分 寄存器的数量和位置并非以此为限制),是上位机用来进行指令发送,配置 特殊地址,触发计算等功能,前16个寄存器也支持回读,保证上位机确认已 经写入了正确的数值。其中,启用第一部分寄存器中的前4个寄存器(数量 并非以此为限制),即可完成对芯片架构的配置,例如,寄存器列表地址偏 移为0xc起始的寄存器,即第4个寄存器,其内容表示首层卷积计算后产生 的模块上报信息在外部储存器中的存储起始地址。除了第一部分寄存器之外, 其余可以作为第二部分寄存器。第二部分寄存器对于上位机来说,均为只读 类型,用于监控芯片架构中各模块的状态等。由此,总控模块220可以包括 状态监控模块224,从而通过状态监控模块224对第二部分寄存器进行各模 块状态信息的写入,以供上位机进行读取和监控。
在本发明的一些实施例中,所述第一部分寄存器中最后一位为计算触发 位,以触发所述卷积模块250和所述处理模块260对一待测图像进行处理。 当该待测图像处理完成并储存至所述外部储存器时,所述总控模块220通过 所述接口模块210向所述上位机上报中断信息。在该实施例的一些具体实现 中,当上位机配置第一部分寄存器时,第一部分寄存器中最后一个位配置为 计算触发位。此位配置完,则芯片架构开始按照前述配置,完成配置要求具 体层数的计算,直到整个模型计算完毕,即一帧待测图像计算完成。在该实 施例中,总控模块220可以包括中断控制模块223,中断控制模块223与接 口模块210的指令通道控制模块211进行交互以将中断信息发送至上位机, 提示硬件加速计算完成。
在本发明的一些实施例中,所述指令通道控制模块211还配置成通过所 述寄存器列表的第一部分寄存器,接收上位机发送的复位指令,并将所述复 位指令发送至所述总控模块220,以通过所述总控模块220使所述卷积模块 250和所述处理模块260按序复位。在该实施例中,总控模块220可以通过 状态监控模块224实时监控片内各个模块的状态信息,实时上报至接口模块 210中的寄存器列表中,上位机软件可通过指令通道,实时读取查询硬件加 速器的工作状态信息。上位机如果发现异常,可以通过寄存器配置,通过接 口模块210发送复位指令至总控模块220的复位控制模块222,以通过复位 控制模块222实现片内各模块和接口模块210的按序复位。
在本发明的一些实施例中,所述总控模块220还可以包括参数缓存模块 221。参数缓存模块221配置成通过所述特征输入模块230通过所述外部储存 器接口模块240自所述外部储存器获取所述卷积神经网络计算参数进行缓 存。所述总控模块220还可以包括计算控制模块225。计算控制模块225配 置成根据至少部分所述卷积神经网络计算参数使能所述卷积模块250和所述 处理模块260中的功能。具体而言,总控模块220中的计算控制模块225还 可以根据各模块上报的状态信息,启动模型内每层计算或者等待未完成前一 层计算的子模块。一旦上位机触发整个模型计算之后,仅需分少量CPU资源 做实时状态监控和中断监控,模型内的每层计算使能,均由计算控制模块220 完成。
在本发明的一些实施例中,芯片架构10首先通过特征输入模块230,将 卷积神经网络模型中的第一层的配置参数从外部存储器读入至总控模块220 中的参数缓存模块221(诸如是SRAM,Static Random Access Memory,静 态随机存取存储器,本发明并非以此为限制),紧接着特征输入模块230开 始从外部存储器中分片读取待计算的待测图像至特征输入模块310内进行缓 存。计算控制模块225通过解析本层的参数,配置使能每个模块相应的功能, 并开始计算。整个计算过程中,特征输入模块230按照乒乓读取的特点,从 外部存储器中同时读取待测图像和卷积权重,输入到卷积模块250。待第一 批数据计算完成到达特征输出模块270,特征输出模块270把输出的特征图 像按照适配预设的排列规则,传送到外部存储器中的对应地址。重复上述计 算,直到该待测图像的最后一层网络的计算结果输出至外部存储器中,然后 总控模块220会启动中断通知上位机。需要注意的是,本层输出的特征图像 即会作为下一层的待测图像,所以在本层没有结束计算前,下一层的计算不 能开始。但是有些模块的工作,搬移数据需要耗时,下面将结合图5进行描 述,本发明如何通过多层次特色流水线技术,压缩整体计算耗时。
下面分别结合图2至图4描述本发明的一些具体实施例中提供的卷积模 块250和处理模块260。
参见图2,图2示出了根据本发明实施例的处理模块的结构示意图。处 理模块10包括偏置模块110、前激活模块120、批归一化模块130、后激活 模块140、池化模块150以及控制模块160。
偏置模块110连接至卷积模块的输出,配置成将所述卷积模块的输出结 果进行偏置处理。前激活模块120连接至所述偏置模块110,配置成对所述 偏置模块110的输出进行激活处理。批归一化模块130连接至所述前激活模 块120配置成对所述前激活模块120的输出进行批归一化处理。后激活模块 140连接至所述批归一化模块130,配置成对所述批归一化模块130的输出进 行激活处理。池化模块150连接至所述前激活模块120、批归一化模块130 以及后激活模块140中的一个或多个模块,配置成对所连接的模块的输出进 行池化处理。具体而言,在本实施例中,所述前激活模块120、批归一化模 块130以及后激活模块140连接至一输出选择模块170,由输出选择模块170 自所述前激活模块120、批归一化模块130以及后激活模块140选择一个或 多个模块与所述池化模块150连接。输出选择模块170可由控制模块160提 供的参数进行控制,本发明并非以此为限制。控制模块160配置成通过参数配置激活所述偏置模块110、所述前激活模块120、所述批归一化模块130、 所述后激活模块140以及所述池化模块150中的一个或多个模块。所述偏置 模块110、所述前激活模块120、所述批归一化模块130、所述后激活模块140 以及所述池化模块150皆包括旁路,当该模块未激活时,数据经过该模块的 旁路进入下一模块。例如,当偏置模块110未激活,前激活模块120激活时, 所述卷积模块的输出结果直接通过偏置模块110的旁路进行前激活模块120。
在本发明的一些实施例中,所述偏置模块110可以配置成执行加法偏置, 所述加法偏置中被加的第一参数由所述控制模块160加载至所述偏置模块 110中。偏置模块110的加法偏置对应公式为y=conv(w,x)+b,其中,y为 偏置模块110的输出,conv(w,x)为所述卷积模块的输出结果,b为第一参数。
在本发明的一些实施例中,所述前激活模块120和所述后激活模块140 分别包括多个非线性整流单元。每个所述非线性整流单元配置成判断输入数 据是否为正。若输入数据为正数,则判断激活第一整流功能(normal Relu) 或第二整流功能(Relu(x),x为第二参数)。所激活第一整流功能(normal Relu) 或第二整流功能(Relu(x),x为第二参数)可由控制模块160提供的参数进 行判断和确定。若激活第一整流功能,则使所述非线性整流单元的输出等于 输入。若激活第二整流功能,则判断输入数据是否大于第二参数。若输入数 据大于第二参数,则输出第二参数。若输入数据不大于第二参数,则使所述 非线性整流单元的输出等于输入。若输入数据为负数,则判断激活第三整流 功能(normal Relu)或第四整流功能。所激活第三整流功能(normal Relu) 或第四整流功能(leaky relu)可由控制模块160提供的参数进行判断和确定。 若激活第三整流功能,则使所述非线性整流单元的输出为0。若激活第三整 流功能,则所述非线性整流单元的输出为输入的第三参数倍。进一步地,所 述第二参数及所述第三参数由所述控制模块160经由时间切换控制加载至所 述非线性整流单元中。具体而言,本实施例中,将大部分整流线性相关的算 子功能继承进同一个模块,且支持流水线功能。通过软件参数控制,达到灵 活配置算法的目的。
具体而言,所述前激活模块120和所述后激活模块140分别包括的多个 非线性整流单元的数量可以依据卷积模块每次提供的像素数据的数量来确 定,通过控制模块160的时序控制,可在不同批次的像素数据输入时,切换 输入至各非线性整流单元的第二参数、第三参数、前述的用于激活第一整流 功能或第二整流功能的参数、前述的用于激活第三整流功能或第四整流功能 的参数的配置。
在本发明的一些实施例中,所述批归一化模块130包括多个批归一化单 元。每个所述批归一化单元至少包括一乘法器以及一加法器。所述批归一化 单元的输入以及一由控制模块160配置的第四参数连接至所述乘法器,所述 乘法器的输出以及一由控制模块160配置的第五参数连接至所述加法器,从 而所述批归一化单元使输入所述批归一化单元的数据与第四参数相乘获得的 乘积,与第五参数相加,获得的和作为所述批归一化单元输出。具体而言在 本发明的一些实施例中,所述第四参数及所述第五参数由所述控制模块经由 时间切换控制加载至所述批归一化单元中。进一步地,批归一化单元还可以 包括一位宽控制模块,用于对第五参数进行切换有效小数位后,再进入加法 器,从而可以针对不同量化小数有效位。
在本发明的一些实施例中,所述池化模块150可以包括最大池化单元。 在一些变化例中,所述池化模块150可以平均池化单元。在又一些实施例中, 所述池化模块150可以包括最大池化单元和平均池化单元,并经由控制模块 160的参数控制确定激活最大池化单元或平均池化单元。
由此,在本发明的一个具体应用中,在一具体算法模型中,对于一第二 卷积层,其后跟随了前激活、批归一化和池化处理。如果按照现有技术中, CPU常规的算法平台操作,那么前激活、批归一化和池化处理的每层数据输 入要自片外存储器(诸如DDR,双倍速率同步动态随机存储器)中读取1次 数据,每层数据输出要将数据写入至片外存储器,每层输入输出算2次读写 操作,这样上述流程做了8次读写操作。而在本发明中,将卷积层以及其后跟随的前激活模块、批归一化模块和池化模块整理成一层,分别激活片内四 级流水线,数据不出芯片就完成了四个算子的连续计算,由此,本发明提供 的方案只需要做2次片外存储器的读写操作,就完成了上述全部计算,极大 降低功耗和延时。
在一具体算法模型中,对于一第三卷积层,其后跟随了前激活处理和批 归一化处理,与前述的第二卷积层,对于第三卷积层以及其后跟随的前激活 模块、批归一化模块整理成一层,分别激活片内三级流水线,数据不出芯片 就完成了三个算子的连续计算,由此,本发明提供的方案只需要做2次读写 操作,就完成了上述全部计算,同时,还无需激活并旁路不使用的模块,灵 活适用在不同的算法中。
上述具体算法模型的参数设置可以参见下表:
模型A 层类型 N C H W
第二卷积层 卷积 1 256 39 53
第二前激活层 激活函数 1 256 39 53
第二批归一化层 批归一化 1 256 39 53
第二池化层 最大池化 1 256 19 26
第三卷积层 卷积 1 384 19 26
第三前激活层 激活函数 1 384 19 26
第三批归一化层 批归一化 1 384 19 26
上表中,N默认为1,表示每次运行一帧图像;C为输出通道维度,即Co,也 是下一层的输入通道维度Ci;H为输入图像height,即有多少行像素;W为 输入图像width,即有多少列像素。
在一具体算法模型中,对于一另一卷积层,其后级联了批归一化处理和 后激活处理从而整理成一层。在本实施例中,无需激活并旁路不使用的模块。
上述具体算法模型的参数设置可以参见下表:
Figure BDA0002554671160000101
Figure BDA0002554671160000111
其中,输入特征图尺寸和输出特征图尺寸从左到右依次表示:(N,C,H,W), 各符号含义与上表一致;(KH,KW,C,F)中KH,KW分别为卷积核的行数和 列数(即卷积核的尺寸);C,F分别为Ci,Co。
处理模块10中的控制模块160向各模块传输和控制的参数即为前述的 卷积神经网络计算参数。
具体而言,卷积模块250可以包括多个卷积引擎。每个所述卷积引擎包 括15*M*N个乘法器以及至少设置在部分乘法器之间的加法器,N为大于1 的整数。其中,根据所述卷积引擎所应用的不同的卷积核的尺寸,按不同的 方式激活所述乘法器之间、所述乘法器与所述加法器之间的连接方式。
具体而言,卷积引擎的数量可以根据具体算力需求来确定,本发明并非 以此为限制。
在本发明的一个优选例中,N为4。在该优选例中,每个所述卷积引擎 包括15*M*4个乘法器。对于常用的、主流的神经网络模型中,卷积核的尺 寸包括7*7、5*5、3*3。当应用到尺寸为3x3卷积核时,可将对于卷积引擎 10在M维度上每个15*4乘法器阵列分为5个卷积组11,每个卷积组11包 括3行4列乘法器,每个卷积组11对应一个卷积核计算,5组卷积组11同 时可支持5个不同的卷积核并行计算。当对于卷积引擎10在M维度上每个 15*4乘法器阵列,应用到尺寸为5x5卷积核时,可将15行乘法器分为3组 卷积组12,每个卷积组12包括5行4列乘法器,每个卷积组12对应一个卷 积核计算,3每个卷积组12同时可支持3个不同的卷积核并行计算。同理, 当对于卷积引擎10在M维度上每个15*4乘法器阵列,应用到尺寸为7x7 卷积核时,可将15行乘法器分为2组卷积组13,每个卷积组13包括7行4 列乘法器(最后一行乘法器不激活),每个卷积组13对应一个卷积核计算, 2每个卷积组13同时可支持2个不同的卷积核并行计算。
由此,可以利用同一套卷积引擎提高应用不同尺寸的卷积核时,乘法器 的利用率,且根据不同的卷积核的尺寸实现不同的乘法器资源分配,实现数 据的动态分布,达到需要的计算方式。进一步地,本发明中,一个卷积引擎 同时支持N行输出特征图的计算输出,即每列乘法器对应一行输出特征图像 素值。在前述的优选例中,将N设定为4是基于整体架构的分片计算(tiling) 特征及卷积后池化操作便捷性共同考虑的结果。
多个所述卷积引擎对输入特征图和卷积核权重进行乘法运算,并在输入 特征通道将乘法结果进行累加以获得输出特征图。进一步,一次传统的卷积 运算,需要卷积核在输出特征图滑动,即形成多个滑动窗口(sliding window)。 计算所有的滑动窗口,可以生成出一个完整的输出特征图。
下面参见图3,图3示出了根据本发明实施例的应用于尺寸为5*5的卷 积核的一卷积组的示意图。
具体而言,对于步长S为1、尺寸为P*Q的卷积核,每个所述卷积组包 括P*N个乘法器,每列乘法器的相邻两个乘法器之间连接有加法器,每个所 述卷机组并行读取(P+N-1)行输入特征图,每个卷机组并行读取P行卷积 核权重,其中,所述P行卷积核权重分别输入一行乘法器;所述(P+N)行 输入特征图中第1至第P行分别输入一行乘法器,第P+1行至第N-1行分别 输入一列乘法器,P、Q为大于1的整数。
对于步长S为2、尺寸为P*Q的卷积核,每个所述卷积组包括P*N个乘 法器,每列乘法器的相邻两个乘法器之间连接有加法器,每个所述卷积组并 行读取[S*N+(P-S)]行输入特征图。具体而言,对于3*3的卷积核,每个所 述卷积组并行读取(2x4)+(3-2)=9行输入特征图;对于5*5的卷积核,每个 所述卷积组并行读取(2x4)+(5-2)=11行输入特征图;对于7*7的卷积核, 每个所述卷积组并行读取(2x4)+(7-2)=13行输入特征图。
下面以尺寸为5*5的卷积核为例,描述一个卷积组的输入、输出、加法 器、乘法器的连接方式。
在图5所示的实施例中,卷积组包括5行4列乘法器,每一列乘法器中, 相邻两个乘法器之间连接有一加法器。5*5的卷积核的第一行卷积核权重依 次输入第一行乘法器;5*5的卷积核的第二行卷积核权重依次输入第二行乘 法器;5*5的卷积核的第三行卷积核权重依次输入第三行乘法器;5*5的卷积 核的第四行卷积核权重依次输入第四行乘法器;5*5的卷积核的第五行卷积 核权重依次输入第五行乘法器。输入特征图的第一行输入第一行第一列的乘 法器;输入特征图的第二行输入第二行第一列乘法器后输入第一行第二列乘 法器;输入特征图的第三行输入第三行第一列乘法器后,输入第二行第二列 乘法器,然后输入第一行第三列乘法器;输入特征图的第四行输入第四行第 一列乘法器后,输入第三行第二列乘法器,然后输入第二行第三列乘法器, 最后输入第一行第四列乘法器;输入特征图的第五行输入第五行第一列乘法 器后,输入第四行第二列乘法器,然后输入第三行第三列乘法器,最后输入 第二行第四列乘法器;输入特征图的第六行输入第五行第二列乘法器后,输 入第四行第三列乘法器,然后输入第三行第四列乘法器;输入特征图的第七 行输入第五行第三列乘法器后,输入第四行第四列乘法器;输入特征图的第 八行输入第五行第四列乘法器。各列乘法器由第五行开始依次通过加法器将 乘法结果类加,从而对应四列乘法器获得部分累加值第一行、部分累加值第 二行、部分累加值第三行、以及部分累加值第4行。由此,减少了读取接口 的使用,优化了资源和功耗,面积。
下面参见图4,图4示出了根据本发明实施例的卷积引擎的示意图。
除了在输出特征通道(输入特征图的高度维度)上的并行加速之外,本 发明的卷积引擎还可以提供在输入特征通道的M倍并行加速,M为大于1 的整数。,每个卷积组输出的N行部分累加值(psum),不是最终的输出特 征图的结果,需要在输入特征通道维度上做累加。考虑到常用的主流卷积神 经网络模型,输入特征通道的数量通常以偶数出现,一般是2的n次方的形 式,M为2的n次方。由此,可以利用M个卷积组,用于支持M个不同的 输入特征图的通道计算。
在本实施例中,以N为4且M为16,为例,说明输入特征通道的M倍 并行加速。如图4,16个通道的数据在卷积组外的加法树中进行累加,最终 形成输出特征图的部分累加值。本实施例中,将输入特征图的输入特征通道 计算加速并行度定为16,即兼顾了加速的目的,即16倍加速,也考虑了算 法模型的普适性,同时需要考虑过多资源导致片上资源紧张,密集布线区域 带来的时序问题等。
输出特征图部分累加值第一行由16个通道的部分累加值第一行累加获 得;输出特征图部分累加值第二行由16个通道的部分累加值第二行累加获 得;输出特征图部分累加值第三行由16个通道的部分累加值第三行累加获 得;输出特征图部分累加值第四行由16个通道的部分累加值第四行累加获得
由此,继承诸如图5中的部分累加值的累加方向,实现了输入特征通道 维度16倍并行计算加速和输出特征通道维度4倍的并行计算加速。此外,根 据不同硬件算力需求,不同产品的定位,图4中的架构,可考虑并行多份, 针对不同输出特征通道维度进一步加速,提升性能。
以上仅仅是示意性地描述本发明提供的卷积模块250,本发明并非以此 为限制。
下面结合图5描述本发明提供的芯片架构的一个具体流水线操作方式, 从而说明本发明提供的芯片架构的性能提升。
在图5中,横轴为时间轴,按照计算的每帧图像逐次进行,纵轴表示不 同级别的流水线工作模块的工作使能情况。如果从同一个时间点纵向看,同 时均在工作的模块则体现出了流水线架构的优点。下面将几个层次的流水线 分别解释,按照图示,在本实施例中,以2帧待测图像,卷积神经网络模型 内共2层卷积网络为例进行说明。
具体而言,待测图像1首先启动传输,直到完全存储在外部存储器中。 紧接着接口模块继续工作,开始传输待测图像2。待测图像2的传输过程, 不影响待测图像1的计算过程,则待测图像2的传输时间被覆盖在了待测图 像1的计算过程中。本发明提供的接口模块提供高速接口,高速接口的传输 能力强,一帧图像的传输时间通常小于一帧图像的计算时间,则除了第一帧 图像,整体上看,后续帧图像传输进入至外部储存器中的时间均被节省至0。
对于芯片架构内部,即待测图像网络模型多层计算,前后层之间的流水 线关系而言,由于每层的配置参数和特征图像均由特征输入模块从外部储存 器中读取,传输至芯片内,因此每层计算开始前,首先需要读取参数,把当 前层需要的参数缓存在片内缓存(诸如SRAM)里。当参数完成传输,紧接 着开始待测图像传输,由于待测图像较大,需要分批缓存在芯片内的缓存中。 如图5所示,第二层的参数缓存过程,仅需要第一层的待测图像的输入特征 传输结束,就可以立刻开始。前后两层的参数分别存储在片上的乒乓缓存中, 芯片内的缓存可以分为A/B两面。第一层参数存在A面,当第一层计算没 有完全结束时,A面的缓存数据不可以被刷新,此时,即使第一层完成计算 的待测图像的特征输出至外部储存器的过程还没有完成,第二层的参数依然 可以提前进入B面。待第一层的的待测图像的特征输出完成之后,启动第二 层的待测图像(也就是第一层的输出)的特征输入。所以,第二层的参数传 输时间部分被覆盖,节省了传输等待。但是由于不同尺寸的输入特征数据大 小不同,此处参数传输节省的时间是一个动态变化的量。
芯片架构内部多级计算流水线之间的关系,可以参考图2,从卷积阵列 开始,直到池化计算完成。再参考图5,由于输入待测图像整体较大,采用 分批的办法,每次传输可仅启动一部分数据进入片内,这部分数据会按架构 经过整个流水线路径,因此,当待测图像传输开始一段时间后,卷积计算就 可以开始,同理,当卷积计算开始一段时间后,池化计算也可以开始。此处 注意,卷积计算所需要的权重也是分批进入片内的,时间基本被覆盖在待测 图像缓存和卷积计算中。进一步地,本实施例中还可以提供一数据缓存模块, 位于卷积模块中的卷积阵列之后,池化计算之前,目的是为了匹配两级流水 线的输入带宽不同,重排不同分批之间的数据,也达到缓存数据的目的。总 体上看,即使输入特征缓存没有完全结束,但是已经分批进入片内的数据, 通过流水线提前开始了计算,最终,待全部的特征分批输出,则本层计算完 全结束。而这时,下一层的参数缓存,已经提前开始运行或者已经完成。
进一步地,图5中,还给出了每帧图像计算结束,上报中断的时间位置, 实际情况中,完成中断上报的过程非常短暂,几乎不影响整体的计算性能。
以上仅仅是示意性地描述本发明的一个具体实现,本发明并非以此为限 制。
相比现有技术,本发明的优势在于:
通过芯片架构设计中,总控模块对于级联的卷积模块和处理模块的控制, 加速图像的卷积计算和卷积输出的处理。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本 公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性 变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公 开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被 视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

Claims (10)

1.一种芯片架构,其特征在于,包括:
接口模块,包括数据通道控制模块以及指令通道控制模块,分别配置成控制数据通道和指令通道;
外部储存器接口模块,配置成自所述接口模块的数据通道获取待测图像,并储存至外部储存器;
特征输入模块,配置成自所述外部储存器接口模块获取所述待测图像;
卷积模块,配置成自所述特征输入模块获取所述待测图像,基于所述待测图像及卷积权重进行卷积计算,获得卷积输出;
处理模块,配置成自所述卷积模块获取所述卷积输出,并对所述卷积输出进行处理,所述卷积模块和所述处理模块级联;
特征输出模块,配置成自所述处理模块获得经处理后的卷积输出,并通过所述外部储存器接口模块储存至所述外部储存器;以及
总控模块,配置成获取卷积神经网络计算参数,以对所述卷积模块和所述处理模块进行控制,并获取所述芯片架构各模块的执行状态以与所述指令通道进行交互。
2.如权利要求1所述的芯片架构,其特征在于,所述外部储存器接口模块还配置成自所述接口模块的数据通道获取所述卷积权重以及所述卷积神经网络计算参数,并储存至外部储存器。
3.如权利要求2所述的芯片架构,其特征在于,所述指令通道控制模块还配置成:
控制寄存器列表的配置,所述寄存器列表包括第一部分寄存器和第二部分寄存器,所述第一部分寄存器支持上位机进行读写,所述第一部分寄存器中至少部分寄存器用于所述芯片架构的配置,所述第二部分寄存器仅支持上位机进行读取,所述第二部分寄存器用于监控所述芯片架构各模块的执行状态。
4.如权利要求3所述的芯片架构,其特征在于,所述第一部分寄存器中最后一位为计算触发位,以触发所述卷积模块和所述处理模块对一待测图像进行处理;
当该待测图像处理完成并储存至所述外部储存器时,所述总控模块通过所述接口模块向所述上位机上报中断信息。
5.如权利要求3所述的芯片架构,其特征在于,所述指令通道控制模块还配置成:通过所述寄存器列表的第一部分寄存器,接收上位机发送的复位指令,并将所述复位指令发送至所述总控模块,以通过所述总控模块使所述卷积模块和所述处理模块按序复位。
6.如权利要求2所述的芯片架构,其特征在于,所述总控模块包括:
参数缓存模块,配置成通过所述特征输入模块通过所述外部储存器接口模块自所述外部储存器获取所述卷积神经网络计算参数进行缓存。
7.如权利要求2所述的芯片架构,其特征在于,所述总控模块包括:
计算控制模块,配置成根据至少部分所述卷积神经网络计算参数使能所述卷积模块和所述处理模块中的功能。
8.如权利要求2所述的芯片架构,其特征在于,所述特征输入模块按乒乓读取,通过所述外部储存器接口模块自所述外部储存器读取待测图像以及卷积权重。
9.如权利要求1所述的芯片架构,其特征在于,当应用至多层卷积计算时,所述特征输出模块通过所述外部储存器接口模块储存至所述外部储存器的经处理后的卷积输出作为下一层卷积计算的待测图像。
10.如权利要求1至9任一项所述的芯片架构,其特征在于,当所述外部储存器接口模块开始自所述接口模块的数据通道获取下一待测图像,并储存至外部储存器的同时,所述卷积模块、所述处理模块、所述总控模块开始对当前待测图像进行处理。
CN202010586026.4A 2020-06-24 2020-06-24 芯片架构 Active CN111832718B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010586026.4A CN111832718B (zh) 2020-06-24 2020-06-24 芯片架构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010586026.4A CN111832718B (zh) 2020-06-24 2020-06-24 芯片架构

Publications (2)

Publication Number Publication Date
CN111832718A true CN111832718A (zh) 2020-10-27
CN111832718B CN111832718B (zh) 2021-08-03

Family

ID=72898103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010586026.4A Active CN111832718B (zh) 2020-06-24 2020-06-24 芯片架构

Country Status (1)

Country Link
CN (1) CN111832718B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111832717A (zh) * 2020-06-24 2020-10-27 上海西井信息科技有限公司 芯片结构及用于卷积计算的处理模块
CN112905530A (zh) * 2021-03-29 2021-06-04 上海西井信息科技有限公司 片上架构、池化计算加速器阵列、单元以及控制方法
CN112949847A (zh) * 2021-03-29 2021-06-11 上海西井信息科技有限公司 神经网络算法加速系统、调度系统及调度方法
CN113537482A (zh) * 2021-09-14 2021-10-22 绍兴埃瓦科技有限公司 神经网络计算模块、方法和通信设备
CN113792868A (zh) * 2021-09-14 2021-12-14 绍兴埃瓦科技有限公司 神经网络计算模块、方法和通信设备
CN113807509A (zh) * 2021-09-14 2021-12-17 绍兴埃瓦科技有限公司 神经网络加速装置、方法和通信设备
CN114113491A (zh) * 2021-12-10 2022-03-01 中国科学技术大学 一种利用卷积神经网络计算的集成式机器嗅觉芯片

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106228240A (zh) * 2016-07-30 2016-12-14 复旦大学 基于fpga的深度卷积神经网络实现方法
CN106504182A (zh) * 2016-11-02 2017-03-15 山东正晨科技股份有限公司 一种基于fpga的直线特征提取系统
US20170097884A1 (en) * 2015-10-05 2017-04-06 Intel Corporation Pipelined convolutional operations for processing clusters
CN106875011A (zh) * 2017-01-12 2017-06-20 南京大学 二值权重卷积神经网络加速器的硬件架构及其计算流程
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核
CN107679620A (zh) * 2017-04-19 2018-02-09 北京深鉴科技有限公司 人工神经网络处理装置
CN108108812A (zh) * 2017-12-20 2018-06-01 南京大学 用于卷积神经网络的高效可配置卷积计算加速器
CN108665059A (zh) * 2018-05-22 2018-10-16 中国科学技术大学苏州研究院 基于现场可编程门阵列的卷积神经网络加速系统
CN109697408A (zh) * 2018-11-22 2019-04-30 哈尔滨理工大学 一种基于fpga的人脸识别系统
CN109993279A (zh) * 2019-03-11 2019-07-09 东南大学 一种基于查找表计算的双层同或二值神经网络压缩方法
CN110688159A (zh) * 2017-07-20 2020-01-14 上海寒武纪信息科技有限公司 神经网络任务处理系统
CN110689126A (zh) * 2017-10-30 2020-01-14 上海寒武纪信息科技有限公司 一种用于执行神经网络运算的装置
US20200073636A1 (en) * 2018-08-31 2020-03-05 Qualcomm Incorporated Multiply-accumulate (mac) operations for convolutional neural networks
CN110991619A (zh) * 2019-12-09 2020-04-10 Oppo广东移动通信有限公司 神经网络处理器、芯片和电子设备

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170097884A1 (en) * 2015-10-05 2017-04-06 Intel Corporation Pipelined convolutional operations for processing clusters
CN106228240A (zh) * 2016-07-30 2016-12-14 复旦大学 基于fpga的深度卷积神经网络实现方法
CN106504182A (zh) * 2016-11-02 2017-03-15 山东正晨科技股份有限公司 一种基于fpga的直线特征提取系统
CN106875011A (zh) * 2017-01-12 2017-06-20 南京大学 二值权重卷积神经网络加速器的硬件架构及其计算流程
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核
CN107679620A (zh) * 2017-04-19 2018-02-09 北京深鉴科技有限公司 人工神经网络处理装置
CN110688159A (zh) * 2017-07-20 2020-01-14 上海寒武纪信息科技有限公司 神经网络任务处理系统
CN110689126A (zh) * 2017-10-30 2020-01-14 上海寒武纪信息科技有限公司 一种用于执行神经网络运算的装置
CN108108812A (zh) * 2017-12-20 2018-06-01 南京大学 用于卷积神经网络的高效可配置卷积计算加速器
CN108665059A (zh) * 2018-05-22 2018-10-16 中国科学技术大学苏州研究院 基于现场可编程门阵列的卷积神经网络加速系统
US20200073636A1 (en) * 2018-08-31 2020-03-05 Qualcomm Incorporated Multiply-accumulate (mac) operations for convolutional neural networks
CN109697408A (zh) * 2018-11-22 2019-04-30 哈尔滨理工大学 一种基于fpga的人脸识别系统
CN109993279A (zh) * 2019-03-11 2019-07-09 东南大学 一种基于查找表计算的双层同或二值神经网络压缩方法
CN110991619A (zh) * 2019-12-09 2020-04-10 Oppo广东移动通信有限公司 神经网络处理器、芯片和电子设备

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111832717A (zh) * 2020-06-24 2020-10-27 上海西井信息科技有限公司 芯片结构及用于卷积计算的处理模块
CN111832717B (zh) * 2020-06-24 2021-09-28 上海西井信息科技有限公司 芯片及用于卷积计算的处理装置
CN112905530A (zh) * 2021-03-29 2021-06-04 上海西井信息科技有限公司 片上架构、池化计算加速器阵列、单元以及控制方法
CN112949847A (zh) * 2021-03-29 2021-06-11 上海西井信息科技有限公司 神经网络算法加速系统、调度系统及调度方法
CN112949847B (zh) * 2021-03-29 2023-07-25 上海西井科技股份有限公司 神经网络算法加速系统、调度系统及调度方法
CN113537482A (zh) * 2021-09-14 2021-10-22 绍兴埃瓦科技有限公司 神经网络计算模块、方法和通信设备
CN113792868A (zh) * 2021-09-14 2021-12-14 绍兴埃瓦科技有限公司 神经网络计算模块、方法和通信设备
CN113807509A (zh) * 2021-09-14 2021-12-17 绍兴埃瓦科技有限公司 神经网络加速装置、方法和通信设备
CN113807509B (zh) * 2021-09-14 2024-03-22 绍兴埃瓦科技有限公司 神经网络加速装置、方法和通信设备
CN113792868B (zh) * 2021-09-14 2024-03-29 绍兴埃瓦科技有限公司 神经网络计算模块、方法和通信设备
CN114113491A (zh) * 2021-12-10 2022-03-01 中国科学技术大学 一种利用卷积神经网络计算的集成式机器嗅觉芯片
CN114113491B (zh) * 2021-12-10 2023-03-07 中国科学技术大学 一种利用卷积神经网络计算的集成式机器嗅觉芯片

Also Published As

Publication number Publication date
CN111832718B (zh) 2021-08-03

Similar Documents

Publication Publication Date Title
CN111832718B (zh) 芯片架构
CN107657581B (zh) 一种卷积神经网络cnn硬件加速器及加速方法
US11720646B2 (en) Operation accelerator
CN111667051B (zh) 适用边缘设备的神经网络加速器及神经网络加速计算方法
CN110738308B (zh) 一种神经网络加速器
US11915118B2 (en) Method and apparatus for processing computation of zero value in processing of layers in neural network
CN112633490B (zh) 执行神经网络模型的数据处理装置、方法及相关产品
CN112905530B (zh) 片上架构、池化计算加速器阵列、单元以及控制方法
CN111898733A (zh) 一种深度可分离卷积神经网络加速器架构
CN111723918A (zh) 用于卷积内核的自动生成和调谐工具
US11675624B2 (en) Inference engine circuit architecture
CN111752879B (zh) 一种基于卷积神经网络的加速系统、方法及存储介质
CN111610963B (zh) 芯片结构及其乘加计算引擎
CN114330686A (zh) 一种可配置的卷积处理装置与卷积计算方法
CN112116071A (zh) 神经网络计算方法、装置、可读存储介质以及电子设备
CN115374395A (zh) 一种通过算法控制单元进行调度计算的硬件结构
EP4206999A1 (en) Artificial intelligence core, artificial intelligence core system, and loading/storing method of artificial intelligence core system
CN112801276B (zh) 数据处理方法、处理器及电子设备
US11503297B2 (en) Method and device for inverse quantization and inverse transformation and non-transitory computer-readable storage medium
Park et al. ShortcutFusion++: optimizing an end-to-end CNN accelerator for high PE utilization
CN114881217A (zh) 一种基于fpga的通用型卷积神经网络加速器及其系统
CN111832717B (zh) 芯片及用于卷积计算的处理装置
CN115081600A (zh) 执行Winograd卷积的变换单元、集成电路装置及板卡
Yi et al. Hardware-software codesign of a CNN accelerator
CN111191780A (zh) 均值池化累加电路、装置以及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Room 503-3, 398 Jiangsu Road, Changning District, Shanghai 200050

Patentee after: Shanghai Xijing Technology Co.,Ltd.

Address before: Room 503-3, 398 Jiangsu Road, Changning District, Shanghai 200050

Patentee before: SHANGHAI WESTWELL INFORMATION AND TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder