CN109343826A - 一种面向深度学习的可重构处理器运算单元 - Google Patents
一种面向深度学习的可重构处理器运算单元 Download PDFInfo
- Publication number
- CN109343826A CN109343826A CN201810922918.XA CN201810922918A CN109343826A CN 109343826 A CN109343826 A CN 109343826A CN 201810922918 A CN201810922918 A CN 201810922918A CN 109343826 A CN109343826 A CN 109343826A
- Authority
- CN
- China
- Prior art keywords
- deep learning
- lookup table
- reconfigurable processor
- multiplier
- data
- 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
Links
- 238000013135 deep learning Methods 0.000 title claims abstract description 24
- 230000015654 memory Effects 0.000 claims abstract description 25
- 230000004913 activation Effects 0.000 claims abstract description 20
- 238000011176 pooling Methods 0.000 claims description 61
- 230000006870 function Effects 0.000 claims description 50
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000013528 artificial neural network Methods 0.000 abstract description 9
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000000295 complement effect Effects 0.000 description 10
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000000034 method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 230000005284 excitation Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/57—Arithmetic 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/575—Basic 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Neurology (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Complex Calculations (AREA)
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。
本发明的性能测试,如下:
运算单元的性能评估主要是体现在完成特殊功能的速度,比如卷积、池化等。如下所示:
神经网络算法功能的运算周期
卷积运算是对一张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 (10)
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)相连。
2.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,控制器(1)与外部总线连接,用于接受总线的命令,同时发给存储器(2)、选择输入器(3)、第一查找表(4)及第二查找表(5)命令和数据。
3.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,存储器(2)用于存储乘法器(6)中使用的乘数和被乘数,乘法器(6)用于接收存储器(2)中的数据,实现乘法运算。
4.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,选择输入器(3)与外部控制单元连接,接受外部控制单元命令,同时选择计算类型,最大值池化、平均值池化或者激活函数。
5.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,第一查找表(4)用于实现sigmoid非线性函数;
第二查找表(5)用于实现Tanh非线性函数。
6.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,最大值池化模块(7)用于接收选择输入器(3)中的数据做最大值池化运算。
7.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,平均值池化模块(8)用于接收选择输入器(3)中的数据做平均值池化运算。
8.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,激活函数(9)用于接收选择输入器(3)中的数据做ReLU函数计算。
9.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,加法器(10)用于接收乘法器(6)的输出结果,和寄存器中的数据进行累加,然后再存入寄存器中。
10.根据权利要求1所述的一种面向深度学习的可重构处理器运算单元,其特征在于,选择输出器(11)与外部控制单元连接,用于根据外部控制单元的命令,选择将最大值池化模块(7)、平均值池化模块(8)、激活函数(9)、加法器(10)、第一查找表(4)、第二查找表(5)中的一个结果输出。
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 true CN109343826A (zh) | 2019-02-15 |
CN109343826B 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) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110766141A (zh) * | 2019-10-29 | 2020-02-07 | 南京宁麒智能计算芯片研究院有限公司 | 一种基于cordic的激活函数混合计算方法及系统 |
Citations (11)
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 | 西安交通大学 | 一种可重构的一维卷积处理器 |
US20150170021A1 (en) * | 2013-12-18 | 2015-06-18 | Marc Lupon | Reconfigurable processing unit |
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 | 北京市商汤科技开发有限公司 | 卷积加速和计算处理方法、装置、电子设备及存储介质 |
-
2018
- 2018-08-14 CN CN201810922918.XA patent/CN109343826B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1996277A (zh) * | 2006-12-28 | 2007-07-11 | 北京时代民芯科技有限公司 | 粗粒度可重配置计算结构中算术单元结构 |
CN102122275A (zh) * | 2010-01-08 | 2011-07-13 | 上海芯豪微电子有限公司 | 一种可配置处理器 |
US20150170021A1 (en) * | 2013-12-18 | 2015-06-18 | Marc Lupon | Reconfigurable processing unit |
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)
Title |
---|
RASTISLAV STRUHARIK 等: "AIScale — A coarse grained reconfigurable CNN hardware accelerator", 《 2017 IEEE EAST-WEST DESIGN & TEST SYMPOSIUM (EWDTS)》 * |
RITCHIE ZHAO 等: "Accelerating Binarized Convolutional Neural Networks with Software-Programmable FPGAs", 《FPGA "17: PROCEEDINGS OF THE 2017 ACM/SIGDA INTERNATIONAL SYMPOSIUM ON FIELD-PROGRAMMABLE GATE ARRAYS》 * |
SHUANGLIANG 等: "FP-BNN: Binarized neural network on FPGA", 《NEUROCOMPUTING》 * |
李申煜: "基于Zynq的卷积神经网络加速器设计", 《中国优秀硕士学位论文全文数据库(电子期刊) 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110766141A (zh) * | 2019-10-29 | 2020-02-07 | 南京宁麒智能计算芯片研究院有限公司 | 一种基于cordic的激活函数混合计算方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109343826B (zh) | 2021-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107729989B (zh) | 一种用于执行人工神经网络正向运算的装置及方法 | |
CN109284817B (zh) | 深度可分离卷积神经网络处理架构/方法/系统及介质 | |
CN109325591B (zh) | 面向Winograd卷积的神经网络处理器 | |
CN110163360B (zh) | 一种计算装置及方法 | |
CN109711533B (zh) | 基于fpga的卷积神经网络加速系统 | |
US8078833B2 (en) | Microprocessor with highly configurable pipeline and executional unit internal hierarchal structures, optimizable for different types of computational functions | |
CN107085562B (zh) | 一种基于高效复用数据流的神经网络处理器及设计方法 | |
CN112487750B (zh) | 一种基于存内计算的卷积加速计算系统及方法 | |
CN109144469B (zh) | 流水线结构神经网络矩阵运算架构及方法 | |
CN114781632B (zh) | 基于动态可重构脉动张量运算引擎的深度神经网络加速器 | |
US11501151B2 (en) | Pipelined accumulator | |
CN112559046A (zh) | 数据处理装置及人工智能处理器 | |
CN113869507B (zh) | 一种基于脉动阵列的神经网络加速器卷积计算装置与方法 | |
CN115310037A (zh) | 矩阵乘法计算单元、加速单元、计算系统和相关方法 | |
CN113762480B (zh) | 一种基于一维卷积神经网络的时间序列处理加速器 | |
CN110716751B (zh) | 高并行度计算平台、系统及计算实现方法 | |
CN109343826B (zh) | 一种面向深度学习的可重构处理器运算单元 | |
CN107678781B (zh) | 处理器以及用于在处理器上执行指令的方法 | |
CN108196881B (zh) | 一种基于可配置技术的定点运算加速单元 | |
CN114707649B (zh) | 一种通用卷积运算装置 | |
CN113705794B (zh) | 一种基于动态激活位稀疏的神经网络加速器设计方法 | |
CN116245149A (zh) | 一种基于risc-v指令集拓展的加速计算装置及方法 | |
CN111047021A (zh) | 一种计算装置及相关产品 | |
CN113138748B (zh) | 一种基于FPGA的支持8bit和16bit数据的可配置的CNN乘法累加器 | |
CN113031911B (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 |