CN111338601A - 用于存储器内乘法及累加运算的电路及其方法 - Google Patents
用于存储器内乘法及累加运算的电路及其方法 Download PDFInfo
- Publication number
- CN111338601A CN111338601A CN201910977183.5A CN201910977183A CN111338601A CN 111338601 A CN111338601 A CN 111338601A CN 201910977183 A CN201910977183 A CN 201910977183A CN 111338601 A CN111338601 A CN 111338601A
- Authority
- CN
- China
- Prior art keywords
- nand
- coupled
- bit lines
- block
- nand strings
- 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
Images
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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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/544—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 for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
- G06F2207/4818—Threshold devices
- G06F2207/4824—Neural networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
Abstract
本发明公开了一种用于存储器内乘法及累加运算的电路,包括多个NAND区块。NAND区块包括NAND串阵列,NAND串阵列包括B个行及S个列以及L个电平的存储器单元。W个字线耦接至L个电平中的各别电平中的(B×S个)存储器单元。源极线耦接至区块中的(B×S个)NAND串。串选择线驱动器提供电压以使多个串选择线的NAND串同时连接至对应位线。字线驱动器经耦接以将字线电压施加于经选电平中的一或多个字线。多个位线驱动器同时将输入数据施加于B个位线。电流感测电路耦接至源极线。
Description
技术领域
本发明是关于一种用于进行乘积总和运算的电路及其方法。
背景技术
在神经形态计算系统、机器学习系统以及用于基于线性代数的一些计算类型的电路中,乘积总和函数可为重要的部份。函数可表达如下:
在此表达式中,每一乘积项是变量输入Xi及权重Wi的乘积。权重Wi可在项之间变化,例如对应于变量输入Xi的系数。
乘积总和函数可使用交叉点阵列架构实现为电路运算,在所述交叉点阵列架构中阵列单元的电性会影响所述函数。
对于高速实施方案而言,合乎期望的为具有极大阵列以便可并行执行诸多操作,或可进行极大的乘积总和系列。在一些系统中,可能有极大数目的输入及输出,因此总电流消耗可能较大。
此外,人工智能AI(artificial intelligence;AI)函数包括大规模矩阵乘法,此涉及使用多位权重的乘法及累加MAC步骤(即乘积总和),其需要极致密的存储器以及高带宽数据通信。
AI硬件的最新进展已针对高效能及低功率解决方案。为了满足此等需求,已提出「存储器内计算」或「存储器内处理器」实施方案。此等技术可减少数据移动要求以节省功率及延迟。
因此,期望能提供适于在大阵列中实施乘积总和运算且可为灵活、高容量以及高效能的结构。
发明内容
基于使用多个NAND区块的存储器内运算来描述用于大规模乘积总和运算的乘法及累加技术。本文中所描述的实例中使用的NAND区块可使用3D NAND快闪技术实施。
本文描述用于将输入信号施加于耦接至多个NAND区块中的NAND区块的多个位线集合的构件,用于将NAND区块中的NAND串集合连接至位线集合中的各别位线的构件,以及用于感测源极线的从位线集合通过各别NAND串集合的电流总和的构件。通过存储于NAND串上的存储器单元中的数据来判定NAND串集合的电导(或相反,判定电阻)。
对于本文所描述的实施例而言,多个NAND区块中的NAND区块包括多个NAND串,所述多个NAND串安置于多个位线集合中的位线与NAND区块的源极线之间。NAND串具有串选择开关以选择性地将所述NAND串连接至对应位线。NAND串包括多个串联配置在串选择开关与接地选择开关之间的存储器单元,所述NAND串通过所述接地选择开关连接至源极线。字线耦接至NAND区块的对应字线电平中的存储器单元的栅极。类似地,串选择线耦接至NAND串的对应列中的串选择开关的栅极。
对于特定NAND区块而言,多个位线集合可包括B个成员,且所述NAND区块可包括具有至少S个成员的串选择线集合。在此组态中,NAND区块包括B×S个NAND串的阵列,其包括B个行及S个列的NAND串。在计算模式下串选择驱动器集合可经操作以使一行NAND区块中的S个NAND串(每一列一个)连接至多个位线集合中的每一位线。以此方式,源极线的计算模式的电流是B个乘积项的总和,且每一乘积项是多个位线集合中的位线中的一者上的输入信号乘以连接至位线的S个NAND串的电导的函数。
本文描述了一种电路,其包括多个NAND区块,每一NAND区块可在计算模式及存储器模式下操作。总线系统连接至所述多个NAND区块的输入及输出,由此可将乘积总和运算的输入数据施加于NAND区块,且乘积总和运算的系数可存储于NAND区块中。
在计算模式及存储器模式下使用的输入及输出电路可共享,且在一些情况下,可针对不同的模式使用不同的电路。给定NAND区块的计算模式输入可包括位线驱动器集合,以将输入数据并行地施加于给定NAND区块的位线。给定NAND区块的计算模式输出可包括多位感测放大器以感测给定NAND区块的源极线的输出数据。给定NAND区块的存储器模式输入可包括页缓冲器电路,其可包括用于计算模式的输入驱动器,或可以是单独电路。
在技术的其他实施例中,描述了一种适合用于乘法及累加加速器中的NAND区块的结构。此外,在技术的其他实施例中,集成电路包括多个乘法及累加拼块(tile),其中每一拼块包括如上文所描述的多个NAND区块。
描述了一种存储器内计算乘积总和的方法,包括:
a)将乘积项X(i)×W(i)的系数数据存储于串选择线SSL(j)上NAND串C(i)行中在NAND区块中L(k)电平上的单元中,所述单元耦接至位线BL(i),其中i为自1至B、j为自1至S且k等于经选字线电平;
b)将输入X(i)施加于位线BL(1)至位线BL(B),且将串选择电压施加于串选择线SSL(1)至串选择线SSL(S),且将字线计算电压施加至经选字线电平中的单元(同时或以组合方式叠加时间,以偏压所述单元以进行感测);
c)总和流经NAND串的C(1)行至C(B)行的电流,所述NAND串的C(1)行至C(B)行连接至NAND区块的源极线的位线BL(1)至BL(B);以及
d)感测源极线的电流大小,以产生表示乘积总和的输出信号。
如本文所描述来配置的NAND区块阵列可用管线式(pipeline)操作,其支持高产出率运算,诸如可用于机器学习系统的推断模式(inference mode)运算。
应用本文中所描述的技术,提供致密及高效能的乘法及累加加速器。实施例可配置为以每瓦特一兆次操作(tera-operations),即1TOPS/Watt的数量级执行。
在审阅以下附图、实施方式以及权利要求书之后可以看出本发明之其他实施例以及优点。
附图说明
图1是乘积总和运算的图。
图2是如本文中所描述的配置为用于存储器模式及用于计算模式的NAND区块的电路图。
图3是示出类似图2的多个NAND区块的电路图。
图4示出适用于如本文中所描述的NAND区块的替代性NAND串实施方案。
图5是如本文中所描述的NAND区块的简化图示。
图6示出包括具有存储器模式及计算模式的多个NAND区块的集成电路。
图7示出包括多个拼块的大规模集成电路,每一拼块包括如本文中所描述的NAND区块阵列。
图8是包括NAND区块阵列MAC加速器的集成电路的简化方区块图。
图9是包括可包括如本文中所描述的NAND区块阵列的乘积总和加速器阵列的系统配置图标。
图10是包括可包括如本文中所描述的NAND区块阵列的乘积总和加速器阵列的系统的替代性组态的图示。
图11是如本文中所描述的用于存储器内乘法及累加运算的方法的流程图。
【符号说明】
200、201、202、203:NAND串
290:电流路径
401:位线
402、515、855、1104、SL、SL1、SL2:源极线
403:辅助栅极
405:串选择开关
406:接地选择开关
510:页缓冲器及输入驱动器
512:字线及串选择线/接地选择线译码器
514、614:感测放大器
520:数据总线系统
600:阵列
612:字线及串选择线译码器
620:页缓冲器
621:位线输入驱动器
622:高电压开关
650:电路拼块
700:集成电路
703:定序控制器
705:输入/输出接口
710:输入接口
750:拼块间总线系统
800:集成电路装置
805:数据总线
810:控制器
820、BLOCK 1、BLOCK 2:区块
830:总线
840:字线驱动器
845:字线集合
850:感测电路
853:数据线
860:阵列
865、BL、BL(1)、BL(2):位线
870:电路
875:页缓冲器
885:线
891:输入输出电路
900:第一集成电路
901、1001:乘积总和加速器阵列
903、1003:数据路径控制器
905、1006:缓冲器
906:逻辑电路
910、911、912:总线系统
950:第二集成电路
1000:集成电路
1005、X digital IO:数据路径
1008:逻辑电路
1100、1101、1102、1103、1104:步骤
GSL、GSL1:接地选择线
OUTPUT Y1、OUTPUT Y2:输出
SSL(1)、SSL(N)、SSL(S):串选择线
WL、WL0、WL1(SEL)、WL30、W31:字线
X1、X2、X3、X4、X5、X6、X7:输入信号
Y1:数字输出值
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
应理解,不存在将技术限制于具体公开的实施例及方法的意图,而是可使用其他特征、元件、方法以及实施例来实现所述方案。描述优选实施例以示出本技术,而非限制其范围,所述范围由权利要求书限定。本领域技术人员将认识到对以下说明书的各种等效变化。
如本文中所使用,术语「耦接」意谓可操作地耦接。在此意义上耦接的对象不一定是直接连接的,且耦接对象之间可存在中间对象。
图1是乘积总和运算的图,其中求和(summation)的项是输入Xi乘以权重Wi的乘积,在此实例中,其中i为从1至7。权重Wi可在求和的项上有所不同。在操作中,可将权重指定为系数集合,且接着施加输入以计算随输入改变而变化的求和。此外,在执行学习过程的算法中,当学习过程更改系数以从达成可用结果的求和中学习,可不时更改权重。
在所示出实例中,将求和的输出应用至sigmoid函数以产生以非线性方式在最小值与最大值之间(诸如0与1之间)变化的输出。亦可使用其他启动函数(activationfunction),诸如罗吉特(logit)函数,或整流函数。乘积总和运算亦可应用于非神经形态的组态,或不用于仿真神经系统的组态。
神经网络包括卷积神经网络(convolutional neural networks)及其他类型的神经网络,通常包括以层(layer)组织的逻辑,其中每一层可接收前一层的输出作为输入,其可能受到启动函数影响),且并行执行数百或数千个乘积总和运算,其输出应用于随后的启动函数或其他逻辑单元。
图2是包括配置成列及行的垂直NAND串阵列的NAND区块的示意图。为方便描述,NAND区块中的一列是具有共同串选择线及共同字线的NAND串集合,且每一NAND串响应于共同串选择线而耦接至不同的位线,从而使得NAND串沿共同串选择线及共同字线逻辑地配置成一列。为方便描述,NAND区块中的一行是具有共同位线的NAND串集合,每一NAND串耦接至不同的串选择线,从而使得NAND串沿共同位线逻辑地配置成一行。在实体布局中,根据所应用的制造方法,行或列可经扭曲,以蜂巢式模式或其他方式配置,以用于高密度或其他原因。在图中,阵列的第一行中的NAND串200及NAND串201耦接至第一位线BL(1)及区块的源极线SL1。此外,阵列的第二行中的NAND串202及NAND串203耦接至第二位线BL(2)及区块的源极线SL1。在所示出的实例中,为简化附图,绘示两个位线。预期给定NAND区块可耦接至诸多位线BL(i)(i为从1至B),包括给定实施方案中的数十、数百或数千个位线,以及NAND串阵列中的NAND串的对应行数。
NAND串阵列中的NAND串中的每一者包括耦接至对应串选择线SSL(1)及串选择线SSL(S)的串选择开关,所述串选择开关用于使对应NAND串与其位线连接或断开。阵列的第一列中的NAND串200及NAND串202耦接至区块的第一串选择线SSL(1)。NAND串201及NAND串203以及阵列的第S个列耦接至第S个串选择线SSL(S)。在所示出的实例中,为简化附图,绘示两个串选择线。预期在给定实施方案中,给定NAND区块可耦接至诸多串选择线,以及NAND串阵列中的NAND串的对应列数。
NAND串阵列中的NAND串中的每一者包括接地选择开关,其耦接至区块的接地选择线GSL1,所述接地选择开关用于使NAND串阵列中的对应NAND串连接至区块的源极线SL1。在一些实施例中,对应NAND串上的接地选择开关可通过具有适当译码电路的单独接地选择线来控制,以支持如本文中所描述的存储器模式及计算模式。
NAND串阵列中的NAND串中的每一者包括串联配置在串选择开关与接地选择开关之间的多个存储器单元,其耦接至对应字线。在此实例中,NAND区块的给定电平中的所有字线共同耦接至单个字线导体,或耦接至共同由单个字线译码器控制的字线导体(word lineconductor),以便NAND区块的给定电平中的所有或经选多个存储器单元列可接收同一字线信号。在此实例中,NAND区块的NAND串是垂直NAND串,其包括耦接至32个字线WL0至字线WL31的具32个电平的存储器单元。
在操作的存储器模式下,可使用由耦接至区块的多个位线的页缓冲器(未绘示)支持的编程(program)及擦除操作将数据写入至单个存储器单元中。在存储器模式操作中,通常使用经选串选择线选择NAND串阵列中的NAND串行中的一者。在此情况下,NAND串阵列的每一行中的NAND串中的一者耦接至位线中的一者。页缓冲器可用于将数据模式编程为NAND串阵列的经选列中的单个NAND串,所述NAND串在NAND区块的每一电平下并联耦接至多个位线。此外,存储器模式下的页缓冲器可用于读取在NAND区块的每一电平下存储于NAND串阵列中的经选列中的存储器单元中的数据。
在存储器模式下,可将乘积总和运算的系数存储至NAND区块中。NAND区块中的NAND单元可使用每单元单位元技术(single-bit-per-cell technology)或每单元多位技术(multiple-bit-per-cell technology)来实施。在一些实施例中,由于系数以在整个多个NAND串中分布的方式存储(如下文所论述),因此每单元单位元技术可为优选的。在其他实施例中,每单元多位技术可用于在将系数编程为NAND区块时提供更高的精确度。
参考图1中的图标,输入信号X1及输入信号X2可由施加于位线BL(1)及位线BL(2)的电压VBL(1)及电压VBL2表示。系数W1可由一或多个经选NAND串的电导表示,所述经选NAND串由耦接至第一位线BL(1)的串选择开关的对应串选择线选择。系数W2可由一或多个经选NAND串的电导表示,所述经选NAND串由耦接至第二位线BL(2)的串选择开关的对应串选择线选择。
经选NAND串的电导通过存储于NAND区块的经选电平下的存储器单元中的数据来判定。在图标中,选择在字线WL1的电平下的NAND串。因此,如图所示,在所有S个串选择线经驱动以使其对应NAND串连接至第一位线BL(1)的情况下,乘积项W1×X1的第一系数W1对应于系数值w(1-1):w(1-S)的组合。在所有S个串选择线经驱动以使其对应NAND串连接至第二位线BL(2)的情况下,乘积项W2×X2的第二系数W2对应于系数值w(2-1):w(2-S)的组合。
在本文中所描述的操作的计算模式下,因在区块的源极线SL1上提供NAND区块的乘积总和运算而产生信号OUTPUT Y1。在图2中所示出的实例中,包括NAND串阵列中的两个位线及两行NAND串,以及NAND串阵列中的N个串选择线及N列NAND串,输出OUTPUT Y1是通过电流路径290来积聚的电流,所述电流路径290对应于NAND区块中的NAND串中的电流总和。
如所示出,电流路径290包括位线BL(1)上的通过NAND串200至源极线SL1的电流,加上位线BL(1)上的通过NAND串201至源极线SL1的电流,加上位线BL2上的通过NAND串202至源极线SL1的电流,加上位线BL2上的通过NAND串203至源极线SL1的电流。
从电流路径290积聚的此电流对应于乘积项W1×X1及W2×X2的总和。系数W1是耦接至字线WL1及位线BL(1)的存储器单元行中的数据值w(1-1):(1-S)的函数,且系数W2是耦接至字线WL2及位线BL(2)的存储器单元行中的数据值w(2-1):w(2-S)的函数。使用耦接至给定位线的存储器单元的每一行中的S个存储器单元表示乘积项的系数使得能够使用高精确度数据(例如,具有多个有效数字)来表示系数。通过在计算模式运算期间同时控制由串选择线选择的列数,且从而控制用于表示系数的存储器单元的数目,系数的精确度可随着满足特定实施方案的需要而变化。因此,对于包括S数目个串选择线的区块而言,若输入数据值由单个位线的电压表示,则可由存储于从1个至S个的若干存储器单元中的数据来表示。
在计算模式运算期间,如本文中所描述的NAND区块中的单个NAND串产生的电流可相对较小。因此,来自NAND区块的NAND串阵列中的所有NAND串的电流的组合可保持在使用耦接至区块的源极线SL1的电流感测感测放大器其有效感测的电流值范围内。
如本文中所描述的NAND区块可使用3D NAND存储器技术来实施。在所属技术领域中已知的各种替代方案中,包括垂直NAND串的NAND区块的一些实例描述于下述者中:美国专利第9,698,156号由吕(Lue)发布于2017年7月4日,其标题是垂直薄通道存储器(VERTICAL THIN CHANNEL MEMORY),及美国专利第9,524,980号由卢发布于2016年12月20日,其标题是U形垂直薄通道存储器(U-SHAPED VERTICAL THIN CHANNEL MEMORY)的;且如本文中充分阐述,此类专利以引用的方式并入。亦可使用2D NAND技术来进行实施,在所述2D NAND技术中NAND区块在整个多个2D NAND阵列上逻辑地定义。
图3是示出一个实例的示意图,其中包括类似图1的NAND区块的多个NAND区块的电路可互连至NAND区块的单个阵列中,作为出于可用于神经网络的大规模乘积总和计算目的的乘积总和加速器。在图3中,区块1以上文相对于图2所描述的方式实施。同样,区块2以同一方式实施。所述区块共享位线。因此,位线BL(1)耦接至区块1的NAND串阵列中的第一行NAND串,且耦接至区块2中的NAND串阵列中的第一行NAND串。同样,位线BL(2)耦接至区块1的NAND串阵列中的第二行NAND串,且耦接至区块2中的NAND串阵列中的第二行NAND串。出于乘积总和计算的目的,NAND区块可依次操作。因此,可将位线BL(1)及位线BL(2)上的输入X1及输入X2用于使用区块1的乘积总和运算,如由串选择线及接地选择线启用。随后,可将位线BL(1)及位线BL(2)上的输入X1及输入X2用于使用区块2的乘积总和运算。字线可针对每一区块单独地操作及译码。
在所示出的实例中,存储于区块1中的系数W1由数据值表示,所述数据值存储于在区块的经选电平下的NAND串行中的存储器单元。因此,在区块1中,对于在字线WL1的电平下的经选电平而言,区块1、位线BL(1)以及串选择线SSL(1):SSL(N)中的系数W1对应于数据值w(1-1,1):w(1-N,1)的组合。类似地,对于在字线WL1的电平下的经选电平而言,区块1、位线BL(2)以及串选择线SSL(1):SSL(N)中的系数W2对应于数据值w(2-1,1):w(2-N,1)的组合。在区块2中,对于在字线WL1的电平下的经选电平而言,区块2、位线BL(1)以及串选择线SSL(1):SSL(N)中的系数W1对应于数据值w(1-1,2):w(1-N,2)的组合。类似地,对于在字线WL1的电平下的经选电平而言,区块2、位线BL(2)以及串选择线SSL(1):SSL(N)中的系数W2对应于数据值w(2-1,2):w(2-N,2)的组合。
图3中所示出的NAND区块的模式可沿任何实际数目的NAND区块的位线重复,且可沿任何实际数目的NAND区块的字线重复。以此方式,出于乘积总和运算的大规模计算的目的,可实施包括大量NAND区块的电路。
图4示出可用于如本文中所描述的NAND区块中的替代性NAND串组态。在图2及图3中,NAND串是直式NAND串,其中串选择栅极耦接至NAND串的顶部处的位线,且接地选择栅极耦接至NAND串的底部处的源极线。在图4中所示出的替代方案中,绘示U形NAND串。使用U形NAND串,可在NAND串的3D区块之上对源极线及位线进行布线。因此,如图4中所绘示,位线401由串选择开关405耦接至U形NAND串的第一侧。U形NAND串的第一侧的底部处的辅助栅极403耦接至U形NAND串的第二侧。在U形NAND串的第二侧的顶部处,接地选择开关406使NAND串连接至源极线402。位线及源极线可布线于集成电路上的不同的图案化金属层(layersof patterned metal)上。
图5是如本文中所描述的经组态为NAND区块的概念图示。表示了包括类似图1中所绘示的垂直NAND串的NAND区块BLOCK 1。存储器单元的电平中的NAND区块的深度对应于字线电平WL(1:L)的数目L。NAND区块中的NAND串的行数对应于位线BL(1:B)的数目B。NAND区块中的NAND串的列数对应于串选择线SSL(1:S)的数目S。
页缓冲器及输入驱动器510耦接至多个位线BL(1:B)。页缓冲器包括耦接至多个位线中的位线的位线驱动器,及耦接至所述多个位线中的位线的感测放大器。在存储器模式下使用页缓冲器/输入驱动器510以保存用于将系数写入至区块中的数据。在存储器模式下,页缓冲器用于在例如NAND快闪阵列中的编程及擦除操作期间施加位线电压。在计算模式下,输入驱动器用于施加对应于乘积总和运算的输入数据的位线电压。在一些实施例中,页缓冲器可在计算模式下用作定义输入数据值的数据模式的构件。在其他实施例中,输入数据可使用替代性存储器路径及译码器来施加于输入驱动器。类似地,在一些实施例中,用于计算模式下的输入驱动器可包括于用于存储器模式下的页缓冲器中的位线驱动器中。在其他实施例中,存储器模式的位线驱动器不同于计算模式的输入驱动器。
字线及串选择线/接地选择线译码器512耦接至多个字线,且耦接至NAND区块的多个串选择线及接地选择线。译码器512可经操作以选择所述多个串选择线中的一者或大于一者,用于使NAND串连接至对应位线。此外,译码器512可经操作以通过驱动在区块的特定电平下的经选字线WL(SEL)来选择存储器单元的电平。在存储器模式下,译码器512通常为页读取或页写入操作选择一个串选择线及一个字线。在计算模式下,译码器512选择包括所有串选择线的多个串选择线及一个字线以供乘积总和运算,以在源极线515上产生对应于阵列中的经选NAND串的电导总和的电流。
源极线515耦接至感测放大器514,其将源极线515上的电流转换成数字输出值Y1。感测放大器514可在存储器模式期间禁用。页缓冲器/输入驱动器510及感测放大器514可耦接至数据总线系统520,以在NAND区块当中安排输入及输出数据来进行大规模乘积总和运算。定序控制器(未绘示)可用于协调译码器512、页缓冲器/输入驱动器510以及感测放大器514的操作,以进行存储器模式操作及计算模式操作。
页缓冲器/输入驱动器510、译码器512以及感测放大器514及本文中所描述的各种实施例,包括用于将输入信号施加于耦接至多个NAND区块中的NAND区块的多个位线中的多个位线集合、用于使NAND区块中的NAND串集合连接至位线集合中的各别位线,以及用于感测从位线集合通过各别NAND串集合的电流总和的构件。
图5示出单个NAND区块。图6是包括NAND区块的阵列600的电路拼块650。在此实例中,NAND区块的阵列600包括呈8 x 8阵列的64个区块。字线及串选择线译码器612安置于拼块中。单个区块的字线译码器及字线可独立地控制。此外,单个区块的串选择译码器及串选择线可实施为单独的电路,且可独立地控制。
在一些实施例中,字线译码器及字线,以及串选择线译码器及串选择线可配置在水平通道(lane)中,以便水平通道中的一些或所有NAND区块共享相同字线导体及字线译码器,以及同一串选择线及串选择线译码器。举例而言,在此8 x 8阵列中,可存在NAND区块的8个水平通道。
拼块的位线耦接至电路集合,所述电路集合类似用于大规模NAND存储器装置中的彼等电路集合。电路集合包括耦接至位线的高电压开关622,用于支持位线的编程及擦除操作。此外,电路集合包括用于计算模式期间的逻辑输入的位线输入驱动器621,其经配置以将电压施加于位线,所述电压包括对应于乘积总和运算的输入值的位线电压。电路集合亦包括页缓冲器620,其用于定义用于编程操作的数据集合、用于在编程验证操作期间存储数据,且用于读取操作中以自存储器阵列传输数据。此外,页缓冲器620可作为逻辑路径的部分,以选择在计算模式期间被施加于给定乘积总和运算的所述多个位线的电压电平。
页缓冲器620、位线输入驱动器621以及高电压开关622可配置在多个垂直通道中,以便垂直通道中的所有NAND区块共享同一位线及相关联电路。在一个实施例中,NAND区块的阵列600可包括在此实例中耦接至八个NAND区块的行的8K位线,其经配置为位线的八个1K通道。
感测放大器614耦接至NAND区块的阵列600。可存在例如64个电流感测感测放大器,每一所述电流感测感测放大器耦接至阵列600的多个NAND区块中的64个NAND区块中的一者。在其他实施例中,感测放大器614集合可包括针对阵列600的每一水平通道的一个感测放大器。在其他实施例中,感测放大器614集合可包括针对每一垂直通道的一个感测放大器。
如图6中所示出,携带数字输入输出数据的数据路径(X个数字IO)耦接至页缓冲器620及位线输入驱动器621,且可连接至集成电路上的数据总线系统或输入输出电路,拼块实施于所述集成电路上。类似地,携带来自感测放大器614的数字输出(Y个n位输出)的数据路径可连接至集成电路上的数据总线系统或输入输出电路,拼块实施于所述集成电路上。
图7示出包括类似图6中所绘示的拼块的多个拼块的实施例。因此,示出集成电路700包括呈3 x 3网格配置的拼块TILE1至拼块TILE 9。集成电路700上的拼块间总线系统750耦接至多个乘法及累加加速器拼块上的数据路径。定序控制器703经由总线系统750耦接至拼块的网格,用于控制所述多个拼块当中的数据流,且用于使用命令序列来配置拼块的操作,例如针对由总线系统750发送的存储器模式操作及计算模式操作。输入输出接口705耦接至定序控制器703,其可包括多个输入接口710,包括例如大容量DDR DRAM接口、大容量串行接口、大容量PCIe接口以及用于将大数量数据移入及移出网格的其他业界标准或自定义接口。
图8是包括MAC加速器存储器阵列的集成电路装置800的另一实施例的简化芯片方区块图。所述MAC加速器存储器阵列包括(如图2中所绘示)例如实施于诸如图6及图9中所示出的各种实施例中的快闪存储单元的NAND区块阵列860。在此实例中的装置800包括控制器810,所述控制器包括例如用于在存储器模式下的存储器操作的状态机及在如上文所论述的计算模式下的MAC加速器或乘积总和运算。此外,在此实例中的控制器810包括序列发生器,用于控制装置800在涉及NAND区块阵列860的大规模AI功能中的使用,以及装置内部及外部的数据流运算。
集成电路装置800包括耦接至阵列860中的对应NAND区块的源极线集合855,及耦接至阵列860中的对应NAND区块的位线集合865。
字线集合耦接至在NAND区块的对应电平下的存储器单元的栅极,字线集合中的字符线的信号选择存储器单元的各别电平。字线驱动器840耦接至字线集合845。
感测电路集合850耦接至源极线集合中的各别源极线。对于使用阵列的乘积总和运算而言,源极线感测电路850可感测来自存储器阵列860的源极线855处的电流。在源极线集合中的特定源极线处所感测的电流可表示如上文所论述的乘积总和。来自源极线感测电路850的感测数据经由数据线853供应给输入输出电路891。
电路870中的位线驱动器耦接至页缓冲器875,且耦接至位线865。对于使用阵列的乘积总和运算而言,电路870中的位线驱动器可产生针对每一经选位线的输入x(m)。
在总线830上从控制逻辑即控制器810至电路870中的页缓冲器875、位线驱动器以及字线驱动器840供应地址。电路870中的页缓冲器875、位线驱动器以及源极线感测电路850通过线853、线885耦接至输入输出电路891。
输入输出电路891将数据驱动至集成电路装置800外部的目的地。输入输出数据及控制信号经由数据总线805在集成电路装置800上的输入输出电路891、控制逻辑810及输入输出端口或集成电路装置800内部或外部的其他数据源之间移动,所述数据源诸如通用处理器或专用应用电路,或提供由存储器阵列860支持的系统单芯片(system-on-chip)功能性模块的组合。
在图8中所绘示的实例中,使用偏压配置状态机的控制逻辑810控制经由区块820中的一或多个电压供应产生或提供的供电电压的应用,以供计算模式下的乘积总和运算及存储器模式下的读取及写入(编程及擦除)操作。
控制逻辑810可使用所属技术领域中已知的专用逻辑电路来实施。在替代性实施例中,控制逻辑包括可实施于同一集成电路上的通用处理器,所述通用处理器执行计算机程序来控制装置的操作。在另外其他实施例中,可利用专用逻辑电路与通用处理器的组合来实施控制逻辑。
控制逻辑810亦可实施电路以支持装置的计算模式下的管线式(pipeline)操作。举例而言,下表绘示三个区块的管线操作,所述三个区块具有由逻辑支持的SRAM以接收及操作区块的输出。
图9示出包括第一集成电路900的系统的组态,所述第一集成电路包括乘积总和加速器阵列901(或MAC加速器),所述乘积总和加速器阵列(或MAC加速器)通过线911使用数据路径控制器903互连至外部总线系统910。乘积总和加速器阵列901可使用如上文所论述的NAND区块阵列或NAND区块阵列的拼块阵列来实施。第二集成电路950充当控制器,且包括缓冲器905及逻辑电路906,以与乘积总和加速器阵列901配合使用。第二集成电路950通过线912耦接至总线系统910。第二集成电路950中的缓冲器905可包括SRAM阵列、DRAM阵列、NOR快闪阵列,或可与乘积总和加速器阵列901配合使用的其他类型的存储器。逻辑电路906可包括用于管理神经网络的操作的定序逻辑。逻辑电路906亦可包括启动函数逻辑及其他支持装置的计算模式的逻辑。此外,逻辑电路906可包括形成数字乘积总和运算及支持大规模神经网络的其他运算的大规模处理器。
在一些实施例中,第一集成电路900及第二集成电路950可以叠层芯片组态、以多芯片模块或以其他紧凑组态来安装,其中总线系统910、总线系统911、总线系统912中的互连线包括芯片间连接,所述芯片间连接包括例如通过硅穿孔、球栅连接等。
图10示出在单个集成电路1000上包括乘积总和加速器阵列1001与控制器的替代性实施例。在此实例中,数据路径控制器1003与乘积总和加速器阵列1001实施于集成电路上。数据路径1005使数据路径控制器耦接至缓冲器1006,所述缓冲器继而耦接至同一集成电路1000上的逻辑电路1008。如图10中表示,使用可运用数据路径控制器1003来控制的直接数据路径,将来自缓冲器1006的数据传输至乘积总和加速器阵列1001。
图11是示出用于使用如本文中所描述的NAND区块来计算乘积总和的方法的流程图。图8的实例中的控制逻辑810可包括支持此方法的状态机。将图11的方法应用于单个NAND区块。方法可扩展至如上文所论述的NAND区块阵列及拼块阵列以支持大规模乘法及累加运算。
因此,为了计算B数目个乘积项的乘积总和,方法包括选择耦接至B个位线的NAND区块、S数目个串选择线以及具有L数目个字线电平(1100)。为了设定在存储器模式下操作NAND区块的计算,方法包括将乘积项W(i)×X(i)的系数数据w(i-j)存储于耦接至位线BL(i)的串选择线SSL(j)上的NAND串的行C(i)的电平L(k)下的存储器单元集合中,位线的索引i为自1至B,且SSL线的索引j为自1至S,字线电平的索引k保持在恒定的经选电平下。使用NAND页编程操作,系数数据可存储于耦接至单个SSL线SSL(i)的NAND串上的存储器单元中。针对SSL线SSL(1)至SSL线SSL(S)的集合中的SSL线中的每一者重复NAND页编程操作(1101)。
以此方式,系数W(i)由S数目个数据值(w(i-j)的j为自1至S)表示,所述数据值存储于耦接至串选择线SSL(1)至串选择线(S)上的串选择开关的NAND串的行C(i)中的字线电平k下的存储器单元集合中。
大体而言,数目S可等于串选择线的实体数目。在一些实施例中,用于存储特定系数的数目S可以是自1直至串选择线的最大实体数目的任何数目。类似地,位线的数目B对应于NAND区块中要求和的乘积项的数目。数目B可等于耦接至区块的位线的最大实体数目,或等于针对特定数目的乘积项所选的位线的数目。
一旦将数据存储,则装置可进入计算模式。在计算模式下,将由位线电压VBLi表示的输入X(i)并行施加于位线BL(i)(i为自1至B),且可同时施加于位线。此外,将串选择线选择电压(其设定为接通使位线连接至对应NAND串的串选择开关)同时并行施加于所有串选择线SSL(j),j为自1至S。此外,将字线电压施加于对应于所计算的特定乘积项的字线电平k中的一或多个字线(1102)。
此具有以下效果:使S数目个NAND串并联连接至位线BL(i)中的每一者,且将计算电平字线电压施加于经选字线电平k下的一或多个字线。同时,将接地选择线设定为选择电压电平以接通使NAND串连接至源极线的接地选择开关。在经选字线电平下的单元中的数据值具有根据存储的系数来设定NAND串的电导的效果。
此外,在计算模式下,将通过NAND串的C(1)行至C(B)行中的S数目个NAND串的电流总和于NAND区块的源极线(1103),所述NAND串的C(1)行至C(B)行连接至位线BL(1)至位线BL(B)。
因此,源极线的电流对应于所计算的B个乘积项的总和。
最后,在计算模式下,通过感测源极线的电流大小来产生乘积总和输出(1104)。此输出可以是多位数字输出,所述多位数字输出根据所执行的计算顺序安排发送至总线系统。
流程图示出如本文中所描述的由存储器控制器或由存储器装置来执行的逻辑。逻辑可使用存储于计算机系统可访问存储器内的计算机程序来编程的处理器来实施,且可由处理器、由专用逻辑硬件(包括场可编程集成电路)且由专用逻辑硬件与计算机程序的组合执行。应了解,步骤中的多者可组合、并行地进行或以不同顺序进行,而不会影响所达成功能。在一些情况下,如本领域技术人员将了解,只要亦进行某些其他改变,重新配置步骤亦将达成同一结果。在其他情况下,如本领域技术人员将了解,只要符合某些条件,重新配置步骤亦将达成同一结果。此外,将了解,流程图仅绘示相关于理解本技术的步骤,且将理解,可在所绘示的彼等步骤之前、之后以及之间进行用于实施其他功能的众多额外步骤。
大体而言,已描述一种高效能、低功率的乘法及累加加速器电路。加速器电路的实施可包括3D NAND快闪区块,其经配置以用于乘积总和运算的大容量计算。利用本文中所描述的结构,乘积总和计算所需的电流大小可为极小的且可以被严格控制。在本文中所描述的实施例中,可同时操作数千及数万个单元以支持高产出率、低功率的乘积总和运算。
在本文中所描述的实例中,每一区块具有单独的源极线,其可同时自多个位线及串选择线的诸多NAND串收集电流。源极线的电流可耦接至电流感测感测放大器,所述电流感测感测放大器具有宽动态范围(其中每区块的平均电流从平均10μA至100μA变化),具有多位感测(例如,2位、3位、4位)。每串的电流可通过设定适当的临限电压及将电压驱动为尽可能小(诸如在每串小于50纳安范围内)来微调,使得能够在单个感测放大器中并行感测1000个至10,000个串。举例而言,字线可靠近编程验证与闪存单元的擦除状态之间的中间值而偏压,且位线电压可减小至0.3伏以下以使每串的电流较小。
用于并行输入至NAND区块的位线及用于存储系数的串选择线的数目可按特定实施方案的需要来设定。此外,用于给定计算的位线及串选择线的数目可在操作的每一循环中逻辑地判定。
由于使用多个串选择线,且从而使用串联耦接至单个位线的多个NAND串,故每一乘积项的系数或权重可分布至NAND区块中的多个存储器单元中。此实现系数的高分辨率,或有效地模拟权重值,因为可使用NAND快闪编程操作将单元中的每一者单独微调至高准确度。因此,计算的可靠性可为极高的。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种用于存储器内乘法与累加运算的电路,包括:
多个NAND区块,具有对应的区块源极线,所述多个NAND区块中的特定NAND区块包括配置于多个位线集合与所述特定NAND区块对应的所述区块源极线之间的NAND串的区块;
输入电路,用以将输入信号施加于耦接至所述多个NAND区块的所述多个位线集合;以及
感测电路,耦接至所述区块源极线,所述感测电路感测从所述位线集合通过所述经选NAND区块中的所述NAND串的区块到经选NAND区块中的所述区块的源极线上的电流总和。
2.根据权利要求1所述的电路,包括耦接至所述多个NAND区块的多个位线,所述多个NAND区块包括所述多个位线集合,且其中所述输入电路包括耦接至所述多个位线中的位线的页缓冲器。
3.根据权利要求2所述的电路,包括用于对耦接至所述多个位线中的各别位线的NAND串进行编程的构件。
4.根据权利要求1所述的电路,其中所述多个NAND区块中的NAND区块包括:
多个NAND串,位于所述多个位线集合与所述区块源极线之间,所述NAND串具有串选择开关以选择性地使所述NAND串连接至所述多个位线集合中的对应位线,且多个存储器单元串联配置,其中所述多个位线集合中的位线耦接至所述多个NAND串中的各NAND串集合;
字线,耦接至所述NAND区块的对应字线电平中的存储器单元的栅极;以及
串选择线,耦接至所述多个NAND串中NAND串对应列中的串选择开关的栅极。
5.根据权利要求4所述的电路,对于所述NAND区块而言,所述多个位线集合包括B个成员,且所述NAND区块包括具有至少S个成员的串选择线集合,其中串选择驱动器可经操作以使NAND区块的行中的S个NAND串连接至所述多个位线集合中的每一位线,使得所述NAND区块的源极线的电流是B个乘积项的总和,其中每一乘积项是所述位线集合中的所述位线中的一者上的输入信号乘以连接至所述一个位线的S个NAND串的电导的函数。
6.根据权利要求1所述的电路,其中输入电路包括位线驱动器集合以将输入数据并行地施加于给定NAND区块的位线,且所述感测电路包括多位感测放大器以感测对应源极线的输出数据。
7.根据权利要求1所述的电路,其中所述多个NAND区块中的每一NAND区块具有计算模式输入及输出,且各自具有存储器模式输入及输出;且包括:
总线系统,连接至所述计算模式输入及输出,且连接至所述多个NAND区块的所述存储器模式输入及输出。
8.根据权利要求7所述的电路,其中所述多个NAND区块中的给定NAND区块的所述存储器模式输入包括用以经由所述给定NAND区块的位线来读取及写入数据的页缓冲器电路。
9.根据权利要求1所述的电路,其中所述多个NAND区块中的区块各自包括B×S个NAND串,所述B×S个NAND串包括NAND串的B个行及S个列以及L个电平的存储器单元,其中B、S以及L是整数,所述NAND串包括在所述L个电平中的各别电平中串联的L个存储器单元;
所述B个行中的各别行中的(S个)NAND串的集合,耦接至B个位线的集合中的对应位线;
所述S个列中的各别列中的(B个)NAND串的集合中的串选择开关,耦接至S个串选择线的集合中的对应串选择线;
所述L个电平中的各别电平中的(B×S个)存储器单元的集合,可操作地耦接至所述L个电平中的对应一或多个字线;以及
源极线,可操作地耦接至所述区块中的所述B×S个NAND串。
10.根据权利要求1所述的电路,包括控制器,所述控制器以管线式操作所述多个NAND区块。
11.一种用于存储器内乘法与累加运算的电路,包括:
NAND串区块,包括NAND串的B个行及S个列以及L个电平的存储器单元,其中B、S以及L是整数,所述NAND串包括在所述L个电平中的各别电平中串联的L个存储器单元;
B个位线,耦接至所述B个行中的各别行中的S个NAND串;
S个串选择线,耦接至所述S个列中的各别列中的B个NAND串;
W个字线,可操作地耦接至所述L个电平中的各别电平中的(B×S个)存储器单元;
源极线,可操作地耦接至所述区块中的所述NAND串;
串选择线驱动器,耦接至所述S个串选择线以供应串选择电压,以使多个串选择线的NAND串同时连接至对应位线;
字线驱动器,耦接以将字线电压施加于经选电平中的一或多个字线;
多个位线驱动器,耦接至所述B个位线中的位线以将输入数据信号施加于多个所述B个位线;以及
电流感测电路,耦接至所述源极线。
12.根据权利要求11所述的电路,包括页缓冲器,所述页缓冲器可操作地耦接至所述B个位线中的位线来施加输入数据信号,以在编程模式下对所述区块中的所述NAND串进行编程。
13.一种用于存储器内乘法与累加运算的方法,包括:
将乘积项X(i)×W(i)的系数数据w(i,j)存储于串选择线SSL(j)上NAND串C(i)行中在NAND区块中L(k)电平上的单元,所述单元耦接至位线BL(i),其中i为从1至B,j为从1至S且k等于经选字线电平;
同时将输入X(i)施加于位线BL(1)至位线BL(B),且将串选择电压施加于串选择线SSL(1)至串选择线SSL(S),且将字线计算电压施加于所述经选字线电平中的单元;
总和通过NAND串的C(1)行至C(B)行的电流,所述NAND串的C(1)行至C(B)行连接至所述NAND区块的源极线的位线BL(1)至位线BL(B);以及
感测所述源极线的电流大小以产生表示乘积总和的输出信号。
14.一种用于存储器内乘法与累加运算的电路,包括:
多个乘法及累加加速器拼块,位于集成电路中,每一拼块包括:
多个NAND区块,各自具有输入及输出;以及
数据路径,连接至所述输入及所述输出;
拼块间总线系统,位于所述集成电路上,所述拼块间总线系统耦接至所述多个乘法及累加加速器拼块的所述数据路径;以及
输入输出电路,位于所述集成电路上,所述输入输出电路耦接至所述拼块间总线系统。
15.根据权利要求14所述的电路,包括用以控制所述多个拼块之间的数据流的序列发生器逻辑。
16.根据权利要求14所述的电路,每一拼块包括:
多个位线,耦接至所述多个NAND区块;以及
多个源极线,耦接至所述多个NAND区块,且包括:
输入驱动器,耦接至所述多个位线中的位线,
感测放大器,耦接至所述多个源极线中的源极线;以及
页缓冲器,耦接至所述多个位线中的位线。
17.根据权利要求14所述的电路,每一拼块包括:
多个位线,耦接至所述多个NAND区块;以及
多个源极线,耦接至所述多个NAND区块,其中所述多个位线中的多个位线集合耦接至所述多个NAND区块中的每一NAND区块;以及
所述多个NAND区块中的NAND区块,包括:
多个NAND串,位于所述多个位线集合与所述源极线之间,所述NAND串具有串选择单元以选择性地使所述NAND串连接至所述多个NAND串的多个位线集合中的对应位线,且多个存储器单元串联配置,其中所述多个位线集合中的位线耦接至所述多个NAND串中各别NAND串的集合;
字线,耦接至所述NAND区块的对应字线电平中存储器单元的栅极;以及
串选择线,耦接至所述多个NAND串中NAND串对应列中串选择单元的栅极。
18.根据权利要求17所述的电路,其中对于所述NAND区块而言,所述多个位线集合包括B个成员,且所述NAND区块包括具有至少S个成员的串选择线集合,且其中串选择驱动器可经操作以使NAND区块的行中的S个NAND串连接至所述多个位线集合中的每一位线,使得所述源极线的电流是B个乘积的总和,其中每一乘积是所述位线集合中的所述位线中的一者上的输入信号乘以连接至所述位线中的一者的S个NAND串的电导的函数。
19.根据权利要求14所述的电路,其中每一拼块中的所述多个NAND区块中的给定NAND区块的所述输入包括位线驱动器集合,以将输入数据并行地施加于所述给定NAND区块的位线,且所述多个NAND区块中的所述给定NAND区块的所述输出包括多位感测放大器以感测所述给定NAND区块的源极线的输出数据。
20.根据权利要求14所述的电路,其中对于每一拼块而言,所述多个NAND区块中的区块各自包括B×S个NAND串,所述B×S个NAND串包括NAND串的B个行及S个列以及L个电平的存储器单元,其中B、S以及L是整数,所述NAND串包括在所述L个电平中的各别电平中串联的L个存储器单元;
所述B个行中的各别行中的(S个)NAND串的集合,耦接至B个位线的集合中的对应位线;
所述S个列中的各别列中的(B个)NAND串的集合中的串选择开关,耦接至S个串选择线的集合中的对应串选择线;
所述L个电平中的各别电平中的(B×S个)存储器单元的集合,可操作地耦接至所述L个电平中的对应一或多个字线;以及
源极线,以操作方式耦接至所述区块中的所述(B×S个)NAND串。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862780938P | 2018-12-18 | 2018-12-18 | |
US62/780,938 | 2018-12-18 | ||
US201962791037P | 2019-01-11 | 2019-01-11 | |
US62/791,037 | 2019-01-11 | ||
US16/508,189 | 2019-07-10 | ||
US16/508,189 US11934480B2 (en) | 2018-12-18 | 2019-07-10 | NAND block architecture for in-memory multiply-and-accumulate operations |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111338601A true CN111338601A (zh) | 2020-06-26 |
CN111338601B CN111338601B (zh) | 2023-06-13 |
Family
ID=67742216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910977183.5A Active CN111338601B (zh) | 2018-12-18 | 2019-10-15 | 用于存储器内乘法及累加运算的电路及其方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11934480B2 (zh) |
EP (1) | EP3671433A1 (zh) |
JP (1) | JP7041654B2 (zh) |
KR (1) | KR20200076571A (zh) |
CN (1) | CN111338601B (zh) |
TW (1) | TWI757645B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112153139A (zh) * | 2020-09-23 | 2020-12-29 | 成都市深思创芯科技有限公司 | 基于传感器网络和存内计算神经网络的控制系统及方法 |
CN114139691A (zh) * | 2020-09-03 | 2022-03-04 | 旺宏电子股份有限公司 | 三维nand人工智能加速器的辨识方法与控制电路 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112151095A (zh) * | 2019-06-26 | 2020-12-29 | 北京知存科技有限公司 | 存算一体芯片、存储单元阵列结构 |
US11049586B2 (en) | 2019-11-26 | 2021-06-29 | Mythic, Inc. | Systems and methods for implementing redundancy for tile-based intelligence processing computing architecture |
US11586900B2 (en) | 2020-04-20 | 2023-02-21 | Macronix International Co., Ltd. | Training algorithm in artificial neural network (ANN) incorporating non-ideal memory device behavior |
US11189339B1 (en) * | 2020-05-29 | 2021-11-30 | Macronix International Co., Ltd. | Performing in-memory computing based on multiply-accumulate operations using non-volatile memory arrays |
US11604645B2 (en) * | 2020-07-22 | 2023-03-14 | Flex Logix Technologies, Inc. | MAC processing pipelines having programmable granularity, and methods of operating same |
WO2022165350A2 (en) * | 2021-01-31 | 2022-08-04 | Redpine Signals Inc | Architecture for multiplier accumulator using unit elements for multiplication, bias, accumulation, and analog to digital conversion over a shared charge transfer bus |
US11476866B2 (en) | 2021-02-01 | 2022-10-18 | Ceremorphic, Inc. | Successive approximation register using switched unit elements |
US12026479B2 (en) | 2021-01-31 | 2024-07-02 | Ceremorphic, Inc. | Differential unit element for multiply-accumulate operations on a shared charge transfer bus |
US11469770B2 (en) | 2021-01-31 | 2022-10-11 | Ceremorphic, Inc. | Architecture for multiplier accumulator using unit elements for multiplication, bias, accumulation, and analog to digital conversion over a shared charge transfer bus |
US11567730B2 (en) | 2021-01-31 | 2023-01-31 | Ceremorphic, Inc. | Layout structure for shared analog bus in unit element multiplier |
TWI788128B (zh) * | 2021-04-16 | 2022-12-21 | 旺宏電子股份有限公司 | 記憶體裝置及其操作方法 |
US11996137B2 (en) * | 2021-05-21 | 2024-05-28 | Taiwan Semiconductor Manufacturing Company, Ltd. | Compute in memory (CIM) memory array |
WO2022256293A1 (en) * | 2021-05-31 | 2022-12-08 | Ceremorphic, Inc | Architecture for analog multiplier-accumulator with binary weighted charge transfer capacitors |
US11687738B2 (en) | 2021-05-31 | 2023-06-27 | Ceremorphic, Inc. | Chopper stabilized bias unit element with binary weighted charge transfer capacitors |
US12014152B2 (en) | 2021-05-31 | 2024-06-18 | Ceremorphic, Inc. | Multiplier-accumulator unit element with binary weighted charge transfer capacitors |
US12032926B2 (en) | 2021-05-31 | 2024-07-09 | Ceremorphic, Inc. | Chopper stabilized analog multiplier accumulator with binary weighted charge transfer capacitors |
US20230022516A1 (en) * | 2021-07-23 | 2023-01-26 | Taiwan Semiconductor Manufacturing Company, Ltd. | Compute-in-memory systems and methods with configurable input and summing units |
KR20230023430A (ko) | 2021-08-10 | 2023-02-17 | 백은지 | 블루투스 연동 장치가 포함된 손목시계 |
US11694733B2 (en) | 2021-08-19 | 2023-07-04 | Apple Inc. | Acceleration of in-memory-compute arrays |
US11789646B2 (en) * | 2021-09-24 | 2023-10-17 | Intel Corporation | Methods, apparatus, and articles of manufacture to increase data reuse for multiply and accumulate (MAC) operations |
US12094568B2 (en) | 2022-07-18 | 2024-09-17 | Macronix International Co., Ltd. | Content addressable memory for large search words |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080013382A1 (en) * | 2006-07-14 | 2008-01-17 | Micron Technology, Inc. | Current sensing for flash |
CN101432821A (zh) * | 2006-05-04 | 2009-05-13 | 美光科技公司 | 模仿存储器装置中的编程验证漏极电阻 |
US9430735B1 (en) * | 2012-02-23 | 2016-08-30 | Micron Technology, Inc. | Neural network in a memory device |
CN107077879A (zh) * | 2014-10-20 | 2017-08-18 | 美光科技公司 | 用于经划分的sgs线的设备及方法 |
CN107767905A (zh) * | 2016-08-19 | 2018-03-06 | 美光科技公司 | 分段式存储器及操作 |
US20180102177A1 (en) * | 2016-10-11 | 2018-04-12 | Macronix International Co., Ltd. | 3d memory with staged-level multibit programming |
US20180144240A1 (en) * | 2016-11-21 | 2018-05-24 | Imec Vzw | Semiconductor cell configured to perform logic operations |
CN108268946A (zh) * | 2016-12-31 | 2018-07-10 | 上海兆芯集成电路有限公司 | 具有阵列宽度可分段之旋转器之神经网络单元 |
Family Cites Families (152)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2619663C3 (de) | 1976-05-04 | 1982-07-22 | Siemens AG, 1000 Berlin und 8000 München | Feldeffekttransistor, Verfahren zu seinem Betrieb und Verwendung als schneller Schalter sowie in einer integrierten Schaltung |
US4987090A (en) | 1987-07-02 | 1991-01-22 | Integrated Device Technology, Inc. | Static ram cell with trench pull-down transistors and buried-layer ground plate |
US5029130A (en) | 1990-01-22 | 1991-07-02 | Silicon Storage Technology, Inc. | Single transistor non-valatile electrically alterable semiconductor memory device |
JPH0451382A (ja) | 1990-06-20 | 1992-02-19 | Hitachi Ltd | 情報処理装置 |
JP3073645B2 (ja) | 1993-12-27 | 2000-08-07 | 株式会社東芝 | 不揮発性半導体記憶装置およびその動作方法 |
US7089218B1 (en) | 2004-01-06 | 2006-08-08 | Neuric Technologies, Llc | Method for inclusion of psychological temperament in an electronic emulation of the human brain |
US6107882A (en) | 1997-12-11 | 2000-08-22 | Lucent Technologies Inc. | Amplifier having improved common mode voltage range |
US6960499B2 (en) | 1998-02-24 | 2005-11-01 | Texas Instruments Incorporated | Dual-counterdoped channel field effect transistor and method |
US6313486B1 (en) | 2000-06-15 | 2001-11-06 | Board Of Regents, The University Of Texas System | Floating gate transistor having buried strained silicon germanium channel layer |
US6829598B2 (en) | 2000-10-02 | 2004-12-07 | Texas Instruments Incorporated | Method and apparatus for modeling a neural synapse function by utilizing a single conventional MOSFET |
US6703661B2 (en) | 2001-12-27 | 2004-03-09 | Ching-Yuan Wu | Contactless NOR-type memory array and its fabrication methods |
US6856542B2 (en) * | 2002-06-04 | 2005-02-15 | Stmicroelectronics, Inc. | Programmable logic device circuit and method of fabricating same |
JP4620943B2 (ja) | 2003-10-16 | 2011-01-26 | キヤノン株式会社 | 積和演算回路及びその方法 |
US6937523B2 (en) * | 2003-10-27 | 2005-08-30 | Tower Semiconductor Ltd. | Neighbor effect cancellation in memory array architecture |
US7057216B2 (en) | 2003-10-31 | 2006-06-06 | International Business Machines Corporation | High mobility heterojunction complementary field effect transistors and methods thereof |
US6906940B1 (en) | 2004-02-12 | 2005-06-14 | Macronix International Co., Ltd. | Plane decoding method and device for three dimensional memories |
US20050287793A1 (en) | 2004-06-29 | 2005-12-29 | Micron Technology, Inc. | Diffusion barrier process for routing polysilicon contacts to a metallization layer |
JP2006127623A (ja) | 2004-10-28 | 2006-05-18 | Sony Corp | 半導体記憶装置とそのアクセス方法 |
US7372753B1 (en) | 2006-10-19 | 2008-05-13 | Unity Semiconductor Corporation | Two-cycle sensing in a two-terminal memory array having leakage current |
US8058636B2 (en) | 2007-03-29 | 2011-11-15 | Panasonic Corporation | Variable resistance nonvolatile memory apparatus |
JP2009080892A (ja) | 2007-09-26 | 2009-04-16 | Toshiba Corp | 半導体記憶装置 |
KR20090037690A (ko) | 2007-10-12 | 2009-04-16 | 삼성전자주식회사 | 비휘발성 메모리 소자, 그 동작 방법 및 그 제조 방법 |
US8000151B2 (en) | 2008-01-10 | 2011-08-16 | Micron Technology, Inc. | Semiconductor memory column decoder device and method |
JP5275052B2 (ja) * | 2009-01-08 | 2013-08-28 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US8860124B2 (en) | 2009-01-15 | 2014-10-14 | Macronix International Co., Ltd. | Depletion-mode charge-trapping flash device |
JP5462490B2 (ja) | 2009-01-19 | 2014-04-02 | 株式会社日立製作所 | 半導体記憶装置 |
JP5317742B2 (ja) | 2009-02-06 | 2013-10-16 | 株式会社東芝 | 半導体装置 |
US8203187B2 (en) | 2009-03-03 | 2012-06-19 | Macronix International Co., Ltd. | 3D memory array arranged for FN tunneling program and erase |
TWI433153B (zh) | 2009-08-17 | 2014-04-01 | Ind Tech Res Inst | 記憶體單元之讀取方法 |
US9099181B2 (en) | 2009-08-19 | 2015-08-04 | Grandis, Inc. | Non-volatile static ram cell circuit and timing method |
JP2011065693A (ja) | 2009-09-16 | 2011-03-31 | Toshiba Corp | 不揮発性半導体記憶装置 |
US8275728B2 (en) | 2009-11-05 | 2012-09-25 | The United States Of America As Represented By The Secretary Of The Air Force | Neuromorphic computer |
US8311965B2 (en) | 2009-11-18 | 2012-11-13 | International Business Machines Corporation | Area efficient neuromorphic circuits using field effect transistors (FET) and variable resistance material |
TWI427636B (zh) | 2009-11-27 | 2014-02-21 | Macronix Int Co Ltd | 於一記憶積體電路上進行抹除操作之方法與裝置 |
SG10201700467UA (en) | 2010-02-07 | 2017-02-27 | Zeno Semiconductor Inc | Semiconductor memory device having electrically floating body transistor, and having both volatile and non-volatile functionality and method |
KR101658479B1 (ko) | 2010-02-09 | 2016-09-21 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US8331127B2 (en) | 2010-05-24 | 2012-12-11 | Macronix International Co., Ltd. | Nonvolatile memory device having a transistor connected in parallel with a resistance switching device |
US8547720B2 (en) | 2010-06-08 | 2013-10-01 | Sandisk 3D Llc | Non-volatile memory having 3D array of read/write elements with efficient decoding of vertical bit lines and word lines |
US8890233B2 (en) | 2010-07-06 | 2014-11-18 | Macronix International Co., Ltd. | 3D memory array with improved SSL and BL contact layout |
WO2012015450A1 (en) | 2010-07-30 | 2012-02-02 | Hewlett-Packard Development Company, L.P. | Systems and methods for modeling binary synapses |
US20120044742A1 (en) | 2010-08-20 | 2012-02-23 | Micron Technology, Inc. | Variable resistance memory array architecture |
US8432719B2 (en) | 2011-01-18 | 2013-04-30 | Macronix International Co., Ltd. | Three-dimensional stacked and-type flash memory structure and methods of manufacturing and operating the same hydride |
US8630114B2 (en) | 2011-01-19 | 2014-01-14 | Macronix International Co., Ltd. | Memory architecture of 3D NOR array |
US8759895B2 (en) | 2011-02-25 | 2014-06-24 | Micron Technology, Inc. | Semiconductor charge storage apparatus and methods |
JP2013069356A (ja) | 2011-09-20 | 2013-04-18 | Toshiba Corp | 半導体記憶装置 |
JP5722180B2 (ja) | 2011-09-26 | 2015-05-20 | 株式会社日立製作所 | 不揮発性記憶装置 |
US9698185B2 (en) | 2011-10-13 | 2017-07-04 | Omnivision Technologies, Inc. | Partial buried channel transfer device for image sensors |
US8981445B2 (en) | 2012-02-28 | 2015-03-17 | Texas Instruments Incorporated | Analog floating-gate memory with N-channel and P-channel MOS transistors |
JP5998521B2 (ja) | 2012-02-28 | 2016-09-28 | セイコーエプソン株式会社 | 不揮発性半導体メモリー及び不揮発性半導体メモリーの製造方法 |
US8730724B2 (en) * | 2012-08-07 | 2014-05-20 | Sandisk Technologies Inc. | Common line current for program level determination in flash memory |
JP2014053056A (ja) | 2012-09-06 | 2014-03-20 | Toshiba Corp | 半導体記憶装置 |
WO2014062543A2 (en) | 2012-10-15 | 2014-04-24 | Rambus Inc. | Memory rank and odt configuration in a memory system |
US9019771B2 (en) | 2012-10-26 | 2015-04-28 | Macronix International Co., Ltd. | Dielectric charge trapping memory cells with redundancy |
US20140149773A1 (en) | 2012-11-29 | 2014-05-29 | Agency For Science, Technology And Research | Latch circuit and data processing system |
KR20140113024A (ko) | 2013-03-15 | 2014-09-24 | 에스케이하이닉스 주식회사 | 저항 변화 메모리 장치 및 그 구동방법 |
KR102179899B1 (ko) | 2013-08-05 | 2020-11-18 | 삼성전자주식회사 | 뉴로모픽 시스템 및 그 구현 방법 |
US9502133B2 (en) | 2013-10-11 | 2016-11-22 | Sharp Kabushiki Kaisha | Semiconductor device |
KR102139944B1 (ko) | 2013-11-26 | 2020-08-03 | 삼성전자주식회사 | 3차원 반도체 메모리 장치 |
KR20150070819A (ko) | 2013-12-17 | 2015-06-25 | 에스케이하이닉스 주식회사 | 반도체 메모리 소자 및 그 제조방법 |
US9535831B2 (en) | 2014-01-10 | 2017-01-03 | Advanced Micro Devices, Inc. | Page migration in a 3D stacked hybrid memory |
CN103778468B (zh) | 2014-01-16 | 2016-09-07 | 北京大学 | 一种基于rram的新型神经网络电路 |
US9698156B2 (en) | 2015-03-03 | 2017-07-04 | Macronix International Co., Ltd. | Vertical thin-channel memory |
US9147468B1 (en) | 2014-05-21 | 2015-09-29 | Macronix International Co., Ltd. | Multiple-bit-per-cell, independent double gate, vertical channel memory |
US9391084B2 (en) | 2014-06-19 | 2016-07-12 | Macronix International Co., Ltd. | Bandgap-engineered memory with multiple charge trapping layers storing charge |
US9536969B2 (en) | 2014-09-23 | 2017-01-03 | Taiwan Semiconductor Manufacturing Co., Ltd. | Self-aligned split gate flash memory |
US9607692B2 (en) | 2014-10-03 | 2017-03-28 | Micron Technology, Inc. | Threshold voltage distribution determination |
WO2016060617A1 (en) | 2014-10-15 | 2016-04-21 | Agency For Science, Technology And Research | Flip-flop circuit, method of controlling a flip-flop circuit and memory device |
US9431099B2 (en) | 2014-11-11 | 2016-08-30 | Snu R&Db Foundation | Neuromorphic device with excitatory and inhibitory functionalities |
US9356074B1 (en) | 2014-11-17 | 2016-05-31 | Sandisk Technologies Inc. | Memory array having divided apart bit lines and partially divided bit line selector switches |
KR20160073847A (ko) | 2014-12-17 | 2016-06-27 | 에스케이하이닉스 주식회사 | 전자 장치 및 그 제조 방법 |
KR102396422B1 (ko) | 2015-02-11 | 2022-05-11 | 삼성전자주식회사 | 불휘발성 메모리 및 불휘발성 메모리를 포함하는 스토리지 장치 |
US10403363B2 (en) | 2015-02-11 | 2019-09-03 | Samsung Electronics Co., Ltd. | Nonvolatile memory and storage device including nonvolatile memory |
US9524980B2 (en) | 2015-03-03 | 2016-12-20 | Macronix International Co., Ltd. | U-shaped vertical thin-channel memory |
US9379129B1 (en) | 2015-04-13 | 2016-06-28 | Macronix International Co., Ltd. | Assist gate structures for three-dimensional (3D) vertical gate array memory structure |
KR20160122531A (ko) | 2015-04-14 | 2016-10-24 | 에스케이하이닉스 주식회사 | 전자 장치 |
TWI580087B (zh) | 2015-04-28 | 2017-04-21 | 旺宏電子股份有限公司 | 記憶裝置及其製造方法 |
US10074661B2 (en) | 2015-05-08 | 2018-09-11 | Sandisk Technologies Llc | Three-dimensional junction memory device and method reading thereof using hole current detection |
US9934463B2 (en) | 2015-05-15 | 2018-04-03 | Arizona Board Of Regents On Behalf Of Arizona State University | Neuromorphic computational system(s) using resistive synaptic devices |
US9805303B2 (en) | 2015-05-21 | 2017-10-31 | Google Inc. | Rotating data for neural network computations |
US10438117B1 (en) | 2015-05-21 | 2019-10-08 | Google Llc | Computing convolutions using a neural network processor |
US10049322B2 (en) | 2015-05-21 | 2018-08-14 | Google Llc | Prefetching weights for use in a neural network processor |
KR102445662B1 (ko) | 2015-07-01 | 2022-09-22 | 삼성전자주식회사 | 스토리지 장치 |
CN105718994B (zh) | 2015-07-29 | 2019-02-19 | 上海磁宇信息科技有限公司 | 细胞阵列计算系统 |
KR101701250B1 (ko) | 2015-08-03 | 2017-02-01 | 서울대학교산학협력단 | 딥 빌리프 네트워크를 위한 복수 레이어가 적층된 뉴런 어레이 및 뉴런 어레이 동작 방법 |
KR102311916B1 (ko) | 2015-08-17 | 2021-10-15 | 삼성전자주식회사 | 스토리지 장치 |
US10020317B2 (en) | 2015-08-31 | 2018-07-10 | Cypress Semiconductor Corporation | Memory device with multi-layer channel and charge trapping layer |
US10037167B2 (en) | 2015-09-11 | 2018-07-31 | Sandisk Technologies Llc | Multiple scheduling schemes for handling read requests |
US9589982B1 (en) | 2015-09-15 | 2017-03-07 | Macronix International Co., Ltd. | Structure and method of operation for improved gate capacity for 3D NOR flash memory |
US10157012B2 (en) | 2015-09-29 | 2018-12-18 | Sandisk Technologies Llc | Zero read on trimmed blocks in a non-volatile memory system |
US9892800B2 (en) | 2015-09-30 | 2018-02-13 | Sunrise Memory Corporation | Multi-gate NOR flash thin-film transistor strings arranged in stacked horizontal active strips with vertical control gates |
US9842651B2 (en) | 2015-11-25 | 2017-12-12 | Sunrise Memory Corporation | Three-dimensional vertical NOR flash thin film transistor strings |
US10418369B2 (en) | 2015-10-24 | 2019-09-17 | Monolithic 3D Inc. | Multi-level semiconductor memory device and structure |
TWI571875B (zh) | 2015-10-30 | 2017-02-21 | 華邦電子股份有限公司 | 電阻式記憶體裝置及其寫入方法 |
US9767028B2 (en) | 2015-10-30 | 2017-09-19 | Advanced Micro Devices, Inc. | In-memory interconnect protocol configuration registers |
KR102412781B1 (ko) | 2015-11-03 | 2022-06-24 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 독출 방법 |
JP6867387B2 (ja) | 2015-11-25 | 2021-04-28 | サンライズ メモリー コーポレイション | 3次元垂直norフラッシュ薄膜トランジスタストリング |
US9983829B2 (en) | 2016-01-13 | 2018-05-29 | Sandisk Technologies Llc | Physical addressing schemes for non-volatile memory systems employing multi-die interleave schemes |
SG11201805489YA (en) | 2016-01-18 | 2018-07-30 | Huawei Tech Co Ltd | Memory device, and data processing method based on multi-layer rram crossbar array |
US10725860B2 (en) | 2016-03-04 | 2020-07-28 | Sandisk Technologies Llc | Storage system and method for handling a burst of errors |
CN108701474B (zh) | 2016-03-18 | 2022-12-30 | 株式会社半导体能源研究所 | 半导体装置及使用该半导体装置的系统 |
CN107533459B (zh) | 2016-03-31 | 2020-11-20 | 慧与发展有限责任合伙企业 | 使用电阻存储器阵列的数据处理方法和单元 |
CN105789139B (zh) | 2016-03-31 | 2018-08-28 | 上海新储集成电路有限公司 | 一种神经网络芯片的制备方法 |
JP2017195275A (ja) | 2016-04-20 | 2017-10-26 | 東芝メモリ株式会社 | 半導体記憶装置およびその製造方法 |
KR102508532B1 (ko) | 2016-05-02 | 2023-03-09 | 삼성전자주식회사 | 감지 증폭기 및 이를 포함하는 메모리 장치 |
US11308383B2 (en) | 2016-05-17 | 2022-04-19 | Silicon Storage Technology, Inc. | Deep learning neural network classifier using non-volatile memory array |
CN106530210B (zh) | 2016-10-31 | 2019-09-06 | 北京大学 | 基于阻变存储器件阵列实现并行卷积计算的设备和方法 |
US10649665B2 (en) | 2016-11-08 | 2020-05-12 | Micron Technology, Inc. | Data relocation in hybrid memory |
US10733505B2 (en) | 2016-11-10 | 2020-08-04 | Google Llc | Performing kernel striding in hardware |
US10725777B2 (en) | 2016-12-06 | 2020-07-28 | Gsi Technology, Inc. | Computational memory cell and processing array device using memory cells |
US10985777B2 (en) | 2016-12-09 | 2021-04-20 | William Marsh Rice University | Signal recovery via deep convolutional networks |
US10296224B2 (en) | 2016-12-21 | 2019-05-21 | Intel Corporation | Apparatus, system and method for increasing the capacity of a storage device available to store user data |
US10360499B2 (en) | 2017-02-28 | 2019-07-23 | Anixa Diagnostics Corporation | Methods for using artificial neural network analysis on flow cytometry data for cancer diagnosis |
US10269824B2 (en) | 2017-04-01 | 2019-04-23 | Intel Corporation | Non-volatile memory structures having multi-layer conductive channels |
WO2018189619A1 (ja) | 2017-04-10 | 2018-10-18 | 株式会社半導体エネルギー研究所 | 半導体装置、電子部品、及び電子機器 |
US20210019609A1 (en) | 2017-04-27 | 2021-01-21 | The Regents Of The University Of California | Mixed signal neuromorphic computing with nonvolatile memory devices |
US10460817B2 (en) | 2017-07-13 | 2019-10-29 | Qualcomm Incorporated | Multiple (multi-) level cell (MLC) non-volatile (NV) memory (NVM) matrix circuits for performing matrix computations with multi-bit input vectors |
US10482929B2 (en) * | 2017-07-13 | 2019-11-19 | Qualcomm Incorporated | Non-volative (NV) memory (NVM) matrix circuits employing NVM matrix circuits for performing matrix computations |
US10790828B1 (en) * | 2017-07-21 | 2020-09-29 | X Development Llc | Application specific integrated circuit accelerators |
JP2019028569A (ja) | 2017-07-26 | 2019-02-21 | 株式会社東芝 | メモリシステム、半導体記憶装置及び信号処理システム |
US10073733B1 (en) | 2017-09-01 | 2018-09-11 | Purdue Research Foundation | System and method for in-memory computing |
US10580492B2 (en) | 2017-09-15 | 2020-03-03 | Silicon Storage Technology, Inc. | System and method for implementing configurable convoluted neural networks with flash memories |
US11410028B2 (en) | 2017-09-20 | 2022-08-09 | Look Dynamics, Inc. | Photonic neural network system |
US11521046B2 (en) | 2017-11-08 | 2022-12-06 | Samsung Electronics Co., Ltd. | Time-delayed convolutions for neural network device and method |
US10777566B2 (en) | 2017-11-10 | 2020-09-15 | Macronix International Co., Ltd. | 3D array arranged for memory and in-memory sum-of-products operations |
US11361215B2 (en) | 2017-11-29 | 2022-06-14 | Anaflash Inc. | Neural network circuits having non-volatile synapse arrays |
US10748630B2 (en) | 2017-11-29 | 2020-08-18 | Silicon Storage Technology, Inc. | High precision and highly efficient tuning mechanisms and algorithms for analog neuromorphic memory in artificial neural networks |
US10552510B2 (en) | 2018-01-11 | 2020-02-04 | Mentium Technologies Inc. | Vector-by-matrix multiplier modules based on non-volatile 2D and 3D memory arrays |
US10957392B2 (en) | 2018-01-17 | 2021-03-23 | Macronix International Co., Ltd. | 2D and 3D sum-of-products array for neuromorphic computing system |
US20190244662A1 (en) | 2018-02-02 | 2019-08-08 | Macronix International Co., Ltd. | Sum-of-products array for neuromorphic computing system |
US10719296B2 (en) | 2018-01-17 | 2020-07-21 | Macronix International Co., Ltd. | Sum-of-products accelerator array |
US10242737B1 (en) | 2018-02-13 | 2019-03-26 | Macronix International Co., Ltd. | Device structure for neuromorphic computing system |
US10635398B2 (en) | 2018-03-15 | 2020-04-28 | Macronix International Co., Ltd. | Voltage sensing type of matrix multiplication method for neuromorphic computing system |
JP6721136B2 (ja) | 2018-03-16 | 2020-07-08 | Tdk株式会社 | 積和演算器、ニューロモーフィックデバイスおよび積和演算器の使用方法 |
US11188814B2 (en) | 2018-04-05 | 2021-11-30 | Arm Limited | Systolic convolutional neural network |
US20190311749A1 (en) | 2018-04-09 | 2019-10-10 | Anaflash Inc. | Logic Compatible Embedded Flash Memory |
US10741246B2 (en) | 2018-04-23 | 2020-08-11 | Arm Limited | Method, system and device for integration of volatile and non-volatile memory bitcells |
WO2019212466A1 (en) | 2018-04-30 | 2019-11-07 | Hewlett Packard Enterprise Development Lp | Resistive and digital processing cores |
US20190363131A1 (en) | 2018-05-25 | 2019-11-28 | Gyrfalcon Technology Inc. | Memory architecture having different type of memory devices and logic circuit disposed over a semiconductor substrate |
US11461621B2 (en) | 2018-06-26 | 2022-10-04 | Vishal Sarin | Methods and systems of implementing positive and negative neurons in a neural array-based flash memory |
JP7070190B2 (ja) | 2018-07-18 | 2022-05-18 | 株式会社デンソー | ニューラルネットワーク回路 |
US10528643B1 (en) | 2018-08-01 | 2020-01-07 | Sandisk Technologies Llc | Vector-matrix multiplication using non-volatile memory cells |
US10534840B1 (en) | 2018-08-08 | 2020-01-14 | Sandisk Technologies Llc | Multiplication using non-volatile memory cells |
US10860918B2 (en) | 2018-08-21 | 2020-12-08 | Silicon Storage Technology, Inc. | Analog neural memory system for deep learning neural network comprising multiple vector-by-matrix multiplication arrays and shared components |
US10877752B2 (en) | 2018-09-28 | 2020-12-29 | Intel Corporation | Techniques for current-sensing circuit design for compute-in-memory |
US10831446B2 (en) | 2018-09-28 | 2020-11-10 | Intel Corporation | Digital bit-serial multi-multiply-and-accumulate compute in memory |
US10748603B2 (en) | 2018-09-28 | 2020-08-18 | Intel Corporation | In-memory multiply and accumulate with global charge-sharing |
US10642922B2 (en) | 2018-09-28 | 2020-05-05 | Intel Corporation | Binary, ternary and bit serial compute-in-memory circuits |
US11574694B2 (en) | 2018-10-11 | 2023-02-07 | International Business Machines Corporation | Kernel sets normalization with capacitor charge sharing |
US20200117986A1 (en) | 2018-10-12 | 2020-04-16 | International Business Machines Corporation | Efficient processing of convolutional neural network layers using analog-memory-based hardware |
US10643713B1 (en) | 2019-02-08 | 2020-05-05 | Sandisk Technologies Llc | Toggling power supply for faster bit line settling during sensing |
US10825510B2 (en) | 2019-02-09 | 2020-11-03 | Purdue Research Foundation | Multi-bit dot product engine |
US10783963B1 (en) | 2019-03-08 | 2020-09-22 | Macronix International Co., Ltd. | In-memory computation device with inter-page and intra-page data circuits |
-
2019
- 2019-07-10 US US16/508,189 patent/US11934480B2/en active Active
- 2019-07-31 KR KR1020190093404A patent/KR20200076571A/ko not_active Application Discontinuation
- 2019-08-23 EP EP19193290.4A patent/EP3671433A1/en active Pending
- 2019-09-13 JP JP2019166959A patent/JP7041654B2/ja active Active
- 2019-10-08 TW TW108136445A patent/TWI757645B/zh active
- 2019-10-15 CN CN201910977183.5A patent/CN111338601B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101432821A (zh) * | 2006-05-04 | 2009-05-13 | 美光科技公司 | 模仿存储器装置中的编程验证漏极电阻 |
US20080013382A1 (en) * | 2006-07-14 | 2008-01-17 | Micron Technology, Inc. | Current sensing for flash |
US9430735B1 (en) * | 2012-02-23 | 2016-08-30 | Micron Technology, Inc. | Neural network in a memory device |
US20160358661A1 (en) * | 2012-02-23 | 2016-12-08 | Micron Technology, Inc. | Methods of operating memory |
CN107077879A (zh) * | 2014-10-20 | 2017-08-18 | 美光科技公司 | 用于经划分的sgs线的设备及方法 |
CN107767905A (zh) * | 2016-08-19 | 2018-03-06 | 美光科技公司 | 分段式存储器及操作 |
US20180102177A1 (en) * | 2016-10-11 | 2018-04-12 | Macronix International Co., Ltd. | 3d memory with staged-level multibit programming |
US20180144240A1 (en) * | 2016-11-21 | 2018-05-24 | Imec Vzw | Semiconductor cell configured to perform logic operations |
CN108268946A (zh) * | 2016-12-31 | 2018-07-10 | 上海兆芯集成电路有限公司 | 具有阵列宽度可分段之旋转器之神经网络单元 |
Non-Patent Citations (1)
Title |
---|
商丽卫;刘耀军;: "FSATA乘法器的设计与实现", 微型机与应用, no. 13, pages 87 - 92 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114139691A (zh) * | 2020-09-03 | 2022-03-04 | 旺宏电子股份有限公司 | 三维nand人工智能加速器的辨识方法与控制电路 |
CN112153139A (zh) * | 2020-09-23 | 2020-12-29 | 成都市深思创芯科技有限公司 | 基于传感器网络和存内计算神经网络的控制系统及方法 |
CN112153139B (zh) * | 2020-09-23 | 2022-06-14 | 成都市深思创芯科技有限公司 | 基于传感器网络和存内计算神经网络的控制系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3671433A1 (en) | 2020-06-24 |
KR20200076571A (ko) | 2020-06-29 |
TW202024898A (zh) | 2020-07-01 |
JP2020098658A (ja) | 2020-06-25 |
US20200192971A1 (en) | 2020-06-18 |
JP7041654B2 (ja) | 2022-03-24 |
US11934480B2 (en) | 2024-03-19 |
TWI757645B (zh) | 2022-03-11 |
CN111338601B (zh) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111338601B (zh) | 用于存储器内乘法及累加运算的电路及其方法 | |
US11568200B2 (en) | Accelerating sparse matrix multiplication in storage class memory-based convolutional neural network inference | |
US11507808B2 (en) | Multi-layer vector-matrix multiplication apparatus for a deep neural network | |
US10971230B2 (en) | Nonvolatile memory device and method of processing in memory (PIM) using the same | |
US20200034697A1 (en) | Realization of binary neural networks in nand memory arrays | |
CN108008974A (zh) | 基于动态随机存取存储器的处理单元架构 | |
US20210397931A1 (en) | Recurrent neural network inference engine with gated recurrent unit cell and non-volatile memory arrays | |
CN110729011B (zh) | 用于类神经网路的存储器内运算装置 | |
WO2022006733A1 (en) | Apparatus and method for matrix multiplication using processing-in-memory | |
US11397885B2 (en) | Vertical mapping and computing for deep neural networks in non-volatile memory | |
US10783963B1 (en) | In-memory computation device with inter-page and intra-page data circuits | |
Liu et al. | Era-bs: Boosting the efficiency of reram-based pim accelerator with fine-grained bit-level sparsity | |
US12079733B2 (en) | Multi-precision digital compute-in-memory deep neural network engine for flexible and energy efficient inferencing | |
US20210406672A1 (en) | Compute-in-memory deep neural network inference engine using low-rank approximation technique | |
CN114171087A (zh) | 忆阻器阵列结构及其操作方法、神经网络稀疏化装置 | |
US11081182B2 (en) | Integrated circuit and computing method thereof | |
Sun et al. | Reliability-Aware Training and Performance Modeling for Processing-In-Memory Systems | |
CN113362880B (zh) | 存储器系统及其操作方法 | |
US12094568B2 (en) | Content addressable memory for large search words | |
CN117271435B (zh) | 基于忆阻器的存内逻辑电路及全阵列并行计算方法 | |
CN111611196B (zh) | 一种存算一体芯片及其dac复用控制方法 |
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 |