CN106843809A - 一种基于nor flash阵列的卷积运算方法 - Google Patents

一种基于nor flash阵列的卷积运算方法 Download PDF

Info

Publication number
CN106843809A
CN106843809A CN201710063036.8A CN201710063036A CN106843809A CN 106843809 A CN106843809 A CN 106843809A CN 201710063036 A CN201710063036 A CN 201710063036A CN 106843809 A CN106843809 A CN 106843809A
Authority
CN
China
Prior art keywords
flash
convolution
flash units
convolution algorithm
input
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
CN201710063036.8A
Other languages
English (en)
Other versions
CN106843809B (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.)
Peking University
Original Assignee
Peking 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 Peking University filed Critical Peking University
Priority to CN201710063036.8A priority Critical patent/CN106843809B/zh
Publication of CN106843809A publication Critical patent/CN106843809A/zh
Application granted granted Critical
Publication of CN106843809B publication Critical patent/CN106843809B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • G06F17/153Multidimensional correlation or convolution
    • 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3818Decoding for concurrent execution

Abstract

一种基于NOR FLASH存储结构实现卷积运算的方法,所述NOR FLASH存储结构包括多个NOR flash单元组成的阵列,卷积运算的方法包括以下步骤:将卷积核矩阵的元素存储到NOR flash单元阵列中;输入矩阵的元素转换成电压施加在NOR flash单元的栅端;在NOR flash单元的源端施加一个驱动电压,通过NOR flash单元的漏端收集每一列的电流值,得到卷积运算结果。

Description

一种基于NOR FLASH阵列的卷积运算方法
技术领域
本发明属于半导体集成电路及其制造技术领域,更具体地,涉及一种基于NORFLASH阵列的卷积运算方法。
背景技术
卷积运算作为一种线性运算,在信号和系统方面占据非常重要的地位,包括图像识别、地震勘测、超声诊断、人工智能等系统中广泛存在着卷积运算。这些系统中的卷积运算具有计算量大、数据通量大和计算方式固定等特点。利用传统的通用处理器CPU做卷积计算,存在计算效率低、速度慢,无法满足数据实时处理的需求。利用GPU做卷积方案也存在硬件开销资源大的问题。近年来,人工智能迅速发展,对卷积运算的需求呈海量增加,因此必须发展一种高效卷积运算方式。
发明内容
(一)要解决的技术问题
鉴于上述问题,本发明基于NOR flash结构提出一种能够高效卷积运算的方法,可以实现NOR flash乘法计算,NOR flash阵列卷积运算以及NOR flash卷积运算的并行执行。
(二)技术方案
一种基于NOR FLASH阵列的卷积运算方法,所述NOR FLASH阵列包括多个NORflash单元组成的二维阵列,包括以下步骤:
S1:将卷积核矩阵的元素存储到NOR flash单元中;
S2:输入矩阵的元素转换成电压施加在NOR flash单元的栅端,同时在NOR flash单元的源端施加一个驱动电压,NOR flash单元的漏端输出电流;
S3:由NOR flash单元漏端的输出电流得到卷积运算结果。
上述方案中,在所述S1中,分别经字线、公共源线和位线向NOR flash单元的栅端、源端和漏端施加电压,将卷积核矩阵元素写入到NOR flash单元中。
上述方案中,当卷积核矩阵元素为1或者-1时,NOR flash单元的阈值电压被调整为低阈值电压;当卷积核矩阵元素为0时,NOR flash单元阈值电压被调整为高阈值电压。
上述方案中,在所述S2中,
将输入矩阵元素转换为电压,电压通过字线输入到NOR flash单元的栅端,同时通过公共源线向NOR flash单元的源端施加驱动电压。
上述方案中,
当输入矩阵元素为1时,所述电压为NOR flash单元的高阈值电压与低阈值电压之和的二分之一;当输入矩阵元素为0时,所述电压为0。
上述方案中,在所述S3中,NOR flash单元漏端的输出电流经位线汇集至运算放大器,运算放大器输出端的值构成输出矩阵,得到卷积运算结果。
上述方案中,与正位线连接的NOR flash单元漏端的输出电流输入到运算放大器的正输入端,与负位线连接的NOR flash单元漏端的输出电流输入到运算放大器的负输入端,运算放大器输出端的值为输出矩阵元素。
上述方案中,所述NOR FLASH阵列还包括多条字线、多条位线和公共源线;
每一行的NOR flash单元的栅端通过字线相连,每一列的NOR flash单元的漏端通过位线相连,NOR flash单元的源端由一条公共源线相连
上述方案中,还包括多条源线,每一行的NOR flash单元的源端通过源线相连,每条源线连接到公共源线。
上述方案中,输入矩阵大小为m×m,卷积核矩阵大小为n×n,得到的输出矩阵大小为(m-n+1)×(m-n+1)。
(三)有益效果
本发明基于NOR flash阵列提出一种能够高效卷积运算的方法,利用NOR flash结构实现乘法计算,利用NOR flash阵列实现卷积运算以及卷积运算的并行高效执行,本发明计算效率高、可满足数据实时处理的需求。
附图说明
图1是矩阵卷积原理示意图;
图2是本发明实施例的NOR flash单元示意图;
图3是本发明实施例的NOR flash阵列作卷积计算的示意图;
图4是本发明实施例的基于NOR FLASH阵列的卷积运算设备示意图;
图5为本发明实施例的基于NOR flash阵列的卷积运算方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。
卷积是一个广义的积分概念,在数字信号处理、概率论、图像处理等领域都有广泛的应用。图1的是一个5×5大小的输入矩阵经过一个2×2大小的卷积核矩阵处理之后得到的4×4大小的输出矩阵的计算过程示意图。输入矩阵中的元素用xi,j表示,元素为x1,1~x5,5,卷积核矩阵中各元素用fi,j表示,元素为f1,1~f2,2,输出矩阵中元素用yi,j表示,元素为y1,1~y4,4。首先要对卷积核矩阵进行翻转,即旋转180度操作,然后将翻转后的卷积核矩阵首先与输入矩阵的左上角部分重叠,之后计算该重叠部分的对应元素乘积并求和,作为第一个输出结果,即输出矩阵中的元素y1,1=x1,1·f2,2+x1,2·f2,1+x1,1·f1,2+x2,2·f1,1;之后翻转后的卷积核矩阵向x方向(行方向)右移一位,继续计算重叠部分的乘积和作为下一个输出结果,直到x方向全部重叠过,则卷积核矩阵向y方向(列方向)平移一位并平移到x方向的起始点进行计算,重复以上过程直至输入矩阵中的元素全被卷积核矩阵覆盖过,输出矩阵中元素yi,j可由公式yi,j=xi,j·f2,2+xi,j+1·f2,1+xi+1,j·f1,2+xi+1,j+1·f1,1表示,可得到16个输出结果,因此输出矩阵的大小为4×4。对于一个m×m大小规模的输入矩阵,经由一个n×n(m>n)大小规模的卷积核矩阵进行卷积操作之后得到的输出矩阵大小为(m-n+1)×(m-n+1)规模。
本发明的目的是提供一种利用NOR Flash阵列来进行卷积运算的方法。NOR FLASH阵列包括多个NOR FLASH单元,NOR Flash单元可以通过PROGRAM/ERASE(编程/擦除)操作来改其阈值电压,从而存储不同的逻辑值。当进行PROGRAM操作时,NOR Flash衬底的电子在栅压的控制下会通过隧穿层到浮栅层中,从而造成NOR flash单元的阈值电压上升;而当进行ERASE操作时,在栅压的控制下电子会从浮栅层出去或有空穴进入到浮栅层中,此时阈值电压下降。
卷积运算当中存在大量乘法运算,图2所示是一个三端的NOR flash单元,包括一个栅端、一个漏端和一个源端。首先通过图2来说明如何用NOR flash单元进行乘法运算。通过ERASE或PROGRAM操作可以将NORflash单元的阈值电压调整为高阈值电压(Vth_high)或低阈值电压(Vth_low)。对于A×B(A为卷积核矩阵元素,为乘数,B为输入矩阵元素,为被乘数)的二进制运算来说,A值可以通过编程或擦除写入到NOR flash单元中,B值在运算过程转化为电压加载在栅端上,A,B两个的值共同决定了NOR flash单元的开启状态,在NORflash的源端加载一个电压,根据每个NOR flash单元不同的开启状态,可以得到不同大小的电流,收集每列NOR flash单元对应的漏端电流即可得到乘法运算的结果。这里的flash单元可以是传统的闪存,也可以是新型电荷捕获闪存。
NOR flash阵列结构如图3所示,对于5×5大小的输入矩阵、2×2大小的卷积核矩阵、4×4大小的输出矩阵的卷积运算,NOR flash阵列结构为NOR flash单元组成的25行32列的二维阵列,其中包含沿第一方向延伸的互相平行的16组位线,每组位线包括两条位线,每条位线与一列25个NOR Flash单元的漏端相连;沿与第一方向交叉的第二方向延伸的25条相互平行的字线,每条字线与一行32个NOR Flash单元的栅端相连;每个NOR Flash单元的源端由源线连接至一条公共源线,16个运算放大器,每个运算放大器连接一组位线,每组位线的一条位线作为正位线连接运算放大器的正输入端,另一条位线作为负位线连接运算放大器的负输入端。
卷积核矩阵的元素存储在NOR flash单元中,输入矩阵的元素转换成电压通过字线输入栅端,在NOR flash阵列的公共源端施加一个驱动电压通过漏端收集电流进行卷积运算。卷积运算中的乘法运算由每一个NORFlash单元完成,同一位线上的电流汇集到一起实现卷积运算中加法运算。位线的一端接运算放大器,对汇集的电流转换成输出结果。由于卷积核矩阵中通常具有负数元素,因此对于每一个输出矩阵的元素,我们需要两列互相平行的NOR Flash单元,两条位线中的一条作为正输出线,将卷积核矩阵正元素对应写入该位线连接的NOR flash单元中,该位线连入运算放大器的正输入端,另一条位线作为负输出线,将卷积核矩阵中的负元素对应写入该位线连接的NOR flash单元中,该位线连入运算放大器的负输入端,这两列NOR flash单元中每一列的漏端通过位线分别连接到运算放大器的两个输入端,这样运算放大器的输出与正负电流的加和成正比,通过电流差分来实现具有负值卷积核矩阵元素的卷积的运算。上述只是作为举例,实际应用中输入矩阵及卷积核矩阵可扩展成任意规模的矩阵,相应地,NOR flash阵列应扩展为与输入矩阵及卷积核矩阵适应的规模。
图4是基于NOR FLASH阵列的卷积运算设备,包括NOR flash阵列、控制器、字/源线控制单元、位线控制单元、输入模块和输出模块,其中字/源线控制单元的第一端连接NORflash阵列的字线和源线,另一端连接输入模块,字/源线控制单元包含多个脉冲发生器和选通器,多个脉冲发生器与字线和源线连接,由选通器选通不同的字线或源线施加电压,位线控制单元的第一端连接NOR flash阵列的位线,另一端连接到输出模块,位线控制单元包含多个脉冲发生器和选通器,脉冲发生器与位线连接,由选通器选通不同的位线施加电压,输入模块包括多个信号发生器,输出模块包括多个运算放大器。
控制器接收控制信号对字/源线和位线控制单元进行控制,分别对字线、源线和位线实现不同的输入和输出,从而实现卷积核矩阵元素的写入和卷积运算以及在这两种操作之间的切换。首先控制器控制字/源线控制单元和位线控制单元对NOR Flash阵列施加电压进行擦除以及编程操作,将卷积核矩阵元素写入到NOR Flash阵列中;在NOR Flash阵列中存储卷积核矩阵后,通过控制器控制输入模块将输入矩阵元素转换成电压信号,将电压信号传输至字/源线控制单元,由字/源线控制单元中的脉冲发生器产生电压通过字线施加到NOR Flash阵列中,同时在公共源线上施加驱动电压,在NOR Flash阵列中漏端相连的位线输出的电流经过运算放大器的处理得到卷积结果。
如图5所示,本发明实施例的基于NOR flash阵列的卷积运算方法为:
S1:将卷积核矩阵的元素存储到NOR flash单元中;
在控制器的控制下,分别经字线、公共源线和位线向栅端、源端和漏端施加电压,把乘数(卷积核矩阵元素)的值,写入到NOR flash单元中。如果乘数为1或者-1,则将NORflash单元的阈值电压调整为低阈值电压Vth_low,如果乘数为0,则将NOR flash单元阈值电压调整为高阈值电压(Vth_high)。
在本发明实施例中,我们选择Roberts算子作为卷积核,此时f1,1=-1,f1,2=0,f2,1=0,f2,2=1,我们把Roberts算子的值写入到如图3所示的NOR flash阵列中。
对于卷积核矩阵中存在负数元素的情况,可将每组两条位线接入一个运算放大器来实现实数域卷积核的计算,具体规则如下:两条位线中的一条作为正输出线,将卷积核矩阵正元素按位对应写入该位线连接的NORflash单元中,该位线连入运算放大器的正输入端,如图3所示,将f2,2写入到与y1,1对应的运算放大器“+”端相连的位线和V11对应的字线交叉点处的NOR flash单元;另一条位线作为负输出线,将卷积核矩阵中的负元素按位对应写入该位线的NOR flash单元中,该位线连入运算放大器的负输入端,如图3所示,将f1,1写入到与y1,1对应的运算放大器“-”端相连的位线和V22对应的字线交叉点处的NOR flash单元,这样运算放大器的输出与正负电流的加和成正比,可以实现实数域的卷积核的计算。
对于本发明实施例中,采用Roberts算子作为卷积核矩阵进行计算时输出矩阵中元素yi,j可由公式yi,j=xi,j-xi+1j+1计算得到。
S2:输入矩阵的元素转换成电压施加在NOR flash单元的栅端,同时在源端施加一个驱动电压,NOR flash单元的漏端输出电流;
本发明实施例中,输入矩阵采用5×5大小的矩阵,各元素用xi,j表示,将输入矩阵转换成为电压值并通过字线输入到如图3所示的NOR flash单元的栅端,元素xi,j对应输入电压的大小用Vij表示。
作乘法运算时,将输入矩阵一维展开,分别将大小为V11到V55的25个代表输入矩阵元素的电压输入到25条互相平行的字线上,如果输入矩阵元素为1,Vij则取为(Vth_high+Vth_low)/2;如果输入矩阵元素为0,Vij则为0。
同时在公共源端处施加驱动电压VS,通过NOR flash单元输出电流的大小判断运算结果,如果乘数为1或者-1,即NOR flash单元的阈值电压为低阈值电压Vth_low,同时被乘数为1,即Vij为(Vth_high+Vth_low)/2,则NOR flash单元处于开启状态,漏端的输出电流较大,表示输出结果为1或者-1;对于乘数为0或被乘数为0的情况,NOR flash单元处于关断状态,漏端的输出电流较小,表示输出结果为0。
S3:由NOR flash单元漏端的输出电流得到卷积运算结果。
NOR flash单元漏端的输出电流经位线汇集至运算放大器,运算放大器输出端的值构成输出矩阵,得到卷积运算结果。
利用运算放大器搜集来自输出矩阵元素y1,1对应的正负两列位线的电流值,正的卷积核元素所在列上的NOR flash单元输出的电流输入到运算放大器的“+”端,负的卷积核元素所在列上的NOR flash单元输出的电流输入到运算放大器的“-”端,放大器输出端的值构成输出矩阵。对于输出矩阵的y1,1,其值为:x1,1·f2,2+x1,2·f2,1+x2,1·f1,2+x2,2·f1,1,其中f1,1=-1,f1,2=0,f2,1=0,f2,2=1,因此输出端y11对应的运算放大器“+”端相连的位线和V11对应的字线交叉点处的NOR flash单元写入到Vth_low状态,为叙述简单,此单元定义为1单元;与输出y1,1的放大器“-”端相连的位线和V22输入的字线交叉点处设置的NOR flash单元写入到Vth_low状态,此单元定义为2单元;其他与输出y1,1的放大器相连的NORflash单元写入到Vth_high状态。在卷积运算过程,由于代表输入矩阵的输入电压要不为0,要不为(Vth_high+Vth_low)/2,因此除1,2单元外,其他与输出y1,1的放大器相连的单元始终处于关闭状态,单元1,2根据输入矩阵中x11,x22的值决定是否开启。如果x1,1或x2,2的值为1,则对应单元1/2开启;如果x1,1或x2,2的值为0,则对应单元1/2关闭。根据电流差分电流放大器的原理,则其输出y1,1可以表示为x1,1·f2,2+x1,2·f2,1+x2,1·f1,2+x2,2·f1,1,其中f1,1=-1,f1,2=0,f2,1=0,f2,2=1,实现了卷积运算。对于输出矩阵中的其他元素原理是一样的,可得到y1,1到y4,4,将输出矩阵元素编码排列即可得到如图1所示的输出矩阵。
在实际场景应用中,需要做同样卷积运算的矩阵很多,此时在一次矩阵卷积运算完成了,只需要不断地将需要作卷积计算的矩阵输入即可,无须再输入卷积核。当需要对矩阵做不同类型卷积运算再改写卷积核。如果在实际场景应用中,需要对同一个矩阵作不同的卷积运算,可以采用多个NOR flash阵列写入对应的卷积核,然后同时输入运算矩阵和输出运算结果,实现并行计算,进一步提高运算效率。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于NOR FLASH阵列的卷积运算方法,所述NOR FLASH阵列包括多个NOR flash单元组成的二维阵列,其特征在于,包括以下步骤:
S1:将卷积核矩阵的元素存储到NOR flash单元中;
S2:输入矩阵的元素转换成电压施加在NOR flash单元的栅端,同时在NOR flash单元的源端施加一个驱动电压,NOR flash单元的漏端输出电流;
S3:由NOR flash单元漏端的输出电流得到卷积运算结果。
2.根据权利要求1所述的卷积运算方法,其特征在于,在所述S1中,分别经字线、公共源线和位线向NOR flash单元的栅端、源端和漏端施加电压,将卷积核矩阵元素写入到NORflash单元中。
3.根据权利要求2所述的卷积运算方法,其特征在于,当卷积核矩阵元素为1或者-1时,NOR flash单元的阈值电压被调整为低阈值电压;当卷积核矩阵元素为0时,NOR flash单元阈值电压被调整为高阈值电压。
4.根据权利要求1所述的卷积运算方法,其特征在于,在所述S2中,
将输入矩阵元素转换为电压,电压通过字线输入到NOR flash单元的栅端,同时通过公共源线向NOR flash单元的源端施加驱动电压。
5.根据权利要求4所述的卷积运算方法,其特征在于,
当输入矩阵元素为1时,所述电压为NOR flash单元的高阈值电压与低阈值电压之和的二分之一;当输入矩阵元素为0时,所述电压为0。
6.根据权利要求1所述的卷积运算方法,其特征在于,在所述S3中,NOR flash单元漏端的输出电流经位线汇集至运算放大器,运算放大器输出端的值构成输出矩阵,得到卷积运算结果。
7.根据权利要求6所述的卷积运算方法,其特征在于,与正位线连接的NOR flash单元漏端的输出电流输入到运算放大器的正输入端,与负位线连接的NOR flash单元漏端的输出电流输入到运算放大器的负输入端,运算放大器输出端的值为输出矩阵元素。
8.根据权利要求1所述的卷积运算方法,其特征在于,所述NOR FLASH阵列还包括多条字线、多条位线和公共源线;
每一行的NOR flash单元的栅端通过字线相连,每一列的NOR flash单元的漏端通过位线相连,NOR flash单元的源端由一条公共源线相连。
9.根据权利要求8所述的卷积运算方法,其特征在于,还包括多条源线,每一行的NORflash单元的源端通过源线相连,每条源线连接到公共源线。
10.根据权利要求1所述的卷积运算方法,其特征在于,输入矩阵大小为m×m,卷积核矩阵大小为n×n,得到的输出矩阵大小为(m-n+1)×(m-n+1)。
CN201710063036.8A 2017-01-25 2017-01-25 一种基于nor flash阵列的卷积运算方法 Active CN106843809B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710063036.8A CN106843809B (zh) 2017-01-25 2017-01-25 一种基于nor flash阵列的卷积运算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710063036.8A CN106843809B (zh) 2017-01-25 2017-01-25 一种基于nor flash阵列的卷积运算方法

Publications (2)

Publication Number Publication Date
CN106843809A true CN106843809A (zh) 2017-06-13
CN106843809B CN106843809B (zh) 2019-04-30

Family

ID=59121350

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710063036.8A Active CN106843809B (zh) 2017-01-25 2017-01-25 一种基于nor flash阵列的卷积运算方法

Country Status (1)

Country Link
CN (1) CN106843809B (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038542A (zh) * 2017-12-27 2018-05-15 宁波山丘电子科技有限公司 一种基于神经网络的存储模块、模组及数据处理方法
CN108446097A (zh) * 2018-03-09 2018-08-24 合肥恒烁半导体有限公司 一种基于NOR Flash模块的数据运算方法
CN108763163A (zh) * 2018-08-02 2018-11-06 北京知存科技有限公司 模拟向量-矩阵乘法运算电路
CN108777581A (zh) * 2018-08-02 2018-11-09 北京知存科技有限公司 一种数字模拟转换电路、控制方法、存储装置
CN109086249A (zh) * 2018-08-02 2018-12-25 北京知存科技有限公司 模拟向量-矩阵乘法运算电路
CN109284474A (zh) * 2018-08-13 2019-01-29 北京大学 一种加法器辅助实现图像卷积运算的闪存系统及方法
CN109359269A (zh) * 2018-08-27 2019-02-19 北京大学 进行矩阵向量乘法运算的系统及进行神经网络运算方法
CN109800876A (zh) * 2019-01-18 2019-05-24 合肥恒烁半导体有限公司 一种基于NOR Flash模块的神经网络的数据运算方法
CN110007895A (zh) * 2019-04-15 2019-07-12 合肥恒烁半导体有限公司 一种模拟乘法电路、模拟乘法方法及其应用
CN110008440A (zh) * 2019-04-15 2019-07-12 合肥恒烁半导体有限公司 一种基于模拟矩阵运算单元的卷积运算及其应用
CN110276048A (zh) * 2019-05-25 2019-09-24 南京惟心光电系统有限公司 一种矩阵向量乘阵列的控制方法
CN110475119A (zh) * 2019-08-12 2019-11-19 北京大学 基于flash存算阵列的图像压缩系统和方法
CN110533160A (zh) * 2019-07-22 2019-12-03 北京大学 基于nor flash模拟量计算阵列的深度神经网络
CN110543937A (zh) * 2018-05-28 2019-12-06 厦门半导体工业技术研发有限公司 神经网络及操作方法、神经网络信息处理系统
CN110597487A (zh) * 2019-08-26 2019-12-20 华中科技大学 一种矩阵向量乘法电路及计算方法
CN110908632A (zh) * 2018-09-14 2020-03-24 北京兆易创新科技股份有限公司 一种信息处理方法及装置
CN111260047A (zh) * 2018-11-30 2020-06-09 旺宏电子股份有限公司 使用存储器内运算的卷积加速器
CN111368253A (zh) * 2018-12-26 2020-07-03 北京兆易创新科技股份有限公司 一种基于非易失存储器的卷积运算方法以及装置
CN114724595A (zh) * 2022-03-18 2022-07-08 华中科技大学 一种卷积运算加速器及卷积运算方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1126860A (zh) * 1994-04-11 1996-07-17 株式会社日立制作所 半导体集成电路
CN1179651A (zh) * 1996-07-01 1998-04-22 大宇电子株式会社 产生地址的卷积交错器及其方法
US20070266295A1 (en) * 2006-05-15 2007-11-15 Conley Kevin M Convolutional Coding Methods for Nonvolatile Memory
KR20090110650A (ko) * 2008-04-18 2009-10-22 엘지전자 주식회사 플래시 메모리 및 플래시 메모리로 기록된 데이터를 읽는방법
CN105681628A (zh) * 2016-01-05 2016-06-15 西安交通大学 一种卷积网络运算单元及可重构卷积神经网络处理器和实现图像去噪处理的方法
CN106846239A (zh) * 2017-01-12 2017-06-13 北京大学 实现图像卷积的编码型闪存系统及工作方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1126860A (zh) * 1994-04-11 1996-07-17 株式会社日立制作所 半导体集成电路
CN1179651A (zh) * 1996-07-01 1998-04-22 大宇电子株式会社 产生地址的卷积交错器及其方法
US20070266295A1 (en) * 2006-05-15 2007-11-15 Conley Kevin M Convolutional Coding Methods for Nonvolatile Memory
KR20090110650A (ko) * 2008-04-18 2009-10-22 엘지전자 주식회사 플래시 메모리 및 플래시 메모리로 기록된 데이터를 읽는방법
CN105681628A (zh) * 2016-01-05 2016-06-15 西安交通大学 一种卷积网络运算单元及可重构卷积神经网络处理器和实现图像去噪处理的方法
CN106846239A (zh) * 2017-01-12 2017-06-13 北京大学 实现图像卷积的编码型闪存系统及工作方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
GAO等: "Demonstration of Convolution Kernel Operation on Resistive Cross-Point Array", 《IEEE ELECTRON DEVICE LETTERS》 *
ITO等: "A variable-kernel flash-convolution image filtering processor", 《SOLID-STATE CIRCUITS CONFERENCE》 *
李彦冬等: "卷积神经网络研究综述", 《计算机应用》 *

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038542A (zh) * 2017-12-27 2018-05-15 宁波山丘电子科技有限公司 一种基于神经网络的存储模块、模组及数据处理方法
CN108038542B (zh) * 2017-12-27 2022-01-07 上海闪易半导体有限公司 一种基于神经网络的存储模块、模组及数据处理方法
CN108446097A (zh) * 2018-03-09 2018-08-24 合肥恒烁半导体有限公司 一种基于NOR Flash模块的数据运算方法
CN110543937B (zh) * 2018-05-28 2022-09-30 厦门半导体工业技术研发有限公司 神经网络及操作方法、神经网络信息处理系统
CN110543937A (zh) * 2018-05-28 2019-12-06 厦门半导体工业技术研发有限公司 神经网络及操作方法、神经网络信息处理系统
CN108777581A (zh) * 2018-08-02 2018-11-09 北京知存科技有限公司 一种数字模拟转换电路、控制方法、存储装置
CN108763163B (zh) * 2018-08-02 2023-10-20 北京知存科技有限公司 模拟向量-矩阵乘法运算电路
CN109086249B (zh) * 2018-08-02 2023-10-20 北京知存科技有限公司 模拟向量-矩阵乘法运算电路
US11379673B2 (en) 2018-08-02 2022-07-05 Beijing Zhicun Witin Technology Corporation Limited Analog vector-matrix multiplication circuit
CN109086249A (zh) * 2018-08-02 2018-12-25 北京知存科技有限公司 模拟向量-矩阵乘法运算电路
WO2020024608A1 (zh) * 2018-08-02 2020-02-06 北京知存科技有限公司 模拟向量-矩阵乘法运算电路
CN108763163A (zh) * 2018-08-02 2018-11-06 北京知存科技有限公司 模拟向量-矩阵乘法运算电路
CN109284474A (zh) * 2018-08-13 2019-01-29 北京大学 一种加法器辅助实现图像卷积运算的闪存系统及方法
CN109284474B (zh) * 2018-08-13 2020-09-11 北京大学 一种加法器辅助实现图像卷积运算的闪存系统及方法
CN109359269A (zh) * 2018-08-27 2019-02-19 北京大学 进行矩阵向量乘法运算的系统及进行神经网络运算方法
CN110908632A (zh) * 2018-09-14 2020-03-24 北京兆易创新科技股份有限公司 一种信息处理方法及装置
CN111260047A (zh) * 2018-11-30 2020-06-09 旺宏电子股份有限公司 使用存储器内运算的卷积加速器
CN111368253A (zh) * 2018-12-26 2020-07-03 北京兆易创新科技股份有限公司 一种基于非易失存储器的卷积运算方法以及装置
CN111368253B (zh) * 2018-12-26 2023-09-26 兆易创新科技集团股份有限公司 一种基于非易失存储器的卷积运算方法以及装置
CN109800876A (zh) * 2019-01-18 2019-05-24 合肥恒烁半导体有限公司 一种基于NOR Flash模块的神经网络的数据运算方法
CN109800876B (zh) * 2019-01-18 2021-06-01 合肥恒烁半导体有限公司 一种基于NOR Flash模块的神经网络的数据运算方法
CN110008440A (zh) * 2019-04-15 2019-07-12 合肥恒烁半导体有限公司 一种基于模拟矩阵运算单元的卷积运算及其应用
CN110007895A (zh) * 2019-04-15 2019-07-12 合肥恒烁半导体有限公司 一种模拟乘法电路、模拟乘法方法及其应用
CN110007895B (zh) * 2019-04-15 2021-08-06 恒烁半导体(合肥)股份有限公司 一种模拟乘法电路、模拟乘法方法及其应用
CN110276048B (zh) * 2019-05-25 2023-06-09 南京惟心光电系统有限公司 一种矩阵向量乘阵列的控制方法
CN110276048A (zh) * 2019-05-25 2019-09-24 南京惟心光电系统有限公司 一种矩阵向量乘阵列的控制方法
CN110533160A (zh) * 2019-07-22 2019-12-03 北京大学 基于nor flash模拟量计算阵列的深度神经网络
CN110475119A (zh) * 2019-08-12 2019-11-19 北京大学 基于flash存算阵列的图像压缩系统和方法
WO2021027238A1 (zh) * 2019-08-12 2021-02-18 北京大学 基于flash存算阵列的图像压缩系统和方法
CN110597487A (zh) * 2019-08-26 2019-12-20 华中科技大学 一种矩阵向量乘法电路及计算方法
CN114724595A (zh) * 2022-03-18 2022-07-08 华中科技大学 一种卷积运算加速器及卷积运算方法
CN114724595B (zh) * 2022-03-18 2023-03-10 华中科技大学 一种卷积运算加速器及卷积运算方法

Also Published As

Publication number Publication date
CN106843809B (zh) 2019-04-30

Similar Documents

Publication Publication Date Title
CN106843809B (zh) 一种基于nor flash阵列的卷积运算方法
CN106530210B (zh) 基于阻变存储器件阵列实现并行卷积计算的设备和方法
Chen et al. Efficient in-memory computing architecture based on crossbar arrays
CN106847335B (zh) 基于阻变存储阵列的卷积计算存储一体化设备及方法
CN110458279B (zh) 一种基于fpga的二值神经网络加速方法及系统
CN108108809B (zh) 一种针对卷积神经元网络进行推理加速的硬件架构及其工作方法
US20190026626A1 (en) Neural network accelerator and operation method thereof
CN106846239B (zh) 实现图像卷积的编码型闪存系统及工作方法
CN109359269A (zh) 进行矩阵向量乘法运算的系统及进行神经网络运算方法
CN108182959B (zh) 基于阻变器件交叉阵列结构实现逻辑计算的方法
CN108665063A (zh) 用于bnn硬件加速器的双向并行处理卷积加速系统
CN106971372A (zh) 一种实现图像卷积的编码型闪存系统和方法
CN107590106A (zh) 一种应用于对称矩阵与向量乘法的计算方法
CN111260047A (zh) 使用存储器内运算的卷积加速器
US11309026B2 (en) Convolution operation method based on NOR flash array
CN109284474A (zh) 一种加法器辅助实现图像卷积运算的闪存系统及方法
CN108491924B (zh) 一种面向人工智能计算的神经网络数据串行流水处理装置
CN108154225B (zh) 一种使用模拟计算的神经网络芯片
CN107957977A (zh) 一种计算方法及相关产品
CN110597487B (zh) 一种矩阵向量乘法电路及计算方法
CN108154227B (zh) 一种使用模拟计算的神经网络芯片
CN109685208B (zh) 一种用于神经网络处理器数据稀梳化加速的方法及装置
Dazzi et al. 5 parallel prism: A topology for pipelined implementations of convolutional neural networks using computational memory
Adel et al. Accelerating deep neural networks using FPGA
CN108154226B (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