CN109343826B - 一种面向深度学习的可重构处理器运算单元 - Google Patents

一种面向深度学习的可重构处理器运算单元 Download PDF

Info

Publication number
CN109343826B
CN109343826B CN201810922918.XA CN201810922918A CN109343826B CN 109343826 B CN109343826 B CN 109343826B CN 201810922918 A CN201810922918 A CN 201810922918A CN 109343826 B CN109343826 B CN 109343826B
Authority
CN
China
Prior art keywords
lookup table
data
memory
multiplier
adder
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.)
Active
Application number
CN201810922918.XA
Other languages
English (en)
Other versions
CN109343826A (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.)
Xian Jiaotong University
Original Assignee
Xian Jiaotong University
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 Xian Jiaotong University filed Critical Xian Jiaotong University
Priority to CN201810922918.XA priority Critical patent/CN109343826B/zh
Publication of CN109343826A publication Critical patent/CN109343826A/zh
Application granted granted Critical
Publication of CN109343826B publication Critical patent/CN109343826B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • G06F7/575Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
    • 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

Abstract

本发明公开了一种面向深度学习的可重构处理器运算单元,包括控制器(1)、存储器(2)、选择输入器(3)、第一查找表(4)、第二查找表(5)、乘法器(6)、最大值池化模块(7)、平均值池化模块(8)、激活函数(9)、加法器(10)和选择输出器(11);其中,控制器(1)与存储器(2)、选择输入器(3)、第一查找表(4)和第二查找表(5)相连;乘法器(6)与加法器(10)相连;选择输出器(11)与最大值池化模块(7)、平均值池化模块(8)、激活函数(9)、加法器(10)、第一查找表(4)和第二查找表(5)相连。本发明既具有较高性能,又可以支持不同神经网络。

Description

一种面向深度学习的可重构处理器运算单元
技术领域
本发明属于可重构处理器运算单元架构技术领域,具体涉及一种面向深度学习的可重构处理器运算单元。
背景技术
深度学习是近几年机器学习的一个研究热点,在许多方向都取得了优异的成果。现在,深度学习在许多学科领域都具备越来越重要的作用。然而受限于硬件设备,深度学习的运算速度要慢于传统的人工神经运算网络以及一些其他的机器学习方法。因此在一些需要高性能的计算和电脑运算领域,深度学习的加速显得格外重要。对于深度学习算法的硬件加速,目前通常有三类实现方式——多核CPU、GPU和FPGA,它们的共同特点是可以实现高并行度的计算。然而,因为这些方法需求大量的运算硬件并消耗很多能耗,并不适合于移动设备。可重构处理器已经被证明是一种兼具高灵活性和高能量效率的并行计算架构形式,是多核CPU和FPGA技术进一步发展受到限制的解决途径之一,是未来计算技术发展的重要方向和研究热点。因此,可重构处理器这一新型的计算架构,有可能成为未来实现高效能深度学习SoC的方案之一。
深度学习神经网络有非常多的分类,比较著名的有卷积神经网络(CNN)以及循环神经网络(RNN)。CNN是一种生物自然视觉认知机制启发而来的神经网络,对于视觉图像的处理有着独特的优势,近几年来,CNN网络已经由最初的LeNet-5逐渐演变出了AlexNet、VGG、GoogLeNet等新的结构。RNN与CNN相比,更加倾向于处理序列数据,通过处理前后输入数据的联系来识别整个输入数据,因此RNN十分擅长处理文字音频等时序数据。在RNN的基础上,后续又发展出了BRNN、LSTM、Echo RNN等相关网络。如何灵活、高效地完成各类网络称为当前研究热点。传统的算法主要通过CPU或专用集成电路(ASIC)来实现,然而处理器可以完成的功能多,但速度较慢;ASIC因为是针对一种确定算法而设计的电路,速度快,效率高,但是功能单一。可重构处理器一般是由主处理器耦合一组可重构运算单元,主处理器通过改变运算单元中的配置信息来进行任务的调度,可重构运算单元通过特定的配置信息来决定执行哪些算法。所以通过设计运算单元,可以使可重构处理器具备实现多种深度学习网络的潜力。
发明内容
本发明的目的在于提供一种面向深度学习的可重构处理器运算单元,其既具有较高性能,又可以支持不同神经网络,包括CNN、RNN、BRNN、LSTM、CW-RNN。
本发明采用如下技术方案来实现的:
一种面向深度学习的可重构处理器运算单元,包括控制器、存储器、选择输入器、第一查找表、第二查找表、乘法器、最大值池化模块、平均值池化模块、激活函数、加法器和选择输出器;其中,
控制器与存储器、选择输入器、第一查找表和第二查找表相连;乘法器与加法器相连;选择输出器与最大值池化模块、平均值池化模块、激活函数、加法器、第一查找表和第二查找表相连。
本发明进一步的改进在于,控制器与外部总线连接,用于接受总线的命令,同时发给存储器、选择输入器、第一查找表及第二查找表命令和数据。
本发明进一步的改进在于,存储器用于存储乘法器中使用的乘数和被乘数,乘法器用于接收存储器中的数据,实现乘法运算。
本发明进一步的改进在于,选择输入器与外部控制单元连接,接受外部控制单元命令,同时选择计算类型,最大值池化、平均值池化或者激活函数。
本发明进一步的改进在于,第一查找表用于实现sigmoid非线性函数;
第二查找表用于实现Tanh非线性函数。
本发明进一步的改进在于,最大值池化模块用于接收选择输入器中的数据做最大值池化运算。
本发明进一步的改进在于,平均值池化模块用于接收选择输入器中的数据做平均值池化运算。
本发明进一步的改进在于,激活函数用于接收选择输入器中的数据做ReLU函数计算。
本发明进一步的改进在于,加法器用于接收乘法器的输出结果,和寄存器中的数据进行累加,然后再存入寄存器中。
本发明进一步的改进在于,选择输出器与外部控制单元连接,用于根据外部控制单元的命令,选择将最大值池化模块、平均值池化模块、激活函数、加法器、第一查找表、第二查找表中的一个结果输出。
本发明具有如下有益的技术效果:
主要特点:
1、运算单元具备卷积、乘加、最大值池化、最小值池化、ReLU激励函数、sigmoid激励函数、tanh激励函数等功能,支持多种神经网络算法的实现。
2、运算单元支持补码运算,包括补码乘、加、正负判断等,故支持负数、小数的运算。
3、运算单元具有控制模块,可以对单元运算功能实施切换。
主要优点:
1、将所有所需的逻辑运算和算数运算集成在同一个运算单元中,应用在神经网络密集运算型算法上,可以减小数据通讯的时间,提高运算速度。
2、本发明使得可重构处理器支持多种复杂神经网络算法的实现,具备多功能,灵活,高效率的特点。
附图说明
图1为本发明一种面向深度学习的可重构处理器运算单元的结构示意图。
图2为控制器的结构示意图。
图3为选择输入模块的结构示意图。
具体实施方式
以下结合附图对本发明做出进一步的说明。
本文提出的可重构处理器运算单元的结构框图如图1。
本发明所提出的运算单元的数据流为:控制器控制信号负责选择将数据传入存储器中进行查表工作,或将数据传入选择输入器中进行功能运算;对于选择输入器来说,控制信号负责选择将数据传入乘法器、平均值池化模块以及激活函数中的具体一个;选择输出器,负责选择将加法器、平均值池化模块、最大值池化模块,激活函数或存储器中的一个作为输出结果。因为控制器、选择输入器与选择输出器共用一个控制信号,因此当控制器使用结束后依旧需要等待几个周期,直到选择输出器也使用结束后,控制信号才可以关闭。运算单元的运算分为三个流程:数据的输入,数据运算与数据的输出。本发明插入二级流水线以提高模块运行速度。
本发明所提出的面向深度学习的可重构处理器运算单元由以下模块组成:包括控制器1、存储器2、选择输入器3、第一查找表4、第二查找表5、乘法器6、最大值池化模块7、平均值池化模块8、激活函数9、加法器10和选择输出器11;其中,控制器1与存储器2、选择输入器3、第一查找表4和第二查找表5相连;乘法器6与加法器10相连;选择输出器11与最大值池化模块7、平均值池化模块8、激活函数9、加法器10、第一查找表4和第二查找表5相连。
具体如下:
1)控制器,如图2所示
控制器负责选择将输入信息传递到选择输入器或存储器。如果进行sigmoid与tanh函数的查表法操作时,则将读写信号与地址信息传递到第一查找表或第二查找表;如果进行乘加、卷积运算、池化运算以及ReLU函数实现时,则将输入数据、乘法所用存储器的地址信息、开始信号等信息传入到乘法器或选择输入器。
2)选择输入器,如图3所示
选择输入器负责选择进行乘加、最大值池化、平均值池化、ReLU激活函数功能。通过选择信号与开始信号决定输入将流入下级的哪个模块。总数信号用来决定进行卷积运算或乘积运算时一组数据的乘加个数,比如3×3的卷积运算需要九组数据的乘加,则总数信号输入为9。开始信号同时会激活内部计数器,对乘加与池化运算进行计数操作,当一组乘加完成时,选择输入器会发出信号将加模块中的寄存器清零,以进行下一组乘加的运算;同时,当进行池化操作时,由于一次池化操作需要四个输入,选择输入器会依次对池化模块分四次将输入传递过去,每当一组数传递完成,选择输入器则会发出对池化模块内部寄存器清零的信号。
3)存储器与第一查找表和第二查找表
存储器与第一查找表和第二查找表都是用随机存取存储器RAM实现,tanh函数与sigmoid的用查表法实现,另外一个实现乘法功能中一部分乘数的存储,他们功能都相同,但存储器的大小会有些区别。存储器的输入部分有读写控制信号,数据线和地址线。当读写控制信号信号为1时,存储器将根据地址线上的地址将输入数据存储当相应位置的寄存器上去。当读写控制信号信号为0时,存储器将会读出输入地址中的数据。
4)乘法器
乘法器可以进行补码的乘法功能。他有两个输入数据的输入,分别输入乘数与被乘数。一个开始信号,只有在开始信号为1时,可以进行乘法的运算。对于补码的乘法运算,会分为三步来进行。首先,将输入的两个补码根据符号位判断正负,若为正,则保持不变;若未负,则除符号位外先取反,然后加一,通过这样将补码转变为原码。第二步,将两个原码的符号位异或,得到他们积的符号位;将数据位相乘,因为两个63位数据相乘会得到126位数据,因此选取合适的数据段,将其他位设置为0。这样便得到了乘积的原码。第三步,将乘积的原码根据符号位转变为补码,以方便之后数据的运算。
5)加法器
加法器可以执行补码的加法运算。加法器有3个输入,其中一个为数据输入,还有开始信号与停止信号。加法器有一个内部寄存器,当开始信号为1时,加法器会将输入数据与寄存器中的值相加,结果再存在寄存器中,这样可以对多对乘数进行累加。当停止信号传进时,寄存器会舍弃之前寄存器中的值,只将输入数据存在寄存器中,这样可以清空之前的数据,进行新一轮的乘加运算。
6)最大值池化模块
最大值池化模块执行最大值池化功能,即选取四个数中的最大值。最大值池化模块拥有一个输入端口以及一个开始信号,并且内部拥有一个寄存器,初始为0。当进行最大值池化时,因为要选取四个数中的最大值,在输入第一个数时,开始信号会为1,最大值池化模块只将输入存储在寄存器中;在依次输入剩下的三个数时,模块会对输入与寄存器中的值比较大小,将大的数存储在寄存器中。这样四个节拍后,便可选出四个数中的最大值。
7)平均值池化模块
平均值池化模块可以执行平均值池化功能,即对四个输入求取平均值。与最大值模块相似,平均值池化模块也只有一个数据输入端口与开始信号。因为对于二进制数来说,除四运算可以通过对数据右移两位来完成,因此平均值池化模块通过内部寄存器对输入进行累加运算,然后将累加的和舍弃底两位,高位补符号位后输出。
8)激活函数
激活函数是对ReLU激活函数进行逻辑实现。模块输入端只有一个数据输入口,当数据输入后,通过符号位是否为0来判断输入的正负,符号位为0时,输出等于输入;符号位为1时,输出为0。
本发明的性能测试,如下:
运算单元的性能评估主要是体现在完成特殊功能的速度,比如卷积、池化等。如下所示:
神经网络算法功能的运算周期
Figure BDA0001764699390000081
卷积运算是对一张128*96的sub-QCIF图像,通过一个3*3的卷积核,进行卷积运算。因为数据时串行输入,所以输入数据需要106596个周期,加上七级流水线,在第106603个周期输出结果。因为输入数据占据了大部分时钟周期,所以七级流水带了的时钟周期方面的影响微乎其微。
最大值池化同样是对一张sub-QCIF图像进行最大值池化。数据串行输入,在第12288周期输入完所有的数据,由于存在四级流水,所以在四个周期后输出最后一个结果。同样,添加流水线对池化的运算周期没有太大的影响。平均值池化与最大值池化的性能相同。
激活函数运算中存在三级流水,当输入第一个数后,隔三个时钟周期,会输出相应的结果。
LSTM运算中针对五个参数,只用一个PE单元,进行了相应的乘加与激励函数测试,由于需要多次切换控制信号,因此完成一组运算单元的算法需要58个时钟周期。相比于其他的算法,完成LSTM花费了更多的周期,资源复用率较低。为了提高LSTM的资源复用率,可以通过使用PE阵列组合的方式来完成算法。
BRNN与LSTM的仿真方式类似,同样是通过一个PE单元,在不断改变控制信号的情况下,完成一组算子算法功能的仿真方式。相比于LSTM,由于需要运算的步骤较少,仿真在第28个周期输出了结果,但资源利用率依旧比较低。为了获得更好的性能,可以通过PE阵列来进行BRNN算子的仿真。
CW-RNN也与LSTM的仿真方式类似,通过不断改变控制信号,在第57个时钟周期输出结果。资源利用率依旧比较低,为了获得更好的性能,可以通过PE阵列来进行BRNN算子的仿真。
综上所述,当时用一个PE单元完成比较单一的功能,比如卷积运算,池化或ReLU等功能的时侯,流水线对时钟周期的影响最小,资源利用率最高。然而,当用一个PE单元去完成多种功能复合的运算,比如LSTM算子功能的时候,资源利用率较低,需要更多的时钟周期才可以完成。因此,相比于使用一个PE单元处理,复杂的运算更适合通过PE阵列来完成功能的运算。
实施例
以测试卷积运算和池化运算为例。i表示正在卷积的3*3图像所在的列数,n表示图像所在的行数,因为卷积核的大小为3*3,因此说明完成一次卷积核的卷积运算,需要九组数据先相乘,然后加在一起,输出九组数据的乘加和。当start信号由0变为1时,开始运算。根据波形图可以看出,当第一组九个数输入之后,会在第16个周期输出结果,由此可以说明卷积运算中存在着7级流水。当全部图形完成卷积运算后,理论上进行了(128-2)*(96-2)*9次运算,即106596次运算,加上7级流水,会在第106603个周期输出最后一个结果。将输出结果与输入进行验证后,结果匹配,因此功能正确。对于最大值池化运算,首先通过一个随机赋值的存储器来定义sub-QCIF图像,然后当开始信号由0变为1后,对每一个2*2矩阵进行最大值选择。根据波形可以看出,由于最大值池化运算过程中拥有四级流水线,所以在串行输入四个数之后,第八个周期会得到第一组数据的输出。在第12292个周期,PE模块完成对sub-QCIF图像的卷积运算。通过验证,算法功能正确。

Claims (4)

1.一种面向深度学习的可重构处理器运算单元,其特征在于,包括控制器(1)、存储器(2)、选择输入器(3)、第一查找表(4)、第二查找表(5)、乘法器(6)、最大值池化模块(7)、平均值池化模块(8)、激活函数(9)、加法器(10)和选择输出器(11);其中,
控制器(1)与存储器(2)、选择输入器(3)、第一查找表(4)和第二查找表(5)相连;乘法器(6)与加法器(10)相连;选择输出器(11)与最大值池化模块(7)、平均值池化模块(8)、激活函数(9)、加法器(10)、第一查找表(4)和第二查找表(5)相连;第一查找表(4)用于实现sigmoid非线性函数;第二查找表(5)用于实现Tanh非线性函数;
控制器(1)与外部总线连接,用于接受总线的命令,同时发给存储器(2)、选择输入器(3)、第一查找表(4)及第二查找表(5)命令和数据;
选择输入器(3)与外部控制单元连接,接受外部控制单元命令,同时选择计算类型,最大值池化、平均值池化或者激活函数;最大值池化模块(7)用于接收选择输入器(3)中的数据做最大值池化运算;平均值池化模块(8)用于接收选择输入器(3)中的数据做平均值池化运算;激活函数(9)用于接收选择输入器(3)中的数据做ReLU函数计算;
当前网络为CNN时,控制器(1)将输入数据定位到存储器(2)和选择输入器,选择输入器对输入的数据通过激活函数(9)激活,或者通过最大池化模块(7)进行最大池化,或通过平均池化模块(8)进行平均池化;存储器(2)输出乘法器(6)所需的数据,并经过加法器(10)实现CNN中的乘加运算,以此实现CNN网络的运算;
当网络为RNN类型时,控制器(1)将输入数据定位到存储器(2)、第一查找表(4)和第二查找表(5),存储器(2)及乘法器(6)和加法器(10)实现RNN类型网络的乘加运算;对输入的数据进行激活操作时,控制器(1)选择第一查找表(4)进行sigmoid函数激活或选择第二查找表(5)进行Tanh函数激活,以此实现RNN类型网络的运算。
2.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,存储器(2)用于存储乘法器(6)中使用的乘数和被乘数,乘法器(6)用于接收存储器(2)中的数据,实现乘法运算。
3.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,加法器(10)用于接收乘法器(6)的输出结果,和寄存器中的数据进行累加,然后再存入寄存器中。
4.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,选择输出器(11)与外部控制单元连接,用于根据外部控制单元的命令,选择将最大值池化模块(7)、平均值池化模块(8)、激活函数(9)、加法器(10)、第一查找表(4)、第二查找表(5)中的一个结果输出。
CN201810922918.XA 2018-08-14 2018-08-14 一种面向深度学习的可重构处理器运算单元 Active CN109343826B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810922918.XA CN109343826B (zh) 2018-08-14 2018-08-14 一种面向深度学习的可重构处理器运算单元

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810922918.XA CN109343826B (zh) 2018-08-14 2018-08-14 一种面向深度学习的可重构处理器运算单元

Publications (2)

Publication Number Publication Date
CN109343826A CN109343826A (zh) 2019-02-15
CN109343826B true CN109343826B (zh) 2021-07-13

Family

ID=65291873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810922918.XA Active CN109343826B (zh) 2018-08-14 2018-08-14 一种面向深度学习的可重构处理器运算单元

Country Status (1)

Country Link
CN (1) CN109343826B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110766141A (zh) * 2019-10-29 2020-02-07 南京宁麒智能计算芯片研究院有限公司 一种基于cordic的激活函数混合计算方法及系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996277A (zh) * 2006-12-28 2007-07-11 北京时代民芯科技有限公司 粗粒度可重配置计算结构中算术单元结构
CN102122275A (zh) * 2010-01-08 2011-07-13 上海芯豪微电子有限公司 一种可配置处理器
CN103985083A (zh) * 2014-05-21 2014-08-13 西安交通大学 一种可重构的一维卷积处理器
CN205139973U (zh) * 2015-10-26 2016-04-06 中国人民解放军军械工程学院 基于fpga器件构建的bp神经网络
CN105681628A (zh) * 2016-01-05 2016-06-15 西安交通大学 一种卷积网络运算单元及可重构卷积神经网络处理器和实现图像去噪处理的方法
CN106484657A (zh) * 2016-11-18 2017-03-08 成都嘉纳海威科技有限责任公司 一种可重构的信号处理器asic架构及其重构方法
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核
CN107665364A (zh) * 2016-07-28 2018-02-06 三星电子株式会社 神经网络方法和设备
WO2018119035A1 (en) * 2016-12-22 2018-06-28 Ip Reservoir, Llc Pipelines for hardware-accelerated machine learning
CN108229645A (zh) * 2017-04-28 2018-06-29 北京市商汤科技开发有限公司 卷积加速和计算处理方法、装置、电子设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9978014B2 (en) * 2013-12-18 2018-05-22 Intel Corporation Reconfigurable processing unit

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996277A (zh) * 2006-12-28 2007-07-11 北京时代民芯科技有限公司 粗粒度可重配置计算结构中算术单元结构
CN102122275A (zh) * 2010-01-08 2011-07-13 上海芯豪微电子有限公司 一种可配置处理器
CN103985083A (zh) * 2014-05-21 2014-08-13 西安交通大学 一种可重构的一维卷积处理器
CN205139973U (zh) * 2015-10-26 2016-04-06 中国人民解放军军械工程学院 基于fpga器件构建的bp神经网络
CN105681628A (zh) * 2016-01-05 2016-06-15 西安交通大学 一种卷积网络运算单元及可重构卷积神经网络处理器和实现图像去噪处理的方法
CN107665364A (zh) * 2016-07-28 2018-02-06 三星电子株式会社 神经网络方法和设备
CN106484657A (zh) * 2016-11-18 2017-03-08 成都嘉纳海威科技有限责任公司 一种可重构的信号处理器asic架构及其重构方法
WO2018119035A1 (en) * 2016-12-22 2018-06-28 Ip Reservoir, Llc Pipelines for hardware-accelerated machine learning
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核
CN108229645A (zh) * 2017-04-28 2018-06-29 北京市商汤科技开发有限公司 卷积加速和计算处理方法、装置、电子设备及存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Accelerating Binarized Convolutional Neural Networks with Software-Programmable FPGAs;Ritchie Zhao 等;《FPGA "17: Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays》;20170228;第15-24页 *
AIScale — A coarse grained reconfigurable CNN hardware accelerator;Rastislav Struharik 等;《 2017 IEEE East-West Design & Test Symposium (EWDTS)》;20171002;第1-9页 *
FP-BNN: Binarized neural network on FPGA;ShuangLiang 等;《Neurocomputing》;20180131;第275卷;第1072-1086页 *
基于Zynq的卷积神经网络加速器设计;李申煜;《中国优秀硕士学位论文全文数据库(电子期刊) 信息科技辑》;20180615;第2018年卷(第6期);论文第13-19,40-51,48-59页 *

Also Published As

Publication number Publication date
CN109343826A (zh) 2019-02-15

Similar Documents

Publication Publication Date Title
CN107729989B (zh) 一种用于执行人工神经网络正向运算的装置及方法
CN107689948B (zh) 应用于神经网络硬件加速系统的高效数据访存管理装置
CN109284817B (zh) 深度可分离卷积神经网络处理架构/方法/系统及介质
CN109325591B (zh) 面向Winograd卷积的神经网络处理器
US8078833B2 (en) Microprocessor with highly configurable pipeline and executional unit internal hierarchal structures, optimizable for different types of computational functions
CN109711533B (zh) 基于fpga的卷积神经网络加速系统
CN110163360B (zh) 一种计算装置及方法
CN107085562B (zh) 一种基于高效复用数据流的神经网络处理器及设计方法
CN109144469B (zh) 流水线结构神经网络矩阵运算架构及方法
CN112487750B (zh) 一种基于存内计算的卷积加速计算系统及方法
CN111047022A (zh) 一种计算装置及相关产品
CN114781632A (zh) 基于动态可重构脉动张量运算引擎的深度神经网络加速器
CN112559046A (zh) 数据处理装置及人工智能处理器
US11501151B2 (en) Pipelined accumulator
CN110515587B (zh) 乘法器、数据处理方法、芯片及电子设备
CN109343826B (zh) 一种面向深度学习的可重构处理器运算单元
CN107678781B (zh) 处理器以及用于在处理器上执行指令的方法
CN113222129A (zh) 一种基于多级缓存循环利用的卷积运算处理单元及系统
CN110716751B (zh) 高并行度计算平台、系统及计算实现方法
WO2023065701A1 (zh) 内积处理部件、任意精度计算设备、方法及可读存储介质
CN108196881B (zh) 一种基于可配置技术的定点运算加速单元
CN113705794B (zh) 一种基于动态激活位稀疏的神经网络加速器设计方法
CN115495152A (zh) 变长输入的存内计算电路
CN115310037A (zh) 矩阵乘法计算单元、加速单元、计算系统和相关方法
CN113762480B (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