CN110914906A - 用于执行具有多位输入矢量的矩阵计算的多级单元(mlc)非易失性(nv)存储器(nvm)矩阵电路 - Google Patents

用于执行具有多位输入矢量的矩阵计算的多级单元(mlc)非易失性(nv)存储器(nvm)矩阵电路 Download PDF

Info

Publication number
CN110914906A
CN110914906A CN201880045785.0A CN201880045785A CN110914906A CN 110914906 A CN110914906 A CN 110914906A CN 201880045785 A CN201880045785 A CN 201880045785A CN 110914906 A CN110914906 A CN 110914906A
Authority
CN
China
Prior art keywords
nvm
circuit
mlc
circuits
bit
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
CN201880045785.0A
Other languages
English (en)
Other versions
CN110914906B (zh
Inventor
李夏
康相赫
W-C·陈
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN110914906A publication Critical patent/CN110914906A/zh
Application granted granted Critical
Publication of CN110914906B publication Critical patent/CN110914906B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3468Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
    • G11C16/3481Circuits or methods to verify correct programming of nonvolatile memory cells whilst programming is in progress, e.g. by detecting onset or cessation of current flow in cells and using the detector output to terminate programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1653Address circuits or decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/22Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
    • G11C11/223Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements using MOS with ferroelectric gate insulating film
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital 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/5621Digital 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/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0023Address circuits or decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
    • G11C14/0054Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a SRAM cell
    • G11C14/0063Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a SRAM cell and the nonvolatile element is an EEPROM element, e.g. a floating gate or MNOS transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0466Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells with charge storage in an insulating layer, e.g. metal-nitride-oxide-silicon [MNOS], silicon-oxide-nitride-oxide-silicon [SONOS]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • G11C5/063Voltage and signal distribution in integrated semi-conductor memory access lines, e.g. word-line, bit-line, cross-over resistance, propagation delay
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/66Types of semiconductor device ; Multistep manufacturing processes therefor
    • H01L29/68Types of semiconductor device ; Multistep manufacturing processes therefor controllable by only the electric current supplied, or only the electric potential applied, to an electrode which does not carry the current to be rectified, amplified or switched
    • H01L29/76Unipolar devices, e.g. field effect transistors
    • H01L29/772Field effect transistors
    • H01L29/78Field effect transistors with field effect produced by an insulated gate
    • H01L29/792Field effect transistors with field effect produced by an insulated gate with charge trapping gate insulator, e.g. MNOS-memory transistors
    • H01L29/7923Programmable transistors with more than two possible different levels of programmation
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B12/00Dynamic random access memory [DRAM] devices
    • H10B12/30DRAM devices comprising one-transistor - one-capacitor [1T-1C] memory cells
    • H10B12/36DRAM devices comprising one-transistor - one-capacitor [1T-1C] memory cells the transistor being a FinFET
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10NELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10N70/00Solid-state devices having no potential barriers, and specially adapted for rectifying, amplifying, oscillating or switching
    • H10N70/20Multistable switching devices, e.g. memristors
    • H10N70/24Multistable switching devices, e.g. memristors based on migration or redistribution of ionic species, e.g. anions, vacancies
    • H10N70/245Multistable switching devices, e.g. memristors based on migration or redistribution of ionic species, e.g. anions, vacancies the species being metal cations, e.g. programmable metallization cells
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10NELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10N70/00Solid-state devices having no potential barriers, and specially adapted for rectifying, amplifying, oscillating or switching
    • H10N70/801Constructional details of multistable switching devices
    • H10N70/821Device geometry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/18Bit line organisation; Bit line lay-out
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/14Word line organisation; Word line lay-out
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Power Engineering (AREA)
  • Ceramic Engineering (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Read Only Memory (AREA)

Abstract

公开了用于执行具有多位输入矢量的矩阵计算的多级单元(MLC)非易失性(NV)存储器(NVM)矩阵电路。MLC NVM矩阵电路包括多个NVM存储串电路,每个NVM存储串电路包括多个MLC NVM存储电路,每个MLC NVM存储电路包括多个NVM位单元电路,每个NVM位单元电路被配置为存储1位存储器状态。因此,每个MLC NVM存储电路根据其相应NVM位单元电路的存储器状态来存储多位存储器状态。每个NVM位单元电路包括晶体管,该晶体管的栅极节点被耦合到被配置为接收输入矢量的多个字线中的字线。MLC NVM存储电路中的给定NVM位单元电路的栅极节点的激活控制其电阻是否对耦合到相应源极线的MLC NVM存储电路的总电阻做出贡献。

Description

用于执行具有多位输入矢量的矩阵计算的多级单元(MLC)非 易失性(NV)存储器(NVM)矩阵电路
优先权申请
本申请要求于2017年11月20日提交的题为“MULTIPLE(MULTI-)LEVEL CELL(MLC)NON-VOLATILE(NV)MEMORY(NVM)MATRIX CIRCUITS FOR PERFORMING MATRIX COMPUTATIONSWITH MULTI-BIT INPUT VECTORS”的美国专利申请序列号15/817,474的优先权,该申请要求于2017年7月13日提交的题为“MULTI-LEVEL CELL(MLC)MATRIX MEMORY CIRCUITSEMPLOYING NON-VOLATILE(NV)MLC MEMORY CIRCUITS FOR PERFORMING MATRIXCOMPUTATIONS”的美国临时专利申请序列号62/531,924的优先权,这些申请的内容通过引用整体合并于此。
相关申请
本申请涉及于2017年7月13日提交的题为“MATRIX MEMORY CIRCUITS EMPLOYINGNON-VOLATILE(NV)MEMORY CIRCUITS FOR PERFORMING MATRIX COMPUTATIONS”的美国临时专利申请序列号62/531,921,其通过引用整体合并于此。
本申请还涉及于2017年11月20日提交的题为“NON-VOLATILE(NV)MEMORY(NVM)MATRIX CIRCUITS EMPLOYING NVM MATRIX CIRCUITS FOR PERFORMING MATRIXCOMPUTATIONS”的美国专利申请序列号15/817,441,其通过引用整体合并于此。
技术领域
本公开的技术总体上涉及生物网络的计算机化,并且更具体地涉及突触网络的电路网络实现,以提供具有人工智能(AI)学习的矩阵乘法。
背景技术
生物网络是适用于生物系统的网络。例如,人类的生物循环系统具有通过血管将血液泵送和引导到身体、肺部和心脏的功能。细胞内生物网络的网络表示通常将细胞内的分子成分视为节点,并且将其直接或间接相互作用视为链路。对生物网络的认识已经激发了各种神经形态计算系统的发展,这些系统的架构反映神经系统的一般组织原理,以力图部分地再现生物计算在某些问题中表现出的巨大的效率优势。这些神经形态系统被组织为具有可配置的突触连接的兴奋性和抑制性突触神经元(即,神经细胞,其是传递神经冲动的特殊细胞)。突触可塑性在允许神经网络学习并且适应各种输入环境中起着至关重要的作用。因此,在计算机网络中实现的神经形态系统需要在电路中实现塑性突触,以获取诸如学习等基本“认知”能力。
在生物神经网络中,突触在数量上超出神经元几个数量级。在神经形态电子电路中再现这些生物学特征提出了缩放问题,因为每个神经元集成成千上万的专用突触电路对于需要大量神经元的电路系统可能很快变得不可行。传统上,计算机网络中的缩放问题是通过将突触视为简单的线性元件并且将来自很多前突触源的尖峰时分复用到同一线性电路上,或者通过将它们视为可以外部设置为打开或关闭的、没有学习能力的基本二进制元件来解决的。然而,真实的突触表现出非线性现象,如依赖于尖峰时间的可塑性(STDP),STDP基于前突触和后突触神经元的活动来调节单个突触的权重。通过可塑性调节突触权重已经显图示极大地增加了神经网络可以执行的计算范围。
捕获模拟神经形态硬件中的真实突触的可塑性属性需要针对每个突触使用不同的物理电路/元件。在常规的互补金属氧化物半导体(CMOS)电路技术中,这可能导致可扩展性受到限制。纯CMOS技术中的可扩展性问题的一些潜在的解决方案包括使用超大型集成结构或采用深亚微米技术。例如,STDP规则的微芯片CMOS电路实现可以导致每个塑料突触大约三十(30)个晶体管,并且因此可能导致其硬件实现成本高昂。总的来说,人们普遍认为STDP在常规CMOS微芯片中实现起来非常昂贵。但是,如果人们诉诸可以再现真实突触的可塑性属性的紧凑型纳米级电路元件,则可扩展性限制可以大大放宽。这些元件的一个潜在候选是忆阻器。忆阻器是一种行为有点像带有存储器的非线性电阻器的元件。在神经形态社区中,忆阻器被视为突触实现的理想器件,因为它们在一个器件中结合了三(3)个关键功能。忆阻器是与电荷和磁通链相关的非线性的无源的两端电子器件。忆阻器的电阻不是恒定的,而是取决于先前流过该器件的电流的历史。也就是说,它的当前电阻取决于过去有多少电荷沿什么方向流过它。因此,忆阻器器件会记住其历史,这被称为其非易失性属性。当忆阻器的电源关闭时,忆阻器会记住其最近的电阻,直到再次开启。忆阻器可以实现生物学上逼真的突触权重更新(即,学习),可以进行长期的多值权重存储,还可以将加权的前突触活动传送给后突触侧,从而大大放宽了可扩展性限制。
如果在混合CMOS/忆阻器实现中使用适当的外围信号调节神经元,则STDP可以利用每个突触仅一(1)个忆阻器来实现。通常,通过将特定波形施加到忆阻器的两(2)个端子来诱发这些忆阻器突触的可塑性,其中该波形分别对应于后突触脉冲。跨忆阻器的波形的相关性又实现了类STDP的可塑性,其形式为由所施加的波形定义的STDP曲线。通常选择基于基本STDP机制的可塑性的硬件和软件模型,主要是因为它们的简单性。
在这点上,图1A图示了作为交叉网络的矩阵网络电路100,其包括用于STDP学习的忆阻器和CMOS电路神经元的互连方式。矩阵网络电路100包括第一电阻随机存取存储器(RRAM)交叉网络102A和第二RRAM交叉网络102B。第一RRAM交叉网络102A和第二RRAM交叉网络102B中的每个在相应突触接合点106A、106B处包括相应忆阻器104A、104B,每个突触接合点表示单独的突触。CMOS缓冲门108A、108B、108C表示三(3)层神经元,被称为CMOS电路神经元108A、108B、108C。图1B图示了通过控制第一RRAM交叉网络102A和第二RRAM交叉网络102B而形成的用于后突触CMOS电路神经元108的突触连接。CMOS电路神经元108的平坦侧是其输入节点110(即,树突),而CMOS电路神经元108的尖锐侧是其输出节点112(即,轴突)。CMOS电路神经元108控制其输入节点110处的电压Vpost和其输出节点112处的电压Vpre。当CMOS电路神经元108不产生尖峰时,它在输入节点110和输出节点112两者处施加恒定电压,同时通过其输入节点110收集来自忆阻器104A、104B的输入突触尖峰电流I1、I2的总和,这有助于改变神经元内部状态。当CMOS电路神经元108产生尖峰时,它会在输入和输出节点110、112处设置单尖峰波形。以这种方式,CMOS电路神经元108将其输出尖峰作为前突触尖峰向前发送到目的地突触忆阻器,但是也作为后突触尖峰向后发送到先前的突触忆阻器。
采用忆阻器网络来提供突触的神经网络也可以用于需要加权矩阵乘法计算的其他应用中,例如卷积。例如,图2A图示了具有前神经元电路204(1)-204(m)的前神经元层202和后神经元电路208(1)-208(n)的后神经元层206的忆阻器交叉突触矩阵200。可以在前神经元电路204(1)-204(m)与后神经元电路208(1)-208(m)之间提供突触。可能需要将每个前神经元电路204(1)-204(m)的状态与每个后神经元电路208(1)-208(n)的状态相乘的相加以提供加速加权总和和权重更新。例如,图2B图示了图2A中的忆阻器交叉突触矩阵200的忆阻器交叉矩阵电路212。忆阻器交叉矩阵电路212包括具有可以形成相应突触210(1)(1)-210(m)(n)的忆阻器216(1)(1)-216(m)(n)的行R1-Rm和列C1-Cn的RRAM交叉阵列电路214。忆阻器216(1)(1)-216(m)(n)被配置为存储m×n矩阵的存储器状态。输入电压V1-Vm可以是1×m的输入矢量。可能需要将输入矢量乘以由忆阻器216(1)(1)-216(m)(n)提供的m×n矩阵。每列C1-Cn中的忆阻器216(1)(1)-216(m)(n)彼此并联耦合。因此,RRAM交叉阵列电路214的电导表示忆阻器交叉矩阵电路212的权重。电流I1-In的个体总和表示忆阻器216()(1)-216()(n)的所选择的列C1-Cn的权重(即,电导)乘以由输入电压V1-Vm表示的前神经元电路204(1)-204(m)的状态。例如,根据以下公式,当选择列C1时,电流I1是来自所选择的行R1-Rm中的前神经元电路204(1)-204(m)的每个输入电压V1-Vm乘以相应忆阻器216(1)(1)-216(m)(1)的电导的总和:
Figure BDA0002360030090000051
其中:
i=R1-Rm行;以及
j=C1-Cn列。
因此,电流I1是忆阻器216(1)(1)的电导乘以输入电压V1,加上忆阻器216(1)(2)的电导乘以输入电压V2、……、加上忆阻器216(1)(m)的电导乘乘以输入电压Vm的总和。忆阻器交叉矩阵电路212的权重(即,每个忆阻器216(1)(1)-216(m)(n)的电导)被更新,以基于反向施加到前神经元电路204(1)-204(m)的先前输入电压V1-Vm的后神经元电路208(1)-208(n)中的每个的输出电压来提供训练。
图2B中的忆阻器交叉矩阵电路212具有潜行路径电流问题。潜行路径电流是从寻址行R1-Rm流向相邻行R1-Rm的电流。例如,假定选择交叉突触加权矩阵电路214中的列C1。电流在C1列中流动,不仅流经C1列中的所选择的忆阻器216(1)(1)-216(m)(1)流向后神经元电路208(1),而且潜行电流也流回到前神经元电路204(1)中。可能无法区分潜行电流,从而导致忆阻器交叉矩阵电路212的权重的错误更新。此外,诸如忆阻器等RRAM技术可能不具有高度可重复的电阻,从而导致保留问题,从而导致不正确的计算。RRAM技术的耐用性也可能受到限制。
发明内容
在详细描述中公开的各方面包括用于执行具有多位输入矢量的矩阵计算的多级单元(MLC)非易失性(NV)存储器(NVM)矩阵电路。在本文中公开的示例性方面,提供了一种MLC NVM矩阵电路,该MLC NVM矩阵电路包括组织在相应存储器行中的多个NVM存储串电路。每个NVM存储串电路包括多个MLC NVM存储电路。因此,每个与NVM存储串电路相关联的多个MLC NVM存储电路在MLC NVM矩阵电路的相应存储器行和列中被布置和可寻址。每个MLCNVM存储电路包括多个NVM位单元电路,每个NVM位单元电路被配置为存储1位相应存储器状态。给定MLC NVM存储电路中的NVM位单元电路的相应存储器状态在MLC NVM存储电路中提供多位存储器状态。因此,例如,MLC NVM矩阵电路可以形成m×n的MLC NVM矩阵电路,其中“m”表示所提供的NVM存储串电路的存储器行数,而“n”表示相应存储器列中提供的每个NVM存储串电路内的MLC NVM存储电路数。每个MLC NVM存储电路根据其相应MLC NVM存储电路中的NVM位单元电路的个体的所存储的存储器状态来存储多位存储器状态。提供多个位线,每个位线被配置为耦合到相应NVM存储串电路。提供多个源极线,每个源极线被配置为耦合到相应NVM存储串电路。每个MLC NVM存储电路具有多个由其NVM位单元电路的电阻表示的所存储的存储器状态。每个MLC NVM存储电路与其相应存储器行中的其他MLC NVM存储电路一起耦合到相应源极线。每个NVM位单元电路包括晶体管,该晶体管的栅极节点耦合到被配置为接收例如1×n大小的多位输入矢量的多个字线中的相应字线。输入矢量中的每个条目表示多位输入,该多位输入被配置为耦合到m×n个字线,该m×n个字线耦合到相应MLC NVM存储电路中的NVM位单元电路的相应栅极节点并且控制给定NVM位单元电路的电阻是否对其相应MLC NVM存储电路的整体电阻做出贡献。例如,输入矢量可以是例如前突触加权矢量。每个源极线耦合到相应输出节点,其中所有NVM存储串电路的源极线可以共同提供输出矢量。例如,输出矢量可以是后突触矢量。
为了将1×n大小的多位输入矢量乘以由多个NVM存储串电路形成的m×n的MLCNVM矩阵电路,线电压被施加到NVM存储串电路的位线,同时表示输入矢量的输入电压被施加到n×m个字线,以被施加到相应MLC NVM存储电路中的NVM位单元电路的相应栅极节点。这导致基于每个MLC NVM存储电路总电阻(基于其相应NVM位单元电路的个体电阻)对其相应源极线的加权求和贡献,在每个源极线上生成求和电流。每个输出节点形成输出矢量,该矢量是1×n个多位输入矢量乘以m×n的MLC NVM矩阵电路的一(1)个列n的结果。通过包括耦合到字线的晶体管的MLC NVM存储电路的NVM位单元电路(该晶体管控制由其相应NVM存储串电路在其相应源极线上贡献的电阻),不必提供字线与位线之间的交叉连接,这可以避免在MLC NVM矩阵电路中产生潜行路径电流。字线和位线通过其相应MLC NVM存储电路的NVM位单元电路彼此隔离。
在这点上,在一个示例性方面,提供了一种MLC NVM矩阵电路,其包括:多个字线,被配置为接收由多个字线中的每个字线上的输入电压表示的多位输入矢量;多个位线,多个位线中的每个位线被配置为接收对应的线电压;多个源极线;以及多个NVM存储串电路。多个NVM存储串电路中的每个NVM存储串电路被配置为电耦合在多个位线中的对应位线与多个源极线中的对应源极线之间,每个NVM存储串电路包括多个MLC NVM存储电路。多个MLCNVM存储电路中的每个MLC NVM存储电路包括多个NVM位单元电路,每个NVM位单元电路被配置为存储对应MLC NVM存储电路的相应存储器状态。相应MLC NVM存储电路中的多个NVM位单元电路中的每个NVM位单元电路具有表示所存储的存储器状态的电阻,并且包括耦合到多个字线中的对应字线的栅极节点。每个NVM位单元电路被配置为:响应于施加到耦合到栅极节点的对应字线的输入电压,将其电阻耦合到多个源极线中耦合到其相应MLC NVM存储电路的源极线。
在另一方面,提供了一种MLC NVM矩阵电路,其包括:用于施加表示多位输入矢量的多个输入电压的多个装置;用于施加多个线电压的多个装置;用于提供表示输出矢量的多个输出电流的多个装置;以及多个NVM存储串装置。多个NVM存储串装置中的每个电耦合到用于施加多个输入电压的多个装置中的对应的用于施加输入电压的装置和用于提供多个输出电流的多个装置中的对应的用于提供输出电流的装置。多个NVM存储串装置中的每个包括用于存储多位存储器状态的多个MLC NV装置,并且每个具有表示所存储的多位存储器状态的电阻以形成用于多个NVM存储串装置中的对应NVM存储串装置的数据矢量。用于存储多位存储器状态的多个MLC NV装置中的每个包括用于将用于存储1位存储器状态的多个NV位装置的电阻电耦合到用于提供多个输出电流的多个装置中的用于提供输出电流的装置的装置、以及用于控制用于存储1位存储器状态的多个NV位装置的电阻到用于提供多个输出电流的多个装置中的用于提供输出电流的装置的耦合的装置。
在另一方面,提供了一种在MLC NVM矩阵电路中执行矩阵乘法的方法。该方法包括:在耦合到多个NVM存储串电路中的对应NVM存储串电路的多个位线中的至少一个位线上施加线电压,以将线电压电耦合到耦合到多个位线中的对应位线的对应NVM存储串电路。多个NVM存储串电路中的每个NVM存储串电路包括多个MLC NVM存储电路,每个MLC NVM存储电路具有表示MLC NVM存储电路中的所存储的多位存储器状态的电阻以形成用于对应NVM存储串电路的数据矢量。该方法还包括在耦合到多个NVM存储串电路中的相应NVM存储串电路的多个源极线中的至少一个源极线上施加第二线电压,以将第二线电压电耦合到耦合到多个源极线中的对应源极线的对应NVM存储器串电路。该方法还包括在多个字线上施加表示多位输入矢量的多个输入电压。多个字线中的每个字线耦合到每个NVM存储串电路中的多个MLC NVM存储电路中的每个MLC NVM存储电路中的多个NVM位单元电路中的NVM位单元电路的对应栅极节点,以将MLC NVM存储电路电耦合到源极线以将MLC NVM存储电路的电阻耦合到源极线。
在另一方面,提供了一种MLC NVM矩阵系统,其包括第一MLC NCM矩阵电路和第二MLC NVM矩阵电路。第一MLC NVM矩阵电路包括:多个第一字线,被配置为接收由多个第一字线中的每个第一字线上的第一输入电压表示的第一多位输入矢量;多个第一位线,其中多个第一位线中的每个第一位线被配置为接收对应的第一线电压;多个第一源极线,每个第一源极线耦合到多个第一输出节点中的第一输出节点;以及多个第一NVM存储串电路。多个第一NVM存储串电路中的每个第一NVM存储串电路被配置为电耦合在多个第一位线中的对应第一位线与多个第一源极线中的对应第一源极线之间,每个第一NVM存储串电路包括多个第一MLC NVM存储电路。多个第一MLC NVM存储电路中的每个第一MLC NVM存储电路包括多个第一NVM位单元电路,每个第一NVM位单元电路被配置为存储对应的第一MLC NVM存储电路的相应存储器状态。相应第一MLC NVM存储电路中的多个第一NVM位单元电路中的每个第一NVM位单元电路具有表示所存储的存储器状态的电阻,并且包括耦合到多个第一字线中的对应第一字线的第一栅极节点。每个第一NVM位单元电路被配置为响应于施加到耦合到第一栅极节点的对应第一字线的输入电压而将其电阻耦合到耦合到耦合到其相应第一MLC NVM存储电路的第一源极线。第二MLC NVM矩阵电路包括:多个第二字线,每个第二字线耦合到多个第一输出节点中的输出节点;多个第二位线,其中多个第二位线中的每个第二位线被配置为接收对应的第二线电压;多个第二源极线,每个第二源极线耦合到多个第二输出节点中的第二输出节点;以及多个第二NVM存储串电路。多个第二NVM存储串电路中的每个第二NVM存储串电路被配置为电耦合在多个第二位线中的对应第二位线与多个第二源极线中的对应第二源极线之间,每个第二NVM存储串电路包括多个第二MLC NVM存储电路。多个第二MLC NVM存储电路中的每个第二MLC NVM存储电路包括多个第二NVM位单元电路,每个第二NVM位单元电路被配置为存储对应的第二MLC NVM存储电路的相应存储器状态。相应第二MLC NVM存储电路中的多个第二NVM位单元电路中的每个第二NVM位单元电路具有表示所存储的存储器状态的电阻,并且包括耦合到多个第二字线中的对应第二字线的第二栅极节点。每个第二NVM位单元电路被配置为响应于施加到耦合到第二栅极节点的对应第二字线的输入电压而将其电阻耦合到耦合到其相应第二MLC NVM存储电路的第二源极线。
附图说明
图1A是采用忆阻器网络来为互补金属氧化物半导体(CMOS)电路神经元提供突触的示例性矩阵网络电路;
图1B图示了用于图1A的矩阵网络电路中的后突触CMOS电路神经元的示例性突触连接;
图2A图示了示例性忆阻器交叉矩阵电路;
图2B图示了采用RRAM交叉阵列电路的示例性忆阻器交叉矩阵电路;
图3A是不需要交叉连接的示例性非易失性(NV)存储器(NVM)矩阵电路的示意图,该NVM矩阵电路采用NAND NVM闪存电路形式的NVM存储串电路,每个NAND NVM闪存电路包括多个用于执行矩阵计算的NVM闪存位单元电路;
图3B是可以是图3A中的NVM矩阵电路中的NVM位单元电路的的示例性二维(2D)NAND NVM闪存电路的示意图;
图4A图示了图3A中的NVM矩阵电路中的示例性逻辑“0”写入操作;
图4B图示了图3A中的NVM矩阵电路中的示例性逻辑“1”写入操作;
图5图示了图3A中的NVM矩阵电路中的示例性读取操作;
图6A图示了图3A中的NVM矩阵电路中的另一示例性逻辑“0”写入操作;
图6B图示了图3A中的NVM矩阵电路中的另一示例性逻辑“1”写入操作;
图7A图示了图3A中的NVM矩阵电路中的另一示例性逻辑“0”写入操作;
图7B图示了图3A中的NVM矩阵电路中的另一示例性逻辑“1”写入操作;
图8A是图示在图3A中的NVM矩阵电路中执行写入操作的示例性过程的流程图;
图8B是图示在图3A中的NVM矩阵电路中执行读取操作的示例性过程的流程图;
图9是NVM矩阵系统的示例,该NVM矩阵系统包括图3A中的NVM矩阵电路和类似于图3A中的NVM矩阵电路的另一NVM矩阵电路,该另一NVM矩阵电路被配置和/或重新配置并且耦合到第一NVM矩阵电路以为神经元NVM矩阵电路提供神经元层;
图10是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用NANDNVM铁电(Fe)场效应晶体管(FET)(FeFET)电路形式的NVM存储串电路,每个NAND NVM FeFET电路包括多个用于执行矩阵计算的NVM FeFET位单元电路;
图11是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用ANDNVM闪存电路形式的NVM存储串电路,每个AND NVM闪存电路包括多个用于执行矩阵计算的NVM闪存位单元电路;
图12是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用ANDNVM FeFET电路形式的NVM存储串电路,每个AND NVM FeFET电路包括多个用于执行矩阵计算的NVM FeFET位单元电路;
图13是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用ANDNVM磁阻随机存取存储器(MRAM)电路形式的NVM存储串电路,每个AND NVM MRAM电路包括多个用于执行矩阵计算的NVM MRAM位单元电路;
图14是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用ANDNVM电阻随机存取存储器(RRAM)电路形式的NVM存储串电路,每个AND NVM RRAM电路包括多个用于执行矩阵计算的NVM RRAM位单元电路;
图15是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用NORNVM闪存电路形式的NVM存储串电路,每个NOR NVM闪存电路包括多个用于执行矩阵计算的NVM闪存位单元电路;
图16是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用NORNVM FeFET电路形式的NVM存储串电路,每个NOR NVM FeFET电路包括多个用于执行矩阵计算的NVM FeFET位单元电路;
图17是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用NORNVM MRAM电路形式的NVM存储串电路,每个NOR NVM MRAM电路包括多个用于执行矩阵计算的NVM MRAM位单元电路;
图18是不需要交叉连接的示例性NVM矩阵电路的示意图,该NVM矩阵电路采用NORNVM RRAM电路形式的NVM存储串电路,每个NOR NVM RRAM电路包括多个用于执行矩阵计算的NVM RRAM位单元电路;
图19是不需要交叉连接的示例性多级单元(MLC)NVM矩阵电路的示意图,该NVM矩阵电路采用NVM存储串电路,每个NVM存储串电路包括多个MLC NVM存储电路,每个MLC NVM存储电路包括多个NAND NVM位单元电路以提供每个MLC NVM存储电路以表示用于执行矩阵计算的多位存储器状态;
图20A是可以在包括图19中的MLC NVM矩阵电路在内的MLC NVM矩阵电路中的MLCNVM存储电路中提供的不同类型的NAND和AND NVM位单元电路的示意图;
图20B是可以在包括图19中的MLC NVM矩阵电路在内的MLC NVM矩阵电路中的MLCNVM存储电路中提供的不同类型的NOR NVM位单元电路的示意图;
图21A是图示在图19中的MLC NVM矩阵电路中执行读取操作的示例性过程的流程图;
图21B是图示在图19中的MLC NVM矩阵电路中执行写入操作的示例性过程的流程图;
图22是不需要交叉连接的示例性MLC NVM矩阵电路的示意图,该MLC NVM矩阵电路采用NVM存储串电路,每个NVM存储串电路包括多个MLC NVM存储电路,每个MLC NVM存储电路包括多个AND NVM位单元电路以提供每个MLC NVM存储电路以表示用于执行矩阵计算的多位存储器状态;
图23是MLC NVM矩阵系统的示例,该MLC NVM矩阵系统包括图19中的MLC NVM矩阵电路和类似于图19中的MLC NVM矩阵电路的另一MLC NVM矩阵电路,该另一MLC NVM矩阵电路被配置和/或重新配置并且耦合到第一MLC NVM矩阵电路以为突触MLC NVM矩阵电路提供神经元层;
图24是采用NVM存储串电路的示例性MLC NVM矩阵电路的示意图,每个NVM存储串电路包括多个MLC NVM存储电路,每个MLC NVM存储电路包括多个NOR NVM位单元电路以提供每个MLC NVM存储电路以表示用于执行矩阵计算的多位存储器状态;
图25是MLC NVM矩阵系统的示例,该MLC NVM矩阵系统包括图24中的MLC NVM矩阵电路和类似于图24中的MLC NVM矩阵电路的另一MLC NVM矩阵电路,该另一MLC NVM矩阵电路被配置和/或重新配置并且耦合到第一MLC NVM矩阵电路以为突触MLC NVM矩阵电路提供神经元层;
图26是示例性芯片封装的框图,该示例性芯片封装包括片上系统(SoC)、专用存储器芯片和专用MLC NVM矩阵电路芯片,该专用MLC NVM矩阵电路芯片可以包括本文中公开的MLC NVM矩阵电路,包括但不限于图19-25中的MLC NVM矩阵电路;以及
图27是示例性的基于处理器的系统的框图,该系统包括存储器系统,该存储器系统可以包括本文中公开的MLC NVM矩阵电路,包括但不限于图19-25中的MLC NVM矩阵电路。
具体实施方式
现在参考附图,描述本公开的若干示例性方面。本文中使用的单词“示例性”表示“用作示例、实例或说明”。本文中描述为“示例性”的任何方面不必被解释为比其他方面更优选或更具优势。
在详细描述中公开的各方面包括用于执行具有多位输入矢量的矩阵计算的多级单元(MLC)非易失性(NV)存储器(NVM)矩阵电路。在本文中公开的示例性方面,提供了一种MLC NVM矩阵电路,该MLC NVM矩阵电路包括组织在相应存储器行中的多个NVM存储串电路。每个NVM存储串电路包括多个MLC NVM存储电路。因此,每个与NVM存储串电路相关联的多个MLC NVM存储电路在MLC NVM矩阵电路的相应存储器行和列中被布置和可寻址。每个MLCNVM存储电路包括多个NVM位单元电路,每个NVM位单元电路被配置为存储1位相应存储器状态。给定MLC NVM存储电路中的NVM位单元电路的相应存储器状态在MLC NVM存储电路中提供多位存储器状态。因此,例如,MLC NVM矩阵电路可以形成m×n的MLC NVM矩阵电路,其中“m”表示所提供的NVM存储串电路的存储器行数,而“n”表示相应存储器列中提供的每个NVM存储串电路内的MLC NVM存储电路数。每个MLC NVM存储电路根据其相应MLC NVM存储电路中的NVM位单元电路的个体的所存储的存储器状态来存储多位存储器状态。提供多个位线,每个位线被配置为耦合到相应NVM存储串电路。提供多个源极线,每个源极线被配置为耦合到相应NVM存储串电路。每个MLC NVM存储电路具有多个由其NVM位单元电路的电阻表示的所存储的存储器状态。每个MLC NVM存储电路与其相应存储器行中的其他MLC NVM存储电路一起耦合到相应源极线。每个NVM位单元电路包括晶体管,该晶体管的栅极节点耦合到被配置为接收例如1×n大小的多位输入矢量的多个字线中的相应字线。输入矢量中的每个条目表示多位输入,该多位输入被配置为耦合到m×n个字线,该m×n个字线耦合到相应MLC NVM存储电路中的NVM位单元电路的相应栅极节点并且控制给定NVM位单元电路的电阻是否对其相应MLC NVM存储电路的整体电阻做出贡献。例如,输入矢量可以是例如前突触加权矢量。每个源极线耦合到相应输出节点,其中所有NVM存储串电路的源极线可以共同提供输出矢量。例如,输出矢量可以是后突触矢量。
为了将1×n大小的多位输入矢量乘以由多个NVM存储串电路形成的m×n的MLCNVM矩阵电路,线电压被施加到NVM存储串电路的位线,同时表示输入矢量的输入电压被施加到n×m个字线,以被施加到相应MLC NVM存储电路中的NVM位单元电路的相应栅极节点。这导致基于每个MLC NVM存储电路总电阻(基于其相应NVM位单元电路的个体电阻)对其相应源极线的加权求和贡献,在每个源极线上生成求和电流。每个输出节点形成输出矢量,该矢量是1×n个多位输入矢量乘以m×n的MLC NVM矩阵电路的一(1)个列n的结果。通过包括耦合到字线的晶体管的MLC NVM存储电路的NVM位单元电路(该晶体管控制由其相应NVM存储串电路在其相应源极线上贡献的电阻),不必提供字线与位线之间的交叉连接,这可以避免在MLC NVM矩阵电路中产生潜行路径电流。字线和位线通过其相应MLC NVM存储电路的NVM位单元电路彼此隔离。
在从图19开始讨论采用多个MLC NVM存储电路来执行多位矩阵计算而无需使用交叉连接的示例性MLC NVM矩阵电路之前,首先参考下面的图3A-18来讨论采用NVM存储串电路的MLC NVM矩阵电路,每个NVM存储串电路包括多个NVM位单元电路以执行矩阵计算而不需要不是MLC NVM矩阵电路的交叉连接。
在这点上,图3A是可以在不使用交叉连接的情况下执行矩阵乘法的示例性NVM矩阵电路300的示意图。NVM矩阵电路300采用在“m+1”个存储器行R0-Rm中的NVM存储串电路302(0)-302(m),每个存储器行包括图3A中的多个NVM位单元电路R00-Rmn。在该示例中,NVM存储串电路302(0)-302(m)是NAND NVM闪存电路,其中NVM位单元电路R00-Rmn是NVM闪存电路。然而,NVM存储串电路302(0)-302(m)可以被提供为其他类型的NVM矩阵电路,如下面在其他方面更详细地讨论的。每个相应NVM存储串电路302(0)-302(m)中的NVM位单元电路R00-Rmn布置在存储器行R0-Rm和存储器列C0-Cn中。NVM矩阵电路300包括用于每个存储器行R0-Rm的相应位线BL0-BLm。提供位线驱动器电路306(0)-306(m),每个位线驱动器电路被配置为在相应位线BL0-BLm上驱动相应线电压V0-Vm。还提供源极线SL0-SLm,每个源极线耦合到相应输出节点308(0)-308(m)。NVM存储串电路302(0)-302(m)耦合在每个相应存储器行R0-Rm中的对应位线BL0-BLm与对应源极线SL0-SLm之间。源极线SL0-SLm被配置为当其相应NVM位单元电路R00-Rmn被激活时,将相应电流I0-Im携带到相应输出节点308(0)-308(m)作为输出矢量S0-Sm。例如,输出矢量S0-Sm可以是二进制后突触矢量。
继续参考图3A,NVM矩阵电路300还包括用于每个存储器列C0-Cn的相应字线WL0-WLn。提供字线驱动器电路310(0)-310(n),每个字线驱动器电路被配置为在相应字线WL0-WLn上驱动包括多个输入电压的相应输入矢量X0-Xn。如将在下面更详细地讨论的,字线WL0-WLn耦合到给定存储器列C0-Cn中的NVM位单元电路R00-Rmn的相应栅极节点G00-Gmn,以控制施加到相应源极线SL0-SLm的NVM位单元电路R00-Rmn的电阻。例如,输入矢量X0-Xn可以是二进制前突触数据矢量。NVM矩阵电路300还包括耦合在相应位线BL0-BLm与NVM存储串电路302(0)-302(m)之间的第一存取晶体管312(0)-312(m)。第一存取晶体管312(0)-312(m)每个包括耦合到相应第一存取线314的第一存取栅极节点G,该第一存取线314被配置为由第一存取线驱动器电路316用第一存取电压来驱动。第一存取晶体管312(0)-312(m)每个被配置为控制是否将施加在相应位线BL0-BLm上的对应线电压V0-Vm施加到对应存储器行R0-Rm中的相应NVM存储串电路302(0)-302(m)。第一存取晶体管312(0)-312(m)被配置为响应于由第一存取线驱动器电路316驱动到第二存取线320上的第一存取晶体管312(0)-312(m)的第一存取栅极节点G的第一存取信号(电压)足以导通第一存取晶体管312(0)-312(m)而在相应位线BL0-BLm上传递线电压V0-Vm。NVM矩阵电路300还包括耦合在相应NVM存储串电路302(0)-302(m)与耦合到输出节点308(0)-308(m)的源极线SL0-SLm之间的第二存取晶体管318(0)-318(m)。第二存取晶体管318(0)-318(m)每个被配置为响应于由第二存取线驱动器电路322驱动到第二存取线320上的第二存取晶体管318(0)-318(m)的第二存取栅极节点G的第二存取信号(电压)足以导通第二存取晶体管318(0)-318(m)而将相应NVM存储串电路302(0)-302(m)耦合到相应源极线SL0-SLm和相应输出节点308(0)-308(m)。如图3A所示,字线WL0-WLn与位线BL0-BLm之间没有交叉耦合。NVM存储串电路302(0)-302(m)的存取晶体管312(0)-312(m)、318(0)-318(m)可以在字线WL0-WLn与位线BL0-BLm之间提供进一步的隔离。
继续参考图3A,在该示例中,NVM矩阵电路300中的每个NVM位单元电路R00-Rmn是不需要电源来保持数据的NVM闪存电路。图3B是可以被提供为图3A中的NVM矩阵电路300中的NVM存储串电路302(0)-302(m)的示例性二维(2D)NAND闪存电路的示意图。图3B图示了在电路和布局图中作为示例可以在图3A中的NVM矩阵电路300中的存储器行R0中提供的示例性NVM存储串电路302(0)。如图3B所示,NVM位单元电路R00-Rmn每个以串联耦合串的方式彼此耦合,NVM位单元电路R00-Rn-1的源极节点S00-S0n-1耦合到相邻的NVM位单元电路R01-R0n的漏极节点D01-D0n。NVM存储串电路302(0)中的端部NVM位单元电路R00、Rn耦合到相应存取晶体管312(0)、318(0)。每个NVM位单元电路R00-R0n具有表示所存储的存储器状态的电阻。每个NVM位单元电路R00-Rmn具有包括栅极G00-G0n的晶体管,该栅极基于NVM位单元电路R00-Rmn位于其中的存储器列C0-Cn而耦合到相应字线WL0-WLn。每个NVM位单元电路R00-Rmn被配置为被激活以激活半导体沟道以将其电阻耦合在其存储器行R0-Rm中的相应源极线SL0-SLm上。NVM位单元电路R00-R0n中的集体存储器状态形成存储在NVM存储串电路302(0)中的数据矢量。如图3B所示,在字线WL0与位线BL0之间没有交叉耦合,在所有字线WL0-WLn与相应位线BL0-BLm之间也是如此。
继续参考图3B,如将在下面更详细地讨论的,当线电压被施加到位线BL0并且存取电压被施加到存取晶体管312(0)-312(m)的存取栅极节点G以足以激活存取晶体管312(0)-312(m)的半导体沟道C时,NVM存储串电路302(0)耦合到位线BL0和源极线SL0。输入电压作为输入矢量X0-Xn被施加到字线WL0-WLn和相应NVM位单元电路R00-R0n的栅极节点G00-G0n以作为输入矢量X0-Xn来控制相应NVM位单元电路R00-R0n的激活。当被激活时,NVM位单元电路R00-R0n将其电阻耦合到源极线SL0。NVM位单元电路R00-R0n的电阻是其存储的存储器状态的函数。因此,NVM位单元电路R00-R0n的电阻可以表示权重矢量。在相应源极线SL0上流向输出节点308(0)的电流I0是相应输入矢量X0-Xn与NVM存储串电路302(0)的NVM位单元电路R00-R0n中的对应存储器状态相乘的点积乘法的总和的函数。因此,参考图3A,用于图3A中的NVM矩阵电路300中的NVM存储串电路302(0)-302(m)的所有NVM位单元电路R00-R0n可以表示权重矩阵。从相应NVM存储串电路302(0)-302(m)的相应源极线SL0-SLm流向输出节点308(0)-308(m)的电流I0-Im是由位线驱动器电路306(0)-306(m)在相应源极线SL0-SLm上驱动的相应线电压V0-Vm除以NVM存储串电路302(0)-302(m)的NVM位单元电路R00-Rmn的总沟道电阻的函数。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,图3A中的NVM矩阵电路300被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000191
其中:
i=存储器行0至m;
j=存储器列0至n;
VBL=电压Vi;以及
Rij=NVM位单元电路的电阻。
因此,继续参考图3A,NVM矩阵电路300被配置为执行作为相应存储器状态而存储在NVM存储串电路302(0)-302(m)中的每个中的1×n个权重矢量中的每个与n×1个输入矢量X0-Xn的同时的矩阵乘法。根据以上提供的电流公式,这些矢量乘法的点积根据在输出节点308(0)-308(m)处生成的电流I0-Im的相应幅度来提供。
此外,如果字线WL0-WLm耦合到前神经元层并且输出节点308(0)-308(m)耦合到后神经元层,则NVM矩阵电路300还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=NVM位单元电路的电阻;以及
S=NVM位单元电路的源极线处的值。
作为存储在NVM位单元电路R00-Rmn中的存储器状态而提供的NVM矩阵电路300的权重矩阵可以在写入操作中被设置为期望的存储器状态,以提供期望的权重矩阵。例如,图4A图示了在写入操作中将逻辑“0”写入图3A中的NVM矩阵电路300中的NVM位单元电路R25。如其中所示,在该示例中,为了将逻辑“0”写入NVM位单元电路R25,由位线驱动器电路306(2)在存储器行R2的位线BL2上施加0V或5V的线电压,这取决于NVM位单元电路R25分别存储具有还是不具有电荷陷阱的存储器状态。在耦合到输出节点308(2)的源极线SL2上施加5V的线电压。将10V的输入电压施加到字线WL2以施加到NVM位单元电路R25的栅极节点G25,以将NVM位单元电路R25的存储器状态编程为逻辑“0”存储器状态。类似地,图4B图示了在写入操作中将逻辑“1”写入图3A中的NVM矩阵电路300中的NVM位单元电路R25。如其中所示,在该示例中,为了将逻辑“1”写入NVM位单元电路R25,由位线驱动器电路306(2)在存储器行R2的位线BL2上施加0V或5V的线电压,这取决于NVM位单元电路R25分别存储不具有还是具有电荷陷阱的存储器状态。在耦合到输出节点308(2)的源极线SL2上施加0V的线电压。将-10V的电压施加到字线WL2以施加到NVM位单元电路R25的栅极节点G25,以将NVM位单元电路R25的存储器状态编程为逻辑“1”存储器状态。
图5图示了图3A中的NVM矩阵电路300中的示例性读取操作。执行读取操作以引起NVM矩阵电路300执行矩阵计算。将输入矢量X0-Xn乘以NVM存储串电路302(0)-302(m)中的每个的存储器状态,以在耦合到输出节点308(0)-308(m)的源极线SL0-SLm上生成相应电流I0-Im,在该示例中,所有NVM位单元电路R00-Rmn被激活。在这点上,在该示例中,将4.5V的输入电压作为输入矢量X0-Xn施加到相应字线WL0-WLn中的每个,以引起NVM位单元电路R00-Rmn中的每个的沟道电阻串联相加以对相应源极线SL0-SLm的整体串联电阻做出贡献。它们的沟道电阻对相应源极线SL0-SLm的整体串联电阻做出贡献,并且是存储在NVM位单元电路R00-Rmn中的存储器状态的函数。输出节点308(0)-308(m)处的电流I0-Im是输入矢量X0-Xn与作为权重矢量的NVM位单元电路R00-Rmn的相应存储器状态相乘的点积乘法的总和的函数,NVM位单元电路R00-Rmn中的每个在相应NVM存储串电路302(0)-302(m)中。
作为写入操作的一部分,可以一次写入图3A中的NVM矩阵电路300中的给定存储器行R0-Rm中的一个以上的NVM位单元电路R00-Rmn。在这点上,图6A图示了在写入操作中将逻辑“0”写入图3A中的NVM矩阵电路300中的NVM位单元电路R22和R25。如图6A所示,在该示例中,为了将逻辑“0”写入NVM位单元电路R22和R25,由位线驱动器电路306(2)在存储器行R2的位线BL2上施加0V或5V的线电压,这取决于NVM位单元电路R22和R25分别存储具有还是不具有电荷陷阱的存储器状态。在源极线SL2上施加5V的线电压。将10V的输入(即,编程)电压施加到字线WL2和WL5以施加到NVM位单元电路R22和R25的栅极节点G22和G25两者,以将NVM位单元电路R22和R25编程为逻辑“0”存储器状态。可以施加不足以编程存储器列C0、C1、C3、C4和C6-Cn中的NVM位单元电路R00-Rm0、R01-Rm1、R03-Rm3、R04-Rm4、R06-Rmn的不同输入电压到写入线WL0、WL1、WL3、WL4和WL6-WLn以进行写入操作。类似地,图6B图示了在写入操作中将逻辑“1”写入图3A中的NVM矩阵电路300中的NVM位单元电路R22和R25。如图6B所示,在该示例中,为了将逻辑“1”写入NVM位单元电路R22和R25,由位线驱动器电路306(2)在存储器行R2的位线BL2上施加0V或5V的线电压,这取决于NVM位单元电路R22和R25分别存储不具有还是具有电荷陷阱的存储器状态。在源极线SL2上施加0V的电压。-10V的输入(即,编程)电压被施加到字线WL2和WL5以施加到NVM位单元电路R22和R25的栅极节点G22和G25两者,以将NVM位单元电路R22和R25编程为逻辑“1”存储器状态。
作为写入操作的一部分,可以一次写入图3A中的NVM矩阵电路300中的给定存储器列C0-Cn中的一个以上的NVM位单元电路R00-Rmn。在这点上,图7A图示了在写入操作中将逻辑“0”写入图3A的NVM矩阵电路300中的存储器列C5中的NVM位单元电路R25和Rm-15两者。如图7A所示,在该示例中,为了将逻辑“0”写入NVM位单元电路R25和Rm-15,由位线驱动器电路306(2)、306(m-1)在存储器行R2和Rm-1的位线BL2和BLm-1上施加0V或5V的线电压,这取决于NVM位单元电路R25和Rm-15分别存储具有还是不具有电荷陷阱的存储器状态。在源极线SL2和SLm-1上施加5V的线电压。将10V的输入(即,编程)电压施加到字线WL2以施加到NVM位单元电路R25和Rm-15的栅极节点G25和Gm-15,以将NVM位单元电路R25和Rm-15编程为逻辑“0”存储器状态。类似地,图7B图示了在写入操作中将逻辑“1”写入图3A中的NVM矩阵电路300中的存储器列C5中的NVM位单元电路R25和Rm-15两者。如图7B所示,在该示例中,为了将逻辑“1”写入NVM位单元电路R25和Rm-15,由位线驱动器电路306(2)、306(m-1)在存储器行R2的位线BL2和BLm-1上施加0V或5V的线电压,这取决于NVM位单元电路R25和Rm-15分别存储不具有还是具有电荷陷阱的存储器状态。在源极线SL2和SLm-1上施加0V的线电压。-10V的输入(即,编程)电压被施加到字线WL2以施加到NVM位单元电路R25和Rm-15的栅极G25和Gm-15,以将NVM位单元电路R25和Rm-15编程为逻辑“1”存储器状态。
图8A是图示在图3A中的NVM矩阵电路300中执行读取操作的示例性过程800的流程图。上面关于图6A-7B讨论了对图3A中的NVM矩阵电路300的读取操作的示例。在这点上,参考图3A和8A,过程800包括在耦合到多个NVM存储串电路302(0)-302(m)中的对应NVM存储串电路302(0)-302(m)的多个位线BL0-BLm中的至少一个位线BL0-BLm上施加线电压,以将线电压电耦合到耦合到多个位线BL0-BLm中的对应位线BL0-BLm的对应NVM存储串电路302(0)-302(m)(图8A中的框802)。多个NVM存储串电路302(0)-302(m)中的每个包括在多个位线BL0-BLm中的多个NVM位单元电路Rx0-Rxn,每个NVM位单元电路具有表示NVM位单元电路Rx0-Rxn中的所存储的存储器状态的沟道电阻以形成用于对应的NVM存储串电路302(0)-302(m)的数据矢量。过程800还涉及在耦合到多个NVM存储串电路302(0)-302(m)中的对应NVM存储串电路302(0)-302(m)的多个源极线SL0-SLm中的至少一个源极线SL0-SLm上施加第二线电压,以将第二线电压电耦合到耦合到多个源极线SL0-SLm中的对应源极线SL0-SLm的对应NVM存储串电路302(0)-302(m)(图8A中的框804)。过程800还涉及在多个字线WL0-WLn上施加表示输入矢量X0-Xn的多个输入电压,多个字线WL0-WLn中的每个字线WL0-WLn耦合到多个NVM存储串电路302(0)-302(m)中的每个NVM存储串电路中的NVM位单元电路R00-Rmn的对应栅极节点G00-Gmn,以将NVM位单元电路R00-Rmn电耦合到源极线SL0-SLm以将NVM位单元电路R00-Rmn的沟道电阻耦合到源极线SL0-SLm(图8A中的框806)。过程800还涉及将存取电压施加到多个存取晶体管312(0)-312(m),多个存取晶体管312(0)-312(m)中的每个存取晶体管312(0)-312(m)耦合到多个位线BL0-BLm中的对应位线BL0-BLm和多个NVM存储串电路302(0)-302(m)中的对应NVM存储串电路302(0)-302(m)。多个NVM存储串电路302(0)-302(m)耦合到与位线BL0-BLm相对应的相应源极线SL0-SLm,以将对应位线BL0-BLm电耦合到对应NVM存储串电路302(0)-302(m)(图8A中的框808)。图8B是图示在图3A中的NVM矩阵电路300中执行读取操作的示例性过程810的流程图。上面关于图5A和5B讨论了对图3A中的NVM矩阵电路300的写入操作的示例。在这点上,参考图3A和8B,过程810包括将线电压施加到耦合到多个NVM存储串电路302(0)-302(m)中的对应NVM存储串电路302(0)-302(m)的多个位线BL0-BLm中的位线BL0-BLm(图8B中的框812)。过程810还涉及将第二线电压施加到耦合到对应NVM存储串电路302(0)-302(m)的多个源极线SL0-SLm中的源极线SL0-SLm(图8B中的框814)。过程810还涉及将写入激活电压施加到对应NVM存储串电路302(0)-302(m)中的NVM位单元电路R00-Rmn的栅极节点G00-Gmn,以基于施加到NVM位单元电路R00-Rmn的栅极节点G00-Gmn的写入激活电压来写入存储器状态(图8B中的框816)。
图3A中的NVM矩阵电路300还可以被采用并且重新配置以提供重新配置的神经元路径以支持针对不同神经元层和神经元的通用的深度学习或人工智能(AI)任务。在这点上,图9是包括被配置为如图3A所示的n×m的NVM矩阵电路300的图3A中的NVM矩阵电路300的NVM矩阵系统的示例。提供另一NVM矩阵电路300A,其类似于NVM矩阵电路300,但是被配置为m×k的NVM矩阵电路。NVM矩阵电路300、300A可以耦合在一起以形成具有提供中间神经元902的输出矢量S0-Sm的相应的第一神经元层900(1)和第二神经元层900(2)。这允许作为n×m的NVM矩阵电路300的矩阵计算的结果的点积输出矢量S0-Sm被用作NVM矩阵电路300A的输入矢量X0-Xm以产生点积输出矢量S0-Sk。因此,耦合到另一NVM矩阵电路300A的NVM矩阵电路300被配置为根据以下公式在隐藏层上产生电流I0-Ik
Figure BDA0002360030090000241
其中:
h=存储器行0至m;
l=存储器列0至k;
VBL=位线BL0'-BLm'的电压;以及
Rhl=NVM矩阵电路300A中的NVM位单元电路的沟道电阻。
可以在图9中的NVM矩阵电路300、300A中执行的矩阵计算的操作和写入操作可以如先前针对NVM矩阵电路300所述。
除了如图3A的NVM矩阵电路300中所示的NAND NVM闪存电路,还可以采用其他类型的NVM位单元电路。例如,图10是另一示例性NVM矩阵电路1000的示意图,该NVM矩阵电路1000不需要像图3A中的NVM矩阵电路300不包括的那样在位线与字线之间存在交叉连接。然而,在该示例中,NVM矩阵电路1000包括NAND NVM铁电(Fe)场效应晶体管(FET)(FeFET)电路形式的NVM存储串电路1002(0)-1002(m)。每个相应NVM存储串电路1002(0)-1002(m)中的NVM位单元电路R00-Rmn是布置在存储器行R0-Rm和存储器列C0-Cn中的NVM FeFET电路。NVM矩阵电路1000包括用于每个存储器行R0-Rm的相应位线BL0-BLm。提供位线驱动器电路1006(0)-1006(m),每个位线驱动器电路被配置为在相应位线BL0-BLm上驱动相应线电压V0-Vm。还提供源极线SL0-SLm,每个源极线耦合到相应输出节点1008(0)-1008(m)。NVM存储串电路1002(0)-1002(m)耦合在每个相应存储器行R0-Rm中的对应位线BL0-BLm与对应源极线SL0-SLm之间。源极线SL0-SLm被配置为当其相应NVM位单元电路R00-Rmn被激活时,将相应电流I0-Im携带到相应输出节点1008(0)-1008(m)作为输出矢量。例如,输出矢量可以是二进制后突触矢量。
继续参考图10,NVM矩阵电路1000还包括用于每个存储器列C0-Cn的相应字线WL0-WLn。提供字线驱动器电路1010(0)-1010(n),每个字线驱动器电路被配置为在相应字线WL0-WLn上驱动包括多个输入电压的相应输入矢量X0-Xn。例如,输入矢量X0-Xn可以是二进制前突触数据矢量。NVM矩阵电路1000还包括耦合在相应位线BL0-BLm与NVM存储串电路1002(0)-1002(m)之间的第一存取晶体管1012(0)-1012(m)。第一存取晶体管1012(0)-1012(m)每个包括耦合到相应第一存取线1014的第一存取栅极节点G,第一存取线1014被配置为由第一存取线驱动器电路1016用第一存取电压来驱动。晶体管1012(0)-1012(m)每个被配置为控制是否将施加在相应位线BL0-BLm上的相应线电压V0-Vm施加到对应存储器行R0-Rm中的相应NVM存储串电路1002(0)-1002(m)。第一存取晶体管1012(0)-1012(m)被配置为响应于由第一存取线驱动器电路1016驱动到第二存取线1020上的第一存取晶体管1012(0)-1012(m)的第一存取栅极节点G的第一存取信号(电压)足以导通第一存取晶体管1012(0)-1012(m)而在相应位线BL0-BLm上传递线电压V0-Vm。NVM矩阵电路1000还包括耦合在相应NVM存储串电路1002(0)-1002(m)与耦合到输出节点1008(0)-1008(n)的源极线SL0-SLm之间的第二存取晶体管1018(0)-1018(m)。第二存取晶体管1018(0)-1018(m)每个被配置为响应于由第二存取线驱动器电路1022驱动到第二存取线1020上的第二存取晶体管1018(0)-1018(m)的第二存取栅极节点G的第二存取信号(电压)足以导通第二存取晶体管1018(0)-1018(m)而将相应NVM存储串电路1002(0)-1002(m)耦合到相应源极线SL0-SLm和相应输出节点1008(0)-1008(m)。如图10所示,字线WL0-WLn与位线BL0-BLm之间没有交叉耦合。NVM存储串电路1002(0)-1002(m)的存取晶体管1012(0)-1012(m)、1018(0)-1018(m)在字线WL0-WLn与位线BL0-BLm之间提供隔离。
继续参考图10,在该示例中,NVM矩阵电路1000中的每个NVM位单元电路R00-Rmn是不需要电源来保持数据的NVM FeFET电路。在该示例中,NVM位单元电路R00-Rmn每个以串联耦合串的方式彼此耦合。以存储器行R0中的NVM存储串电路1002(0)为例,NVM位单元电路R00-Rn-1的源极节点耦合到相邻的NVM位单元电路R01-R0n的漏极节点。NVM存储串电路1002(0)中的端部NVM位单元电路R00、Ron耦合到相应存取晶体管1012(0)、1018(0)。每个NVM位单元电路R00-R0n具有表示所存储的存储器状态的电阻。每个NVM位单元电路R00-Rmn具有包括栅极G00-G0n的晶体管,该栅极基于NVM位单元电路R00-Rmn位于其中的存储器列C0-Cn而耦合到相应字线WL0-WLn。每个NVM位单元电路R00-Rmn被配置为被激活以激活半导体沟道以将其电阻耦合在其存储器行R0-Rm中的相应源极线SL0-SLm上。NVM位单元电路R00-R0n中的集体存储器状态形成存储在NVM存储串电路1002(0)中的数据矢量。如图10所示,在字线WL0与位线BL0之间没有交叉耦合,在所有字线WL0-WLn与相应位线BL0-BLm之间也是如此。
继续参考图10,当线电压被施加到位线BL0并且存取电压被施加到存取晶体管1012(0)-1012(m)的存取栅极节点G以足以激活存取晶体管1012(0)-1012(m)的半导体沟道C时,NVM存储串电路1002(0)耦合到位线BL0和源极线SL0。输入电压作为输入矢量X0-Xn被施加到字线WL0-WLn和栅极节点G00-G0n以作为输入矢量X0-Xn来控制相应NVM位单元电路R00-R0n的激活。当被激活时,NVM位单元电路R00-R0n将其电阻耦合到源极线SL0。NVM位单元电路R00-R0n的电阻是其存储的存储器状态的函数。因此,NVM位单元电路R00-R0n的电阻可以表示权重矢量。在相应源极线SL0上流向输出节点1008(0)的电流I0是相应输入矢量X0-Xn与NVM存储串电路1002(0)的NVM位单元电路R00-R0n中的对应存储器状态相乘的点积乘法的总和的函数。因此,参考图10,用于图10中的NVM矩阵电路1000中的NVM存储串电路1002(0)-1002(m)的所有NVM位单元电路R00-R0n可以表示权重矩阵。从相应NVM存储串电路1002(0)-1002(m)的相应源极线SL0-SLm流向输出节点1008(0)-1008(m)的电流I0-Im是由位线驱动器电路1006(0)-1006(m)在相应源极线SL0-SLm上驱动的相应线电压V0-Vm除以NVM存储串电路1002(0)-1002(m)的NVM位单元电路R00-Rmn的总沟道电阻的函数。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,图10中的NVM矩阵电路1000被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000271
其中:
i=存储器行0至m;
j=存储器列0至n;
VBL=电压Vi;以及
Rij=NVM位单元电路的沟道电阻。
因此,继续参考图10,NVM矩阵电路1000被配置为执行作为相应存储器状态而存储在NVM存储串电路1002(0)-1002(m)中的每个中的1×n个权重矢量中的每个与n×1个输入矢量X0-Xn的同时的矩阵乘法。根据以上提供的电流公式,这些矢量乘法的总和点积乘积根据在输出节点1008(0)-1008(m)处生成的电流I0-Im的各个幅度来提供。
此外,如果字线WL0-WLm耦合到前神经元层并且输出节点1008(0)-1008(m)耦合到后神经元层,则NVM矩阵电路1000还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=NVM位单元电路的沟道电阻;以及
S=NVM位单元电路的源极线处的值。
作为存储在NVM位单元电路R00-Rmn中的存储器状态而提供的NVM矩阵电路1000的权重矩阵可以在写入操作中被设置为期望的存储器状态,以提供期望的权重矩阵。先前针对图3A中的NVM矩阵电路300描述的写入和读取操作可以应用于图10中的NVM矩阵电路1000。
图11图示了NVM矩阵电路1100,其是通过将存储器行和列切换为具有存储器行R0-Rn和存储器列C0-Cm来将图3A中的NVM矩阵电路300重新配置为n×m矩阵。在该示例中,NVM矩阵电路1100包括AND NVM闪存电路形式的NVM存储串电路1102(0)-1102(m),AND NVM闪存电路设置在相应存储器列C0-Cm中以提供NVM位单元电路R00-Rnm。因此,每个NVM位单元电路R00-Rnm是NVM闪存电路。字线WL0-WLn和位线BL0-BLm在来自图3A中的NVM矩阵电路300的存储器行R0-Rn和列C0-Cm之间反转,但是仍然以与图3A的NVM矩阵电路300中相同的方式耦合到NVM位单元电路R00-Rnm。在这点上,如图11所示,为每个存储器行R0-Rn提供以输入电压形式接收输入矢量X0-Xn的字线WL0-WLn。为每个存储器列C0-Cm提供位线BL0-BLm。图3A中的NVM矩阵电路300与图11中的NVM矩阵电路1100之间的公共组件以公共元件编号图示,并且因此将不再描述。可以在图11中的NVM矩阵电路1100中执行与以上关于NVM矩阵电路300所述的读取和写入操作类似的读取和写入操作。
每个NVM位单元电路R00-Rnm具有表示所存储的存储器状态的沟道电阻。NVM位单元电路R00-Rnm的沟道电阻表示权重矩阵。每个NVM位单元电路R00-Rnm具有包括栅极节点G00-Gnm的晶体管,该栅极节点基于NVM位单元电路R00-Rnm位于其中的存储器行R0-Rn而耦合到相应字线WL0-WLn。每个NVM位单元电路R00-Rnm被配置为激活其半导体沟道以将其沟道电阻(即,电导)与同一存储器列C0-Cm中的其他激活的NVM位单元电路R00-Rnm并联地耦合在相应位线BL0-BLm与相应源极线SL0-SLm之间。电流I0-Im根据由位线驱动器电路1006(0)-1006(m)驱动到其相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的相应线电压V0-Vm除以相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的并联沟道电阻而从相应源极线SL0-SLm流向输出节点1108(0)-1108(m)。如图11所示,NVM存储串电路1102(0)-1102(m)中的每个NVM位单元电路R00-Rnm包括耦合到对应位线BL0-BLm的源极节点(或漏极节点)和耦合到对应源极线SL0-SLm的漏极节点(或源极节点),以被配置为与相应存储器列C0-Cm中的其他NVM位单元电路R00-Rnm并联耦合。因此,例如,在相应源极线SL0上流向输出节点1008(0)的电流I0是点积的总和的函数,这表示相应输入矢量X0-Xn乘以其相应的对应存储器列C0-Cm中的NVM位单元电路R00-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,NVM矩阵电路1100被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000291
其中:
i=存储器列0至m;
j=存储器行0至n;
VBL=电压Vi;以及
Rij=NVM位单元电路的沟道电阻。
如果字线WL0-WLm耦合到前神经元层并且输出节点1108(0)-1108(m)耦合到后神经元层,则NVM矩阵电路1100还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=NVM位单元电路的沟道电阻;以及
S=NVM存储串电路的源极线处的值。
图12图示了NVM矩阵电路1200,其是通过将存储器行和列切换为具有存储器行R0-Rn和存储器列C0-Cm来将图3A中的NVM矩阵电路300重新配置为n×m矩阵。在该示例中,NVM矩阵电路1200包括AND NVM FeFET电路形式的NVM存储串电路1202(0)-1202(m),AND NVMFeFET电路设置在相应存储器列C0-Cm中以提供NVM位单元电路R00-Rnm。因此,每个NVM位单元电路R00-Rnm是NVM FeFET电路。字线WL0-WLn和位线BL0-BLm在来自图3A中的NVM矩阵电路300的存储器行R0-Rn和列C0-Cm之间反转,但是仍然以与图3A的NVM矩阵电路300中相同的方式耦合到NVM位单元电路R00-Rnm。在这点上,如图12所示,为每个存储器行R0-Rn提供以输入电压形式接收输入矢量X0-Xn的字线WL0-WLn。为每个存储器列C0-Cm提供位线BL0-BLm。图3A中的NVM矩阵电路300与图12中的NVM矩阵电路1200之间的公共组件以公共元件编号图示,并且因此将不再描述。可以在图12中的NVM矩阵电路1200中执行与以上关于NVM矩阵电路300所述的读取和写入操作类似的读取和写入操作。
每个NVM位单元电路R00-Rnm具有表示所存储的存储器状态的沟道电阻。NVM位单元电路R00-Rnm的沟道电阻表示权重矩阵。每个NVM位单元电路R00-Rnm具有包括栅极节点G00-Gnm的晶体管,该栅极节点基于NVM位单元电路R00-Rnm位于其中的存储器行R0-Rn而耦合到相应字线WL0-WLn。每个NVM位单元电路R00-Rnm被配置为激活其半导体沟道以将其沟道电阻(即,电导)与同一存储器列C0-Cm中的其他激活的NVM位单元电路R00-Rnm并联地耦合在相应位线BL0-BLm与相应源极线SL0-SLm之间。电流I0-Im根据驱动到其相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的相应线电压V0-Vm除以相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的并联沟道电阻而从相应源极线SL0-SLm流向输出节点1208(0)-1208(m)。如图12所示,NVM存储串电路1202(0)-1202(m)中的每个NVM位单元电路R00-Rnm包括耦合到对应位线BL0-BLm的源极节点(或漏极节点)和耦合到对应源极线SL0-SLm的漏极节点(或源极节点),以被配置为与相应存储器列C0-Cm中的其他NVM位单元电路R00-Rnm并联耦合。因此,例如,在相应源极线SL0上流向输出节点1208(0)的电流I0是点积乘法的总和的函数,这表示相应输入矢量X0-Xn乘以其相应的对应存储器列C0-Cm中的NVM位单元电路R00-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,NVM矩阵电路1200被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000311
其中:
i=存储器列0至m;
j=存储器行0至n;
VBL=电压Vi;以及
Rij=NVM位单元电路的沟道电阻。
如果字线WL0-WLm耦合到前神经元层并且输出节点1208(0)-1208(m)耦合到后神经元层,则NVM矩阵电路1200还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rnm的沟道电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=NVM位单元电路的沟道电阻;以及
S=NVM存储串电路的源极线处的值。
图13图示了NVM矩阵电路1300,其也是通过将存储器行和列切换为具有存储器行R0-Rn和存储器列C0-Cm来将图3A中的NVM矩阵电路300重新配置为n×m矩阵。在该示例中,NVM矩阵电路1300包括AND NVM磁阻随机存取存储器(MRAM)电路形式的NVM存储串电路1302(0)-1302(m),AND NVM MRAM电路设置在相应存储器列C0-Cm中以提供NVM位单元电路R00-Rnm。因此,每个NVM位单元电路R00-Rnm是NVM MRAM电路。字线WL0-WLn和位线BL0-BLm在来自图3A中的NVM矩阵电路300的存储器行R0-Rn和列C0-Cm之间反转,但是仍然以与图3A的NVM矩阵电路300中相同的方式耦合到NVM位单元电路R00-Rnm。在这点上,如图13所示,为每个存储器行R0-Rn提供以输入电压形式接收输入矢量X0-Xn的字线WL0-WLn。为每个存储器列C0-Cm提供位线BL0-BLm。图3A中的NVM矩阵电路300与图13中的NVM矩阵电路1300之间的公共组件以公共元件编号图示,并且因此将不再描述。可以在图13中的NVM矩阵电路1300中执行与以上关于NVM矩阵电路300所述的读取和写入操作类似的读取和写入操作。
每个NVM位单元电路R00-Rnm具有表示所存储的存储器状态的电阻。在该示例中,NVM位单元电路R00-Rnm的电阻是NVM位单元电路R00-Rnm中的磁隧道结(MTJ)处于表示存储器状态的并联(P)还是反并联(AP)磁化状态的函数。NVM位单元电路R00-Rnm的电阻表示权重矩阵。每个NVM位单元电路R00-Rnm具有包括栅极节点G00-Gnm的晶体管,该栅极节点基于NVM位单元电路R00-Rnm位于其中的存储器行R0-Rn而耦合到相应字线WL0-WLn。每个NVM位单元电路R00-Rnm被配置为激活其半导体沟道以将MTJ电阻(即,电导)与同一存储器列C0-Cm中的其他激活的NVM位单元电路R00-Rnm并联地耦合在相应位线BL0-BLm与相应源极线SL0-SLm之间。电流I0-Im根据驱动到其相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的相应线电压V0-Vm除以相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的并联沟道电阻而从相应源极线SL0-SLm流向输出节点1308(0)-1308(m)。如图13所示,NVM存储串电路1302(0)-1302(m)中的每个NVM位单元电路R00-Rnm包括耦合到对应位线BL0-BLm的源极节点(或漏极节点)和耦合到对应源极线SL0-SLm的漏极节点(或源极节点),以被配置为与相应存储器列C0-Cm中的其他NVM位单元电路R00-Rnm并联耦合。因此,例如,在相应源极线SL0上流向输出节点1308(0)的电流I0是点积乘法的总和的函数,这表示相应输入矢量X0-Xn乘以其相应的对应存储器列C0-Cm中的NVM位单元电路R00-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,NVM矩阵电路1300被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000331
其中:
i=存储器列0至m;
j=存储器行0至n;
VBL=电压Vi;以及
Rij=NVM位单元电路的沟道电阻。
如果字线WL0-WLm耦合到前神经元层并且输出节点1308(0)-1308(m)耦合到后神经元层,则NVM矩阵电路1300还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=NVM位单元电路的沟道电阻;以及
S=NVM存储串电路的源极线处的值。
图14图示了另一NVM矩阵电路1400,其也是通过将存储器行和列切换为具有存储器行R0-Rn和存储器列C0-Cm来将图3A中的NVM矩阵电路300重新配置为n×m矩阵。在该示例中,NVM矩阵电路1400包括以AND NVM电阻随机存取存储器(RRAM)电路形式的NVM存储串电路1402(0)-1402(m),AND NVM RRAM电路设置在相应存储器列C0-Cm中以提供NVM位单元电路R00-Rnm。因此,每个NVM位单元电路R00-Rnm是NVM RRAM电路。字线WL0-WLn和位线BL0-BLm在来自图3A中的NVM矩阵电路300的存储器行R0-Rn和列C0-Cm之间反转,但是仍然以与图3A的NVM矩阵电路300中相同的方式耦合到NVM位单元电路R00-Rnm。在这点上,如图14所示,为每个存储器行R0-Rn提供以输入电压形式接收输入矢量X0-Xn的字线WL0-WLn。为每个存储器列C0-Cm提供位线BL0-BLm。图3A中的NVM矩阵电路300与图14中的NVM矩阵电路1400之间的公共组件以公共元件编号图示,并且因此将不再描述。可以在图14中的NVM矩阵电路1400中执行与以上关于NVM矩阵电路300所述的读取和写入操作类似的读取和写入操作。
每个NVM位单元电路R00-Rnm具有表示所存储的存储器状态的电阻。在该示例中,基于NVM位单元电路R00-Rnm的存储器状态,它们的电阻是NVM位单元电路R00-Rnm的电阻的函数。NVM位单元电路R00-Rnm的电阻表示权重矩阵。每个NVM位单元电路R00-Rnm具有包括栅极节点G00-Gnm的晶体管,该栅极节点基于NVM位单元电路R00-Rnm位于其中的存储器行R0-Rn而耦合到相应字线WL0-WLn。每个NVM位单元电路R00-Rnm被配置为激活其半导体沟道以将MTJ电阻(即,电导)与同一存储器列C0-Cm中的其他激活的NVM位单元电路R00-Rnm并联地耦合在相应位线BL0-BLm与相应源极线SL0-SLm之间。电流I0-Im根据驱动到其相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的相应线电压V0-Vm除以相应存储器列C0-Cm中的NVM位单元电路R00-Rnm的并联沟道电阻而从相应源极线SL0-SLm流向输出节点1408(0)-1408(m)。如图14所示,NVM存储串电路1402(0)-1402(m)中的每个NVM位单元电路R00-Rnm包括耦合到对应位线BL0-BLm的源极节点(或漏极节点)和耦合到对应源极线SL0-SLm的漏极节点(或源极节点),以被配置为与相应存储器列C0-Cm中的其他NVM位单元电路R00-Rnm并联耦合。因此,例如,在相应源极线SL0上流向输出节点1408(0)的电流I0是点积乘法的总和的函数,这表示相应输入矢量X0-Xn乘以其相应的对应存储器列C0-Cm中的NVM位单元电路R00-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,NVM矩阵电路1400被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000351
其中:
i=存储器列0至m;
j=存储器行0至n;
VBL=电压Vi;以及
Rij=NVM位单元电路的沟道电阻。
如果字线WL0-WLm耦合到前神经元层并且输出节点1408(0)-1408(m)耦合到后神经元层,则NVM矩阵电路1400还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=NVM位单元电路的沟道电阻;以及
S=NVM存储串电路的源极线处的值。
图15是可以在不使用交叉连接的情况下执行矩阵乘法的另一示例性NVM矩阵电路1500的示意图,该NVM矩阵电路在该示例中采用作为NOR NVM闪存电路提供的基于OR的NVM存储串电路1502(0)-1502(m)。以这种方式,如下所述,总的沟道电导影响电流I0-Im以使其流向表示点积矩阵乘法计算的输出节点1508(0)-1508(m)。在这点上,NVM矩阵电路1500采用在“m+1”个存储器行R0-Rm中的NVM存储串电路1502(0)-1502(m),每个存储器行包括多个NVM位单元电路R00-Rmn。因此,NVM位单元电路R00-Rmn布置在存储器行R0-Rm和存储器列C0-Cn中。NVM矩阵电路1500包括用于每个存储器行R0-Rm的相应字线WL0-WLm。提供字线驱动器电路1506(0)-1506(m),每个字线驱动器电路被配置为在相应字线WL0-WLm上驱动相应电压V0-Vm。每个NVM存储串电路1502(0)-1502(m)的源极线SL0-SLm包括相应输出节点1508(0)-1508(m)。源极线SL0-SLm被配置为向相应输出节点1508(0)-1508(m)提供相应电流I0-Im,以将其作为输出矢量S0-Sm提供。例如,输出矢量S0-Sm可以是二进制后突触矢量。在该示例中,NVM矩阵电路1500还包括用于每个存储器列C0-Cn的相应位线BL0-BLn。例如,输入矢量X0-Xn可以是二进制前突触矢量。在该示例中,提供位线驱动器电路1510(0)-1510(n),每个位线驱动器电路被配置为以输入电压的形式在相应位线BL0-BLn上驱动相应输入矢量X0-Xn。然而,注意,替代地,设置在相应存储器行R0-Rm中的字线WL0-WLm可以被配置为接收输入矢量X,并且通过所施加的相应电压V0-Vm来向相应存储器列C0-Cn中的位线BL0-BLn施加相应固定电压。
继续参考图15,每个NVM位单元电路R00-Rmn具有表示所存储的存储器状态的电导。图15中的NVM位单元电路R00-Rmn的串联电导表示权重矩阵。在该示例中,每个NVM位单元电路R00-Rmn具有包括栅极节点G00-Gmn的晶体管,该栅极节点基于NVM位单元电路R00-Rmn位于其中的存储器行R0-Rm而耦合到相应字线WL0-WLm。每个NVM位单元电路R00-Rmn被配置为激活相应源极线SL0-SLm上的其相应半导体沟道以将其电导耦合在相应源极线SL0-SLm上。从相应源极线SL0-SLm上的相应NVM存储串电路1502(0)-1502(m)流向输出节点1508(0)-1508(m)的电流I0-Im是由字线驱动器电路1506(0)-1506(m)在相应字线WL0-WLm上驱动的相应电压V0-Vm除以NVM位单元电路R00-Rmn的总电导的函数。因此,例如,在相应源极线SL0上流向输出节点1508(0)的电流I0是点积乘法的总和的函数,这表示输入矢量X0-Xn乘以NVM位单元电路R00-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,NVM矩阵电路1500被配置为根据以下公式产生电流I0-Im
Figure BDA0002360030090000371
其中:
i=存储器行0至m;
j=存储器列0至n;
VBL=电压Vj;以及
Gij=NVM位单元电路的电导。
相应NVM位单元电路R00-Rmn的电导Gij与施加到字线WL0-WLm的电压V0-Vm相关。如果位线BL0-BLn耦合到前神经元层并且输出节点1508(0)-1508(m)耦合到后神经元层,则NVM矩阵电路1500还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔGij=η·Spost,i·Spost+1,j
其中:
Gij=NVM位单元电路的电导;以及
S=NVM存储串电路的源极线。
可以在图15的NVM矩阵电路1500中执行类似于上述关于图3A的NVM矩阵电路300所述的读取和写入操作。
除了如图15的NVM矩阵电路1500中所示的NOR闪存电路,还可以采用其他类型的NVM位单元电路。例如,图16是类似于图15中的NVM矩阵电路1500的不需要交叉连接的另一示例性矩阵电路1600的示意图。然而,图16中的NVM矩阵电路1600包括NOR NVM FeFET电路形式的NVM存储串电路1602(0)-1602(m)。在该示例中,每个NVM存储串电路1602(0)-1602(m)包括NVM Fe-FET电路形式的NVM矩阵电路R00-Rmn。图15中的NVM矩阵电路1500和图16中的NVM矩阵电路1600之间的公共组件以公共元件编号示出,并且因此将不再描述。可以在图16的NVM矩阵电路1600中执行与以上关于图3A的NVM矩阵电路300所述的读取和写入操作类似的读取和写入操作。
图17是可以在不使用交叉连接的情况下执行矩阵乘法的另一示例性NVM矩阵电路1700的示意图,该NVM矩阵电路在该示例中采用作为NOR NVM MRAM电路提供的基于OR的NVM存储串电路1702(0)-1702(m)。以这种方式,如下所述,NVM存储串电路1702(0)-1702(m)中的MTJ的总电导影响电流I0-Im以使其流向表示点积矩阵乘法计算的输出节点1708(0)-1708(m)。在这点上,NVM矩阵电路1700采用在“m+1”个存储器行R0-Rm中的NVM存储串电路1702(0)-1702(m),每个存储器行包括多个NVM位单元电路R00-Rmn。因此,NVM位单元电路R00-Rmn布置在存储器行R0-Rm和存储器列C0-Cn中。NVM矩阵电路1700包括用于每个存储器行R0-Rm的相应字线WL0-WLm。提供字线驱动器电路1706(0)-1706(m),每个字线驱动器电路被配置为在相应字线WL0-WLm上驱动相应电压V0-Vm。每个NVM存储串电路1702(0)-1702(m)的源极线SL0-SLm包括相应输出节点1708(0)-1708(m)。源极线SL0-SLm被配置为向相应输出节点1708(0)-1708(m)提供相应电流I0-Im,以将其作为输出矢量S0-Sm提供。例如,输出矢量S0-Sm可以是二进制后突触矢量。在该示例中,NVM矩阵电路1700还包括用于每个存储器列C0-Cn的相应位线BL0-BLn。在该示例中,提供位线驱动器电路1710(0)-1710(n),每个位线驱动器电路被配置为以输入电压的形式在相应位线BL0-BLn上驱动相应输入矢量X0-Xn。然而,注意,替代地,设置在相应存储器行R0-Rm中的字线WL0-WLm可以被配置为接收输入矢量X,并且通过所施加的相应电压V0-Vm来向相应存储器列C0-Cn中的位线BL0-BLn施加相应固定电压。例如,输入矢量X0-Xn可以是二进制前突触矢量。
继续参考图17,每个NVM位单元电路R00-Rmn具有表示所存储的存储器状态的电导。图17中的NVM位单元电路R00-Rmn的串联电导表示权重矩阵。在该示例中,每个NVM位单元电路R00-Rmn具有包括栅极节点G00-Gmn的晶体管,该栅极节点基于NVM位单元电路R00-Rmn位于其中的存储器行R0-Rm而耦合到相应字线WL0-WLm。每个NVM位单元电路R00-Rmn被配置为激活相应源极线SL0-SLm上的其相应半导体沟道以将其相应MTJ的电导耦合在相应源极线SL0-SLm上。从相应源极线SL0-SLm上的相应NVM存储串电路1702(0)-1702(m)流向输出节点1708(0)-1708(m)的电流I0-Im是由字线驱动器电路1706(0)-1706(m)在相应字线WL0-WLm上驱动的相应电压V0-Vm除以NVM位单元电路R00-Rmn的总电导的函数。因此,例如,在相应源极线SL0上流向输出节点1708(0)的电流I0是点积乘法的总和的函数,这表示输入矢量X0-Xn乘以NVM位单元电路R00-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,NVM矩阵电路1700被配置为根据以下公式产生电流I0-Im
Figure BDA0002360030090000391
其中:
i=存储器行0至m;
j=存储器列0至n;
VBL=电压Vj;以及
Gij=NVM位单元电路的电导。
相应NVM位单元电路R00-Rmn的电导Gij与施加到字线WL0-WLm的电压V0-Vm相关。如果位线BL0-BLn耦合到前神经元层并且输出节点1708(0)-1708(m)耦合到后神经元层,则NVM矩阵电路1700还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔGij=η·Spost,i·Spost+1,j
其中:
Gij=NVM位单元电路的电导;以及
S=NVM存储串电路的源极线。
图18是可以在不使用交叉连接的情况下执行矩阵乘法的另一示例性NVM矩阵电路1800的示意图,该NVM矩阵电路在该示例中采用作为NOR NVM RRAM电路提供的基于OR的NVM存储串电路1802(0)-1802(m)。以这种方式,如下所述,NVM存储串电路1802(0)-1802(m)的总电导影响电流I0-Im以使其流向表示点积矩阵乘法计算的输出节点1808(0)-1808(m)。在这点上,NVM矩阵电路1800采用在“m+1”个存储器行R0-Rm中的NVM存储串电路1802(0)-1802(m),每个存储器行包括多个NVM位单元电路R00-Rmn。因此,NVM位单元电路R00-Rmn布置在存储器行R0-Rm和存储器列C0-Cn中。NVM矩阵电路1800包括用于每个存储器行R0-Rm的相应字线WL0-WLm。提供字线驱动器电路1806(0)-1806(m),每个字线驱动器电路被配置为在相应字线WL0-WLm上驱动相应电压V0-Vm。每个NVM存储串电路1802(0)-1802(m)的源极线SL0-SLm包括相应输出节点1808(0)-1808(m)。源极线SL0-SLm被配置为向相应输出节点1808(0)-1808(m)提供相应电流I0-Im,以将其作为输出矢量S0-Sm提供。例如,输出矢量S0-Sm可以是二进制后突触矢量。在该示例中,NVM矩阵电路1800还包括用于每个存储器列C0-Cn的相应位线BL0-BLn。在该示例中,提供位线驱动器电路1810(0)-1810(n),每个位线驱动器电路被配置为以输入电压的形式在相应位线BL0-BLn上驱动相应输入矢量X0-Xn。然而,注意,替代地,设置在相应存储器行R0-Rm中的字线WL0-WLm可以被配置为接收输入矢量X,并且通过所施加的相应电压V0-Vm来向相应存储器列C0-Cn中的位线BL0-BLn施加相应固定电压。例如,输入矢量X0-Xn可以是二进制前突触矢量。
继续参考图18,每个NVM位单元电路R00-Rmn具有表示所存储的存储器状态的电导。图18中的NVM位单元电路R00-Rmn的串联电导表示权重矩阵。在该示例中,每个NVM位单元电路R00-Rmn具有包括栅极节点G00-Gmn的晶体管,该栅极节点基于NVM位单元电路R00-Rmn位于其中的存储器行R0-Rm而耦合到相应字线WL0-WLm。每个NVM位单元电路R00-Rmn被配置为激活相应源极线SL0-SLm上的其相应半导体沟道以将其相应MTJ的电导耦合在相应源极线SL0-SLm上。从相应源极线SL0-SLm上的相应NVM存储串电路1802(0)-1802(m)流向输出节点1808(0)-1808(m)的电流I0-Im是由字线驱动器电路1806(0)-1806(m)在相应字线WL0-WLm上驱动的相应电压V0-Vm除以NVM位单元电路R00-Rmn的总电导的函数。因此,例如,在相应源极线SL0上流向输出节点1808(0)的电流I0是点积乘法的总和的函数,这表示输入矢量X0-Xn乘以NVM位单元电路R00-R0n中的对应存储器状态。电流I0-Im可以是点积的总和的模拟表示,其可以被转换为二进制值。换言之,NVM矩阵电路1800被配置为根据以下公式产生电流I0-Im
Figure BDA0002360030090000411
其中:
i=存储器行0至m;
j=存储器列0至n;
VBL=电压Vj;以及
Gij=NVM位单元电路的电导。
相应NVM位单元电路R00-Rmn的电导Gij与施加到字线WL0-WLm的电压V0-Vm相关。如果位线BL0-BLn耦合到前神经元层并且输出节点1808(0)-1808(m)耦合到后神经元层,则NVM矩阵电路1800还被配置为通过根据以下公式支持权重更新的反向传播来训练NVM位单元电路R00-Rmn的沟道电阻:
ΔGij=η·Spost,i·Spost+1,j
其中:
Gij=NVM位单元电路的电导;以及
S=NVM存储串电路的源极线。
上面的用于NVM矩阵电路的概念也可以用于MLC NVM矩阵电路以执行具有多位输入矢量的矩阵计算。在本文中公开的示例性方面,并且如下面将更详细地讨论的,提供了MLC NVM矩阵电路,该MLC NVM矩阵电路包括组织在相应存储器行中的多个NVM存储串电路。每个NVM存储串电路包括多个MLC NVM存储电路。因此,每个与NVM存储串电路相关联的多个MLC NVM存储电路在MLC NVM矩阵电路的相应存储器行和列中被布置和可寻址。每个MLCNVM存储电路包括多个NVM位单元电路,每个NVM位单元电路被配置为存储1位相应存储器状态。给定MLC NVM存储电路中的NVM位单元电路的相应存储器状态在MLC NVM存储电路中提供多位存储器状态。因此,例如,MLC NVM矩阵电路可以形成m×n的MLC NVM矩阵电路,其中“m”表示所提供的NVM存储串电路的存储器行数,而“n”表示相应存储器列中提供的每个NVM存储串电路内的MLC NVM存储电路数。每个MLC NVM存储电路根据其相应MLC NVM存储电路中的NVM位单元电路的个体的所存储的存储器状态来存储多位存储器状态。提供多个位线,每个位线被配置为耦合到相应NVM存储串电路。提供多个源极线,每个源极线被配置为耦合到相应NVM存储串电路。每个MLC NVM存储电路具有多个由其NVM位单元电路的电阻表示的所存储的存储器状态。每个MLC NVM存储电路与其相应存储器行中的其他MLC NVM存储电路一起耦合到相应源极线。每个NVM位单元电路包括晶体管,该晶体管的栅极节点耦合到被配置为接收例如1×n大小的多位输入矢量的多个字线中的相应字线。输入矢量中的每个条目表示多位输入,该多位输入被配置为耦合到m×n个字线,该m×n个字线耦合到相应MLC NVM存储电路中的NVM位单元电路的相应栅极节点并且控制给定NVM位单元电路的电阻是否对其相应MLC NVM存储电路的整体电阻做出贡献。例如,输入矢量可以是例如前突触加权矢量。每个源极线耦合到相应输出节点,其中所有NVM存储串电路的源极线可以共同提供输出矢量。例如,输出矢量可以是后突触矢量。
为了将1×n大小的多位输入矢量乘以由多个NVM存储串电路形成的m×n的MLCNVM矩阵电路,线电压被施加到NVM存储串电路的位线,同时表示输入矢量的输入电压被施加到n×m个字线,以被施加到相应MLC NVM存储电路中的NVM位单元电路的相应栅极节点。这导致基于每个MLC NVM存储电路总电阻(基于其相应NVM位单元电路的个体电阻)对其相应源极线的加权求和贡献,在每个源极线上生成求和电流。每个输出节点形成输出矢量,该矢量是1×n个多位输入矢量乘以m×n的MLC NVM矩阵电路的一(1)个列n的结果。通过包括耦合到字线的晶体管的MLC NVM存储电路的NVM位单元电路(该晶体管控制由其相应NVM存储串电路在其相应源极线上贡献的电阻),不必提供字线与位线之间的交叉连接,这可以避免在MLC NVM矩阵电路中产生潜行路径电流。字线和位线通过其相应MLC NVM存储电路的NVM位单元电路彼此隔离。
在这点上,图19是可以在不使用交叉连接的情况下执行具有多位输入矢量的矩阵乘法的示例性MLC NVM矩阵电路1900的示意图。MLC NVM矩阵电路1900采用在“m+1”个存储器行R0-Rm中的NVM存储串电路1902(0)-1902(m),每个存储器行包括多个MLC NVM存储电路MLC-R00-MLC-Rmn。在该示例中,MLC NVM存储电路MLC-R00-MLC-Rmn是NAND MLC NVM闪存电路。然而,NVM存储串电路1902(0)-1902(m)可以被提供为其他类型的NVM矩阵电路,如下面在其他方面更详细地讨论的。每个相应NVM存储串电路1902(0)-1902(m)中的MLC NVM存储电路MLC-R00-MLC-Rmn布置在存储器行R0-Rm和存储器列C0-Cn中。MLC NVM矩阵电路1900包括用于每个存储器行R0-Rm的相应位线BL0-BLm。提供位线驱动器电路1906(0)-1906(m),每个位线驱动器电路被配置为在相应位线BL0-BLm上驱动相应线电压V0-Vm。还提供了源极线SL0-SLm,每个源极线耦合到相应输出节点1908(0)-1908(m)。NVM存储串电路1902(0)-1902(m)耦合在每个相应存储器行R0-Rm中的对应位线BL0-BLm与对应源极线SL0-SLm之间。源极线SL0-SLm被配置为当其相应MLC NVM存储电路MLC-R00-MLC-Rmn被激活时,将相应电流I0-Im携带到相应输出节点1908(0)-1908(m)作为输出矢量S0-Sm。例如,输出矢量S0-Sm可以是二进制后突触矢量。
继续参考图19,MLC NVM矩阵电路1900还包括用于每个存储器列C0-Cn的相应字线WL00-WLm0-WL00-WLmn。提供字线驱动器电路1910(0)-1910(n),每个字线驱动器电路被配置为在相应字线WL00-WLm0-WL00-WLmn上驱动包括多个输入电压的相应多位输入矢量X0-Xn。多位输入矢量X0-Xn的每个列C0-Cn包括与其相应存储器列C0-Cn的多个字线WL00-WLm0-WL00-WLmn相对应的多个信号。如将在下面更详细地讨论的,字线WL00-WLm0-WL00-WLmn耦合到给定存储器列C0-Cn中的MLC NVM存储电路MLC-R00-MLC-Rmn的相应输入G00-Gmn,以控制施加到相应源极线SL0-SLm的MLC NVM存储电路MLC-R00-MLC-Rmn的电阻。例如,输入矢量X0-Xn可以是二进制前突触数据矢量。
继续参考图19,MLC NVM矩阵电路1900还包括耦合在相应位线BL0-BLm与NVM存储串电路1902(0)-1902(m)之间的第一存取晶体管1912(0)-1912(m)。第一存取晶体管1912(0)-1912(m)每个包括耦合到相应第一存取线1914的第一存取栅极节点G,该第一存取线1914被配置为由第一存取线驱动器电路1916用第一存取电压来驱动。第一存取晶体管1912(0)-1912(m)每个被配置为控制是否将施加在相应位线BL0-BLm上的对应线电压V0-Vm施加到对应存储器行R0-Rm中的相应NVM存储串电路1902(0)-1902(m)。第一存取晶体管1912(0)-1912(m)被配置为响应于由第一存取线驱动器电路1916驱动到第二存取线1920上的第一存取晶体管1912(0)-1912(m)的第一存取栅极节点G的第一存取信号(电压)足以导通第一存取晶体管1912(0)-1912(m)而在相应位线BL0-BLm上传递线电压V0-Vm。MLC NVM矩阵电路1900还包括耦合在相应NVM存储串电路1902(0)-1902(m)与耦合到输出节点1908(0)-1908(m)的源极线SL0-SLm之间的的第二存取晶体管1918(0)-1918(m)。第二存取晶体管1918(0)-1918(m)每个被配置为响应于由第二存取线驱动器电路1922驱动到第二存取线1920上的第二存取晶体管1918(0)-1918(m)的第二存取栅极节点G的第二存取信号(电压)足以导通第二存取晶体管1918(0)-1918(m)而将相应NVM存储串电路1902(0)-1902(m)耦合到相应源极线SL0-SLm和相应输出节点1908(0)-1908(m)。如图19所示,字线WL00-WLm0-WL00-WLmn与位线BL0-BLm之间没有交叉耦合。NVM存储串电路1902(0)-1902(m)的存取晶体管1912(0)-1912(m)、1918(0)-1918(m)可以在字线WL00-WLm0-WL00-WLmn与位线BL0-BLm之间提供进一步的隔离。
继续参考图19,在该示例中,MLC NVM矩阵电路1900中的每个MLC NVM存储电路MLC-R00-MLC-Rmn是不需要电源来保持数据的NVM闪存电路。MLC NVM矩阵电路1900中的每个MLC NVM存储电路MLC-R00-MLC-Rmn包括每个彼此耦合以提供每个MLC NVM存储电路MLC-R00-MLC-Rmn的多个NVM位单元电路。这在图20A中通过示例示出。图20A是可以用于图19中的MLCNVM矩阵电路1900中的任何MLC NVM存储电路MLC-R00-MLC-Rmn中的不同类型的MLC NVM存储电路MLC-R(1)-MLC-R(6)的示意图。MLC NVM存储电路MLC-R(1)、MLC-R(2)分别包括NANDNVM闪存电路和NAND NVM FeFET电路。MLC NVM存储电路MLC-R(3)-MLC-R(6)分别包括ANDNVM闪存电路、AND NVM FeFET电路、AND NVM RRAM电路和AND NVM MRAM电路。
以MLC NVM存储电路MLC-R(1)为例,假定在图19中的MLC NVM矩阵电路1900中采用MLC NVM存储电路MLC-R(1)作为MLC NVM存储电路MLC-R00。如图20A所示,MLC NVM存储电路MLC-R(1)包括多个NVM位单元电路BC0-BCn。NVM位单元电路BC0-BCn每个以串联耦合串方式彼此耦合,其源极节点S耦合到相邻的NVM位单元电路BC0-BCn的漏极节点D。MLC NVM存储电路MLC-R(1)中的端部NVM位单元电路BC0、BCn可以耦合到图19所示的相应存取晶体管1912(0)、1918(0)。每个NVM位单元电路BC0-BCn具有表示所存储的存储器状态的电阻。每个NVM位单元电路BC0-BCn具有包括栅极节点G的晶体管,该栅极节点基于NVM位单元电路BC0-BCn位于其中的存储器列C0-Cn而耦合到相应字线WL00-WLn0。每个NVM位单元电路BC0-BCn被配置为由相应字线WL00-WLm0上的信号激活,以激活半导体沟道C以将其电阻耦合在其存储器行R0中的源极线SL0上。NVM位单元电路BC0-BCn中的集体存储器状态形成存储在NVM存储串电路1902(0)中的多位数据矢量。如图20A所示,在字线WL00-WLm0与位线BL0之间没有交叉耦合,在所有字线WL00-WLm0与相应位线BL0-BLm之间也是如此。
再次参考图19,如将在下面更详细地讨论的,当线电压被施加到位线BL0并且存取电压被施加到存取晶体管1912(0)-1912(m)的存取栅极节点G以足以激活存取晶体管1912(0)-1912(m)的半导体沟道C时,NVM存储串电路1902(0)耦合到位线BL0和源极线SL0。输入电压作为多位输入矢量X0-Xn被施加到字线WL00-WLm0和相应MLC NVM存储电路MLC-R00-MLC-R0n的输入G00-G0n以作为多位输入矢量X0-Xn来控制MLC NVM存储电路MLC-R00-MLC-R0n中每个中的相应NVM位单元电路BC0-BCn的激活,其中多位输入矢量X0-Xn中每个条目的大小为1×m。当被激活时,MLC NVM存储电路MLC-R00-MLC-R0n中的每个中的NVM位单元电路BC0-BCn将其电阻耦合到耦合到其相应MLC NVM存储电路MLC-R00-MLC-R0n的源极线SL0。MLC NVM存储电路MLC-R00-MLC-R0n的电阻是其相应NVM位单元电路BC0-BCn的所存储的存储器状态的函数。因此,MLC NVM存储电路MLC-R00-MLC-R0n的电阻可以表示权重矢量。在相应源极线SL0上流向输出节点1908(0)的电流I0是相应多位输入矢量X0-Xn与NVM存储串电路1902(0)的NVM位单元电路BC0-BCn中的对应存储器状态相乘的点积乘法的总和的函数。因此,参考图19,用于图19中的MLC NVM矩阵电路1900中的NVM存储串电路1902(0)-1902(m)的所有MLC NVM存储电路MLC-R00-MLC-R0n可以表示多位权重矩阵。从相应NVM存储串电路1902(0)-1902(m)的相应源极线SL0-SLm流向输出节点1908(0)-1908(m)的电流I0-Im是由位线驱动器电路1906(0)-1906(m)在相应源极线SL0-SLm上驱动的相应线电压V0-Vm除以NVM存储串电路1902(0)-1902(m)的MLC NVM存储电路MLC-R00-MLC-R0n的总电阻的函数。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,图19中的MLC NVM矩阵电路1900被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000471
其中:
i=存储器行0至m;
j=存储器列0至n;
VBL=电压Vi;以及
Rij=MLC NVM存储电路的电阻。
因此,继续参考图19,MLC NVM矩阵电路1900被配置为执行作为相应存储器状态而存储在相应MLC NVM存储电路MLC-R00-MLC-Rmm中的每个中的1×n个权重矢量中的m个与相应n×1个多位输入矢量X0-Xn的同时的矩阵乘法。根据以上提供的电流公式,这些矢量乘法的点积根据在输出节点1908(0)-1908(m)处生成的电流I0-Im的相应幅度来提供。
此外,如果字线WL00-WLmn耦合到前神经元层并且输出节点1908(0)-1908(m)耦合到后神经元层,则MLC NVM矩阵电路1900还被配置为通过根据以下公式支持权重更新的反向传播来训练MLC NVM存储电路MLC-R00-MLC-Rmn的电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=MLC NVM存储电路的电阻;以及
S=MLC NVM存储电路的源极线处的值。
作为存储在MLC NVM存储电路MLC-R00-MLC-Rmn中的存储器状态而提供的MLC NVM矩阵电路1900的权重矩阵可以在写入操作中被设置为期望的存储器状态,以提供期望的权重矩阵。例如,为了将逻辑“0”写入MLC NVM存储电路MLC-R25中的NVM位单元电路BC5,由位线驱动器电路1906(2)在存储器行R2的位线BL2上施加0V或5V的线电压,这取决于MLC NVM存储电路MLC-R25分别存储具有还是不具有电荷陷阱的存储器状态。在耦合到输出节点1908(2)的源极线SL2上施加5V的线电压。将10V的输入电压施加到字线WL25以施加到MLC NVM存储电路MLC-R25的输入G25和NVM位单元电路BC5的栅极G,以将MLC NVM存储电路MLC-R25中的NVM位单元电路BC5的存储器状态编程为逻辑“0”存储器状态。类似地,为了将逻辑“1”写入MLCNVM存储电路MLC-R25中的NVM位单元电路BC5,由位线驱动器电路1906(2)在存储器行R2的位线BL2上施加0V或5V的线电压,这取决于MLC NVM存储电路MLC-R25分别存储具有还是不具有电荷陷阱的存储器状态。在耦合到输出节点1908(2)的源极线SL2上施加5V的线电压。将10V的输入电压施加到字线WL25以施加到MLC NVM存储电路MLC-R25的输入G25和NVM位单元电路BC5的栅极G,以将MLC NVM存储电路MLC-R25中的NVM位单元电路BC5的存储器状态编程为逻辑“1”存储器状态。
执行读取操作以引起图19中的MLC NVM矩阵电路1900执行矩阵计算。将多位输入矢量X0-Xn乘以NVM存储串电路1902(0)-1902(m)中的每个的存储器状态,以在耦合到输出节点1908(0)-1908(m)的源极线SL0-SLm上生成相应电流I0-Im,在该示例中,所有MLC NVM存储电路MLC-R00-MLC-Rmn被激活。在这点上,在该示例中,将4.5V的输入电压作为输入矢量X0-Xn施加到相应字线WL00-WLmn中的每个,以引起MLC NVM存储电路MLC-R00-MLC-Rmn中的每个的电阻串联相加以对相应源极线SL0-SLm的整体串联电阻做出贡献。它们的电阻对相应源极线SL0-SLm的整体串联电阻做出贡献,并且是存储在MLC NVM存储电路MLC-R00-MLC-Rmn的NVM位单元电路BC0-BCn中的存储器状态的函数。输出节点1908(0)-1908(m)处的电流I0-Im是多位输入矢量X0-Xn与作为权重矢量的MLC NVM存储电路MLC-R00-MLC-Rmn的相应存储器状态相乘的点积乘法的总和的函数,MLC NVM存储电路中的每个在相应NVM存储串电路1902(0)-1902(m)中。
图19中的MLC NVM矩阵电路1900中的MLC NVM存储电路MLC-R00-MLC-Rmn可以作为除了NAND闪存电路之外的其他类型的NVM电路提供。例如,图20A还以MLC NVM存储电路MLC-R00为例示出了使用其他类型的NVM电路作为MLC NVM存储电路MLC-R00-MLC-Rmn中的NVM位单元电路BC0-BCn。如图20A所示,MLC NVM存储电路MLC-R00可以是采用NAND NVM FeFET电路的MLC NVM存储电路MLC-R(2)。MLC NVM存储电路MLC-R00可以是采用AND NVM闪存电路的MLCNVM存储电路MLC-R(3)。MLC NVM存储电路MLC-R00可以是采用AND FeFET电路的MLC NVM存储电路MLC-R(4)。MLC NVM存储电路MLC-R00可以是采用AND RRAM电路的MLC NVM存储电路MLC-R(5)。MLC NVM存储电路MLC-R00可以是采用AND MRAM电路的MLC NVM存储电路MLC-R(6)。图20B还以MLC NVM存储电路MLC-R00为例示出了使用其他类型的NVM电路作为MLC NVM存储电路MLC-R00-MLC-Rmn中的NVM位单元电路BC0-BCn。如图20B所示,MLC NVM存储电路MLC-R00可以是采用NOR NVM闪存电路的MLC NVM存储电路MLC-R(7)。MLC NVM存储电路MLC-R00可以是采用NOR NVM FeFET电路的MLC NVM存储电路MLC-R(8)。MLC NVM存储电路MLC-R00可以是采用NOR MRAM电路的MLC NVM存储电路MLC-R(9)。MLC NVM存储电路MLC-R00可以是采用NOR RRAM电路的MLC NVM存储电路MLC-R(10)。上面先前已经讨论了关于这些不同类型的NAND和ANDNVM电路中的每个的细节,并且因此将不再重复。
图21A是图示在图19的MLC NVM矩阵电路1900中执行读取操作的示例性过程2100的流程图,上面讨论了对图3A中的NVM矩阵电路300的读取操作的示例。在这点上,参考图19和21A,过程2100包括在耦合到多个NVM存储串电路1902(0)-1902(m)中的对应NVM存储串电路1902(0)-1902(m)的多个位线BL0-BLm中的至少一个位线BL0-BLm上施加线电压,以将线电压电耦合到耦合到多个位线BL0-BLm中的对应位线BL0-BLm的对应NVM存储串电路1902(0)-1902(m)(图21A中的框2102)。多个NVM存储串电路1902(0)-1902(m)中的每个包括在多个位线BL0-BLm中的多个MLC NVM存储电路MLC-Rx0-MLC-Rxn,每个MLC NVM存储电路具有表示NVM存储电路MLC-Rx0-MLC-Rxn中的所存储的存储器状态的电阻以形成用于对应的NVM存储串电路1902(0)-1902(m)的数据矢量。过程2100还涉及在耦合到多个NVM存储串电路1902(0)-1902(m)中的对应NVM存储串电路1902(0)-1902(m)的多个源极线SL0-SLm中的至少一个源极线SL0-SLm上施加第二线电压,以将第二线电压电耦合到耦合到多个源极线SL0-SLm中的对应源极线SL0-SLm的对应NVM存储串电路1902(0)-1902(m)(图21A中的框2104)。过程2100还涉及在多个字线WL00-WLmn上施加表示多位输入矢量X0-Xn的多个输入电压,多个字线WL00-WLmn中的每个字线WL00-WLmn耦合到多个NVM存储串电路1902(0)-1902(m)中的每个NVM存储串电路中的MLC NVM存储电路MLC-R00-MLC-Rmn的对应输入节点G00-Gmn,以将MLC NVM存储电路MLC-R00-MLC-Rmn电耦合到源极线SL0-SLm以将MLC NVM存储电路MLC-R00-MLC-Rmn的电阻耦合到源极线SL0-SLm(图21A中的框2106)。
图21B是图示在图19中的MLC NVM矩阵电路1900中执行写入操作的示例性过程2110的流程图。在这点上,参考图19和21B,过程2110包括将线电压施加到耦合到多个NVM存储串电路1902(0)-1902(m)中的对应NVM存储串电路1902(0)-1902(m)的多个位线BL0-BLm中的位线BL0-BLm(图21B中的框2112)。过程2110还包括将第二线电压施加到耦合到对应NVM存储串电路1902(0)-1902(m)的多个源极线SL0-SLm中的源极线SL0-SLm(图21B中的框2114)。过程2110还涉及将写入激活电压施加到对应NVM存储串电路1902(0)-1902(m)中的MLC NVM存储电路MLC-R00-MLC-Rmn的输入G00-Gmn,以基于施加到MLC NVM存储电路MLC-R00-MLC-Rmn的输入G00-Gmn的写入激活电压来写入存储器状态(图21B中的框2116)。
图22图示了被示出为MLC NVM矩阵电路2200的MLC NVM矩阵电路的另一示例。在该示例中,MLC NVM矩阵电路2200包括AND NVM电路形式的NVM存储串电路2202(0)-2202(m),AND NVM电路设置在相应存储器列C0-Cm中以提供MLC NVM位单元电路MLC-R00-MLC-Rnm。图19中的MLC NVM矩阵电路1900与图22中的MLC NVM矩阵电路2200之间的公共组件以公共元件编号示出,并且因此将不再描述。可以在图22中的MLC NVM矩阵电路2200中执行与以上关于图19中的MLC NVM矩阵电路1900所述的操作类似的读取和写入操作。
MLC NVM存储电路MLC-R00-MLC-Rnm中的每个NVM位单元电路具有表示其存储的存储器状态的电阻。MLC NVM存储电路MLC-R00-MLC-Rnm的总电阻表示权重矩阵。如使用图22中的示例所示,每个MLC NVM存储电路R00-Rnm具有输入G00-Gnm,该输入基于MLC NVM存储电路MLC-R00-MLC-Rnm位于其中的存储器行R0-Rn而耦合到相应字线WL00-WLnm。每个MLC NVM存储电路MLC-R00-MLC-Rnm被配置为激活其半导体沟道以将其电阻(即,电导)与同一存储器列C0-Cm中的其他激活的NVM位单元电路R00-Rnm并联地耦合在相应位线BL0-BLn与相应源极线SL0-SLm之间。电流I0-Im根据驱动到其相应存储器列C0-Cm中的MLC NVM存储电路MLC-R00-MLC-Rnm的相应线电压V0-Vm除以相应存储器列C0-Cm中的MLC NVM存储电路MLC-R00-MLC-Rnm的并联电阻而从相应源极线SL0-SLm流向输出节点2208(0)-2208(m)。在相应源极线SL0上流向输出节点2208(0)的电流I0例如是点积的总和的函数,这表示相应多位输入矢量X0-Xn乘以其相应的对应存储器列C0-Cm中的MLC NVM存储电路MLC-R00-MLC-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,MLC NVM矩阵电路2200被配置为根据以下公式在输入层上产生电流I0-Im
Figure BDA0002360030090000521
其中:
i=存储器列0至m;
j=存储器行0至n;
VBL=电压Vi;以及
Rij=MLC NVM存储电路的电阻。
如果字线WL00-WLnm耦合到前神经元层并且输出节点2208(0)-2208(m)耦合到后神经元层,则MLC NVM矩阵电路2200还被配置为通过根据以下公式支持权重更新的反向传播来训练MLC NVM存储电路MLC-R00-MLC-Rnm的电阻:
ΔRij=η·Spost,i·Spost+1,j
其中:
Rij=MLC NVM存储电路的电阻;以及
S=NVM存储串电路的源极线处的值。
包括图19中的MLC NVM矩阵电路1900和图22中的MLC NVM矩阵电路2200在内的MLCNVM矩阵电路可以被采用并且重新配置以提供重新配置的神经元路径以支持针对不同神经元层和神经元的通用的深度学习或人工智能(AI)任务。在这点上,图23是包括被配置为如图22所示的n×m的MLC NVM矩阵电路2200(1)的图22中的MLC NVM矩阵电路2200的MLC NVM矩阵系统2300的示例。提供另一MLC NVM矩阵电路2200(2),其类似于MLC NVM矩阵电路2200(1),但是被配置为m×k的MLC NVM矩阵电路。MLC NVM矩阵电路2200(1)、2200(2)可以耦合在一起以形成具有提供中间神经元2204的输出矢量S0-Sm的相应的第一神经元层2203(1)和第二神经元层2203(2)。这允许作为n×m的MLC NVM矩阵电路2200(1)的矩阵计算的结果的点积输出矢量S0-Sm被用作MLC NVM矩阵电路2200(2)的输入矢量X0-Xn以产生点积输出矢量S0-Sk。因此,耦合到另一MLC NVM矩阵电路2200(2)的MLC NVM矩阵电路2200(1)被配置为根据以下公式在隐藏层上产生电流I0-Ik
Figure BDA0002360030090000531
其中:
h=存储器行0至m;
l=存储器列0至k;
VBL=位线BL0'-BLm'的电压;以及
Rhl=MLC NVM矩阵电路2200(1)中的MLC NVM存储电路的电阻。
可以在图23中的MLC NVM矩阵电路2200(1)、2200(2)中执行的矩阵计算的操作和写入操作可以如先前针对图22中的MLC NVM矩阵电路2200所述。
图24是可以在不需要使用交叉连接的情况下执行矩阵乘法的另一示例性MLC NVM矩阵电路2400的示意图,该MLC NVM矩阵电路采用NOR NVM存储串电路2402(0)-2402(m)。以这种方式,如下所述,总电导影响电流I0-Im以使其流向表示点积矩阵乘法计算的输出节点2408(0)-2408(m)。在这点上,MLC NVM矩阵电路2400采用在“n+1”个存储器行R0-Rn中的NVM存储串电路2402(0)-2402(m),每个行包括多个MLC NVM位单元电路R00-Rnm。因此,MLC NVM位单元电路R00-Rnm布置在存储器行R0-Rn和存储器列C0-Cm中。MLC NVM矩阵电路2400包括用于每个存储器行R0-Rn的相应字线WL00-WLnm。每个NVM存储串电路2402(0)-2402(m)的源极线SL0-SLm包括相应输出节点2408(0)-2408(m)。源极线SL0-SLm被配置为向相应输出节点2408(0)-2408(m)提供相应电流I0-Im,以将其作为输出矢量S0-Sm提供。例如,输出矢量S0-Sm可以是二进制后突触矢量。在该示例中,MLC NVM矩阵电路2400还包括用于每个存储器列C0-Cm的相应位线BL0-BLm。在该示例中,提供位线驱动器电路2410(0)-2410(n),每个位线驱动器电路2410(0)-2410(n)被配置为以输入电压的形式在相应位线BL0-BLm上驱动相应输入矢量X0-Xn。例如,输入矢量X0-Xn可以是二进制前突触矢量。然而,注意,替代地,设置在相应存储器行R0-Rn中的字线WL00-WLnm可以被配置为接收输入矢量X,并且通过所施加的相应电压V0-Vm来向相应存储器列C0-Cn中的位线BL0-BLn施加相应固定电压。
继续参考图24,每个MLC NVM存储电路MLC-R00-MLC-Rnm具有表示所存储的存储器状态的电导。图24中的MLC NVM存储电路R00-Rnm的串联电导表示权重矩阵。在该示例中,每个MLC NVM存储电路R00-Rnm具有输入G00-Gmn,该输入基于MLC NVM存储电路MLC-R00-MLC-Rnm位于其中的存储器列C0-Cm而耦合到相应字线WL00-WLnm。每个MLC NVM存储电路MLC-R00-MLC-Rnm被配置为激活相应源极线SL0-SLm上的其相应半导体沟道以将其电导耦合在相应源极线SL0-SLm上。从相应源极线SL0-SLm上的相应NVM存储串电路2402(0)-2402(m)流向输出节点2408(0)-2408(m)的电流I0-Im是在相应字线WL00-WLnm上驱动的相应电压V0-Vm除以MLC NVM存储电路MLC-R00-MLC-Rnm的总电导的函数。因此,例如,在相应源极线SL0上流向输出节点2408(0)的电流I0是点积乘法的总和的函数,这表示输入矢量X0-Xn乘以MLC NVM存储电路MLC-R00-MLC-R0n中的对应存储器状态。电流I0-Im可以是点积乘法的总和的模拟表示,其可以被转换为二进制值。换言之,MLC NVM矩阵电路2400被配置为根据以下公式产生电流I0-Im
Figure BDA0002360030090000551
其中:
i=存储器行0至n;
j=存储器列0至m;
VBL=电压Vj;以及
Gij=MLC NVM存储电路的电导。
相应MLC NVM存储电路R00-Rnm的电导Gij与施加到字线WL00-WLnm的电压V0-Vm相关。如果位线BL0-BLm耦合到前神经元层并且输出节点2408(0)-2408(m)耦合到后神经元层,则MLC NVM矩阵电路2400还被配置为通过根据以下公式支持权重更新的反向传播来训练MLCNVM存储电路MLC-R00-MLC-Rnm的电阻:
ΔGij=η·Spost,i·Spost+1,j
其中:
Gij=MLC NVM存储电路的电导;以及
S=NVM存储串电路的源极线。
图25是包括被配置为如图24所示的n×m的MLC NVM矩阵电路2400(1)的图24中的MLC NVM矩阵电路2400的MLC NVM矩阵系统2500的示例。提供另一MLC NVM矩阵电路2400(2),其类似于MLC NVM矩阵电路2400(1),但是被配置为m×k的MLC NVM矩阵电路。MLC NVM矩阵电路2400(1)、2400(2)可以耦合在一起以形成具有提供中间神经元2404的输出矢量S0-Sm的相应的第一神经元层2403(1)和第二神经元层2403(2)。这允许作为n×m的MLC NVM矩阵电路2400(1)的矩阵计算的结果的点积输出矢量S0-Sm被用作MLC NVM矩阵电路2400(2)的输入矢量X0-Xm以产生点积输出矢量S0-Sk。因此,耦合到另一MLC NVM矩阵电路2400(2)的MLC NVM矩阵电路2400(1)被配置为根据以下公式在隐藏层上产生电流I0-Ik
Figure BDA0002360030090000561
其中:
h=存储器行0至m;
l=存储器列0至k;
VBL=字线WL00-WLkm的电压;以及
Rhl=MLC NVM矩阵电路2400(1)中的MLC NVM存储电路的电阻。
可以在图25中的MLC NVM矩阵电路2400(1)、2400(2)中执行的矩阵计算和写入操作的操作可以如先前针对图24中的MLC NVM矩阵电路2400所述。
在另一方面,提供了一种MLC NVM矩阵电路。MLC NVM矩阵电路包括用于施加表示多位输入矢量的多个输入电压的多个装置。MLC NVM矩阵电路还包括用于施加多个线电压的多个装置。MLC NVM矩阵电路还包括用于提供表示输出矢量的多个输出电流的多个装置。MLC NVM矩阵电路还包括多个NVM存储串装置,每个NVM存储串装置电耦合到用于施加多个输入电压的多个装置中的用于施加输入电压的对应装置和用于提供多个输出电流的多个装置中的用于提供输出电流的对应装置。NVM存储串装置的非限制性示例包括图19中的MLCNVM矩阵电路1900中的NVM存储串电路1902(0)-1902(m)、图22中的MLC NVM矩阵电路2200中的NVM存储串电路2202(0)-2202(m)、和图24中的MLC NVM矩阵电路2400中的NVM存储串电路2402(0)-2402(m)。多个NVM存储串装置中的每个包括多个MLC NV装置,多个MLC NV装置用于存储多位存储器状态并且每个具有表示所存储的多位存储器状态的电阻,以形成用于多个NVM存储串装置中的对应NVM存储串装置的数据矢量。用于存储多位存储器状态的多个MLC NV装置中的每个包括用于将用于存储1位存储器状态的多个NV位装置的电阻电耦合到用于提供多个输出电流的多个装置中的用于提供输出电流的装置的装置、以及用于控制用于存储1位存储器状态的多个NV位装置的电阻到用于提供多个输出电流的多个装置中的用于提供输出电流的装置的耦合的装置。MLC NV装置的非限制性示例包括图19中的MLC NVM矩阵电路1900中的MLC NVM存储电路MLC-R00-MLC-Rmn、图20A和20B的MLC NVM存储电路MLC-R(1)-MLC-R(10)、图22中的MLC NVM矩阵电路2200中的MLC NVM存储电路MLC-R00-MLC-Rnm、和图24中的MLC NVM矩阵电路2400中的MLC NVM存储电路MLC-R00-MLC-Rnm
图26是可以包括具有MLC NVM矩阵电路2604的专用MLC NVM矩阵电路芯片2602的示例性芯片封装2600的框图,该MLC NVM矩阵电路2604用于在不需要交叉连接的情况下执行矩阵乘法并且根据本文中公开的各方面包括但不限于图19-25中的矩阵电路。在这点上,可以包括片上系统(SoC)2606,SoC 2606可以包括微处理器和其他支持电路以提供计算机系统。可以在芯片封装2600中提供诸如动态RAM(DRAM)存储器芯片等外部系统存储器芯片2608,并且通过硅通孔(TSV)2610将其耦合到SoC 2606。专用MLC NVM矩阵电路芯片2602也可以通过TSV 2610耦合到SoC 2606。可以在SoC 2606上提供焊料凸点2612,以能够将芯片封装2600焊接结合到电路板。系统存储器芯片2608可以通过专用本地总线连接到专用MLCNVM矩阵电路芯片2602以提高性能。专用MLC NVM矩阵电路芯片2602也可以嵌入到SoC 2606中以节省功率并且提高性能。
根据本文中公开的各方面,可以在任何基于处理器的设备中提供或集成采用MLCNVM存储电路的MLC NVM矩阵电路,用于在不需要交叉连接的情况下执行多位矩阵计算。示例包括但不限于机顶盒、娱乐单元、导航设备、通信设备、固定位置数据单元、移动位置数据单元、全球定位系统(GPS)设备、移动电话、蜂窝电话、智能电话、会话发起协议(SIP)电话、平板计算机、平板手机、服务器、计算机、便携式计算机、移动计算设备、可穿戴计算设备(例如,智能手表、健康或健身跟踪器、眼镜等)、台式计算机、个人数字助理(PDA)、显示器、计算机显示器、电视、调谐器、收音机、卫星广播、音乐播放器、数字音乐播放器、便携式音乐播放器、数字视频播放器、视频播放器、数字视频光盘(DVD)播放器、便携式数字视频播放器、汽车、车辆组件、航空电子系统、无人机和多旋翼飞行器。
在这点上,图27图示了可以被包括在IC 2702中的基于处理器的系统2700的示例。基于处理器的系统2700可以包括采用MLC NVM存储电路的MLC NVM矩阵电路2704,用于在不需要交叉连接的情况下执行多位矩阵计算并且符合本文中公开的任何方面。IC 2702可以被包括在SoC 2706中或作为SoC 2706提供。基于处理器的系统2700包括CPU 2708,该CPU2708包括一个或多个处理器2710。CPU2708可以具有耦合到处理器2710的高速缓冲存储器2712以用于快速访问临时存储的数据。高速缓冲存储器2712可以包括根据本文中公开的任何示例的MLC NVM矩阵电路2704。CPU 2708耦合到系统总线2714,并且可以使基于处理器的系统2700中包括的主设备和从设备相互耦合。众所周知,CPU 2708通过在系统总线2714上交换地址、控制和数据信息来与这些其他设备通信。尽管未在图27中图示,但是可以提供多个系统总线2714,其中每个系统总线2714构成不同的结构。例如,CPU 2708可以将总线事务请求传送到作为从设备的示例的存储器系统2716。存储器系统2716可以包括包括存储器位单元2720的存储器阵列2718。存储器位单元2720可以是例如MRAM位单元。存储器阵列2718可以包括MLC NVM矩阵电路2704。
其他主设备和从设备可以连接到系统总线2714。如图27所示,这些设备可以包括存储器系统2716和一个或多个输入设备2722。输入设备2722可以包括任何类型的输入设备,包括但不限于输入键、开关、语音处理器等。其他设备也可以包括一个或多个输出设备2724和一个或多个网络接口设备2727。输出设备2724可以包括任何类型的输出设备,包括但不限于音频、视频、其他视觉指示器等。作为示例,其他设备还可以包括一个或多个显示控制器2730。网络接口设备2727可以是被配置为允许与网络2728进行数据交换的任何设备。网络2728可以是任何类型的网络,包括但不限于有线或无线网络、私有或公共网络、局域网(LAN)、无线局域网(WLAN)、广域网(WAN)、BLUETOOTHTM网络和互联网。网络接口设备2727可以被配置为支持期望的任何类型的通信协议。
CPU 2708还可以被配置为通过系统总线2714访问显示控制器2730以控制发送到一个或多个显示器2732的信息。显示控制器2730可以包括MLC NVM矩阵电路2704。显示控制器2730将信息发送到显示器2732以经由一个或多个视频处理器2734进行显示,视频处理器2734将要显示的信息处理为适合于显示器2732的格式。显示器2732可以包括任何类型的显示器,包括但不限于阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器等。
本领域技术人员将进一步了解,结合本文中公开的各方面而描述的各种说明性逻辑块、模块、电路和算法可以实现为电子硬件、存储在存储器或另一计算机可读介质中并且由处理器或其他处理设备执行的指令、或两者的组合。作为示例,本文中描述的主设备和从设备可以用在任何电路、硬件组件、集成电路(IC)、或IC芯片中。本文中公开的存储器可以是任何类型和大小的存储器,并且可以被配置为存储期望的任何类型的信息。为了清楚地说明这种可互换性,上面已经在功能方面对各种说明性的组件、块、模块、电路和步骤进行了总体描述。如何实现这样的功能取决于特定应用、设计选择和/或强加于整个系统的设计约束。技术人员可以针对每个特定应用以不同方式实现所描述的功能,但是这样的实现决策不应当被解释为导致脱离本公开的范围。
结合本文中公开的各方面而描述的各种说明性逻辑块、模块和电路可以用被设计为执行本文中描述的功能的处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、离散门或晶体管逻辑、分立硬件组件或其任何组合来实现或执行。处理器可以是微处理器,但是在替代方案中,处理器可以是任何传统的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合(例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或任何其他这样的配置)。
本文中公开的各方面可以实施为硬件和存储在硬件中的指令,并且可以驻留在例如随机存取存储器(RAM)、闪存、只读存储器(ROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、寄存器、硬盘、可移动磁盘、CD-ROM或本领域已知的任何其他形式的计算机可读介质中。示例性存储介质耦合到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。在替代方案中,存储介质可以是处理器的组成部分。处理器和存储介质可以驻留在ASIC中。ASIC可以驻留在远程站中。在替代方案中,处理器和存储介质可以作为分立组件驻留在远程站、基站或服务器中。
还应当注意,描述在本文中的任何示例性方面中描述的操作步骤以提供示例和讨论。所描述的操作可以以除了所示顺序之外的很多不同顺序来执行。此外,在单个操作步骤中描述的操作实际上可以在很多不同的步骤中执行。另外,在示例性方面中讨论的一个或多个操作步骤可以组合。应当理解,流程图中图示的操作步骤可以进行很多不同的修改,这对于本领域技术人员来说是很清楚的。本领域技术人员还将理解,信息和信号可以使用各种不同技术和技艺中的任何一种来表示。例如,在整个以上描述中可以参考的数据、指令、命令、信息、信号、位、符号和芯片可以由电压、电流、电磁波、磁场或粒子、光场或粒子或其任何组合来表示。
提供先前对本公开的描述是为了使得本领域技术人员能够制作或使用本发明。对于本领域技术人员来说,对本公开的各种修改是很清楚的,并且在不脱离本公开的精神或范围的情况下,本文中定义的一般原理可以应用于其他变型。因此,本发明不旨在限于本文中描述的示例和设计,而是符合与本文中公开的原理和新颖特征相一致的最宽范围。

Claims (30)

1.一种多级单元MLC非易失性NV存储器NVM矩阵电路,包括:
多个字线,被配置为接收由所述多个字线中的每个字线上的输入电压表示的多位输入矢量;
多个位线,所述多个位线中的每个位线被配置为接收对应的线电压;
多个源极线;以及
多个NVM存储串电路,所述多个NVM存储串电路中的每个NVM存储串电路被配置为电耦合在所述多个位线中的对应位线与所述多个源极线中的对应源极线之间,所述多个源极线中的每个源极线包括多个MLC NVM存储电路;以及
所述多个MLC NVM存储电路中的每个MLC NVM存储电路包括多个NVM位单元电路,所述多个NVM位单元电路中的每个NVM位单元电路被配置为存储对应的所述MLC NVM存储电路的相应存储器状态;
相应MLC NVM存储电路中的所述多个NVM位单元电路中的每个NVM位单元电路具有表示存储的存储器状态的电阻,并且包括:
栅极节点,耦合到所述多个字线中的对应字线;以及
每个NVM位单元电路被配置为响应于施加到耦合到所述栅极节点的所述对应字线的所述输入电压而将所述NVM位单元电路的电阻耦合到所述多个源极线中耦合到所述NVM位单元电路的相应MLC NVM存储电路的源极线。
2.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个字线均没有交叉连接到所述多个位线中的任何位线。
3.根据权利要求1所述的MLC NVM矩阵电路,其中相应NVM存储串电路的每个MLC NVM存储电路的所述电阻耦合到相应源极线以形成多位数据矢量。
4.根据权利要求1所述的MLC NVM矩阵电路,还包括多个存取晶体管,所述多个存取晶体管中的每个存取晶体管耦合到所述多个位线中的对应位线和所述多个NVM存储串电路中耦合到与所述位线相对应的所述源极线的对应NVM存储串电路;
所述多个存取晶体管中的每个存取晶体管包括耦合到存取线的访问栅极节点;以及
所述多个存取晶体管中的每个存取晶体管被配置为响应于施加到所述存取栅极节点的存取电压而将所述对应位线电耦合到所述对应NVM存储串电路。
5.根据权利要求4所述的MLC NVM矩阵电路,还包括多个第二存取晶体管,所述多个第二存取晶体管中的每个第二存取晶体管耦合到所述多个源极线中的对应源极线和所述多个NVM存储串电路中的对应NVM存储串电路;
所述多个第二存取晶体管中的每个第二存取晶体管包括耦合到第二存取线的第二存取栅极节点;以及
所述多个第二存取晶体管中的每个第二存取晶体管被配置为响应于施加到所述第二存取栅极节点的所述输入电压而将所述对应源极线电耦合到所述对应NVM存储串电路。
6.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个MLC NVM存储电路中的每个MLC NVM存储电路中的所述多个NVM位单元电路中的每个NVM位单元电路还包括被配置为响应于施加到耦合到所述栅极节点的所述对应字线的所述输入电压而电耦合到所述源极线以将每个NVM位单元电路的所述电阻耦合到所述源极线的半导体沟道。
7.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路中的NVM存储串电路被配置为:响应于读取激活电压被施加到相应多个MLC NVM存储电路中的所述多个NVM位单元电路中的每个NVM位单元电路的所述栅极节点,基于施加到耦合到所述NVM存储串电路的所述位线的所述线电压和由所述NVM存储串电路的所述多个MLC NVM存储电路中的每个MLC NVM存储电路施加的所述电阻,生成流过所述多个源极线中耦合到所述NVM存储串电路的源极线流向相应输出节点的相应电流。
8.根据权利要求7所述的MLC NVM矩阵电路,其中流过所述源极线的电流的幅度表示耦合到所述源极线的所述MLC NVM存储电路的数据矢量与所述多位输入矢量的点积乘法。
9.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路中的每个NVM存储串电路被配置为:响应于读取激活电压被施加到相应多个MLC NVM存储电路中的所述多个NVM位单元电路中的每个NVM位单元电路的所述栅极节点,基于施加到耦合到所述NVM存储串电路的所述位线的所述线电压和由所述NVM存储串电路的所述多个MLC NVM存储电路中的每个MLC NVM存储电路施加的所述电阻,生成流过所述多个源极线中耦合到所述NVM存储串电路的源极线流向相应输出节点的相应电流。
10.根据权利要求7所述的MLC NVM矩阵电路,其中流过所述多个源极线的多个电流中的每个相应电流的幅度表示耦合到所述相应源极线的所述相应MLC NVM存储电路的数据矢量与所述多位输入矢量的点积乘法。
11.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路中的NVM存储串电路中的一个或多个MLC NVM存储电路被配置为基于施加到所述相应MLC NVM存储电路的所述多个NVM位单元电路中的每个NVM位单元电路的所述栅极节点的写入激活电压来写入多位存储器状态。
12.根据权利要求11所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路中的NVM存储串电路中的所述一个或多个MLCNVM存储电路还被配置为响应于读取激活电压与施加到未被写入的所述多个MLC NVM存储电路中的多个MLC NVM存储电路的所述多个NVM位单元电路的每个NVM位单元电路的所述栅极节点的所述写入激活电压不同而写入所述多位存储器状态。
13.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路每个包括多个NAND MLC NVM存储电路,所述多个NAND MLC NVM存储电路中的每个NAND MLC NVM存储电路包括多个NAND NVM位单元电路,所述多个NAND MLC NVM存储电路中的每个NAND MLC NVM存储电路被配置为响应于施加到所述多个NAND NVM位单元电路中所述NAND MLC NVM存储电路的相应NAND NVM位单元电路的所述栅极节点的所述输入电压而将所述NAND MLC NVM存储电路的电阻串联耦合在所述多个源极线中的源极线上。
14.根据权利要求13所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路中的相应NVM存储串电路中的每个MLC NVM存储电路包括耦合到相邻的MLC NVM存储电路的漏极节点的源极节点。
15.根据权利要求13所述的MLC NVM矩阵电路,其中每个NAND MLC NVM存储电路由以下各项组成的组组成:NAND MLC NVM闪存存储电路;以及NAND MLC NVM铁电Fe场效应晶体管FET FeFET存储电路。
16.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路每个包括多个AND MLC NVM存储电路,所述多个AND MLC NVM存储电路中的每个AND MLC NVM存储电路包括多个AND NVM位单元电路,所述多个AND MLC NVM存储电路中的每个AND MLC NVM存储电路被配置为响应于施加到所述多个ANDNVM位单元电路中所述AND MLC NVM存储电路的相应AND NVM位单元电路的所述栅极节点的所述输入电压而将所述AND MLCNVM存储电路的电阻并联耦合在所述AND MLC NVM存储电路的对应位线与所述AND MLC NVM存储电路的对应源极线之间。
17.根据权利要求15所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路中的相应NVM存储串电路中的每个MLC NVM存储电路包括:耦合到耦合到所述多个位线中的位线的相邻的MLC NVM存储电路的漏极节点的源极节点,并且所述漏极节点耦合到耦合到所述NVM存储串电路的所述源极线。
18.根据权利要求16所述的MLC NVM矩阵电路,其中每个AND MLC NVM存储电路由以下各项组成的组组成:AND MLC NVM闪存存储电路;AND MLC NVM FeFET存储电路;AND MLCNVM磁阻随机存取存储器MRAM NVM存储电路;以及AND MLC NVM电阻随机存取存储器RRAM存储电路。
19.根据权利要求1所述的MLC NVM矩阵电路,其中所述多个NVM存储串电路每个包括多个NOR MLC NVM存储电路,所述多个NOR MLC NVM存储电路中的每个NOR MLC NVM存储电路包括多个NOR NVM位单元电路,所述多个NOR MLC NVM存储电路中的每个NOR MLC NVM存储电路被配置为响应于施加到所述多个NORNVM位单元电路中所述NOR MLC NVM存储电路的相应NOR NVM位单元电路的所述栅极节点的所述输入电压而将所述NOR MLCNVM存储电路的电阻耦合到所述多个源极线中的相应源极线。
20.根据权利要求19所述的MLC NVM矩阵电路,其中每个NOR MLC NVM存储电路由以下各项组成的组组成:NOR MLC NVM闪存存储电路;NOR MLC NVM FeFET存储电路;NOR MLCNVM MRAM存储电路;以及NOR MLC NVM RRAM存储电路。
21.根据权利要求1所述的MLC NVM矩阵电路,被集成到集成电路IC中。
22.根据权利要求1所述的MLC NVM矩阵电路,被集成到片上系统SoC中。
23.根据权利要求1所述的MLC NVM矩阵电路,被集成到选自由以下各项组成的组的设备:机顶盒;娱乐单元;导航设备;通信设备;固定位置数据单元;移动位置数据单元;全球定位系统GPS设备;移动电话;蜂窝电话;智能电话;会话发起协议SIP电话;平板计算机;平板手机;服务器;计算机;便携式计算机;移动计算设备;可穿戴计算设备(例如,智能手表、健康或健身跟踪器、眼镜等);台式计算机;个人数字助理PDA;显示器;计算机显示器;电视;调谐器;收音机;卫星广播;音乐播放器;数字音乐播放器;便携式音乐播放器;数字视频播放器;视频播放器;数字视频光盘DVD播放器;便携式数字视频播放器;汽车;车辆组件;航空电子系统;无人机;以及多旋翼飞行器。
24.一种多级单元MLC非易失性NV存储器NVM矩阵电路,包括:
用于施加表示多位输入矢量的多个输入电压的多个装置;
用于施加多个线电压的多个装置;
用于提供表示输出矢量的多个输出电流的多个装置;以及
多个NVM存储串装置,每个NVM存储串装置电耦合到用于施加所述多个输入电压的所述多个装置中的对应的用于施加输入电压的装置和用于提供所述多个输出电流的所述多个装置中的对应的用于提供输出电流的装置,所述多个NVM存储串装置中的每个NVM存储串装置包括:
多个MLC NV装置,用于存储多位存储器状态,并且每个MLC NV装置具有表示所存储的多位存储器状态的电阻以形成用于所述多个NVM存储串装置中的对应NVM存储串装置的数据矢量;以及
用于存储所述多位存储器状态的所述多个MLC NV装置中的每个MLC NV装置包括:
用于将用于存储1位存储器状态的多个NV位装置的电阻电耦合到用于提供所述多个输出电流的所述多个装置中的用于提供所述输出电流的所述装置的装置;以及
用于控制用于存储1位存储器状态的所述多个NV位装置的所述电阻到用于提供所述多个输出电流的所述多个装置中的用于提供所述输出电流的所述装置的耦合的装置。
25.一种在多级单元MLC非易失性NV存储器NVM矩阵电路中执行矩阵乘法的方法,包括:
在耦合到多个NVM存储串电路中的对应NVM存储串电路的多个位线中的至少一个位线上施加线电压,以将所述线电压电耦合到耦合到所述多个位线中的对应位线的对应NVM存储串电路,所述多个NVM存储串电路中的每个NVM存储串电路包括多个MLC NVM存储电路,所述多个MLC NVM存储电路中的每个MLC NVM存储电路具有表示所述MLC NVM存储电路中的所存储的多位存储器状态的电阻以形成用于所述对应NVM存储串电路的数据矢量;
在耦合到所述多个NVM存储串电路中的对应NVM存储串电路的多个源极线中的至少一个源极线上施加第二线电压,以将所述第二线电压电耦合到耦合到所述多个源极线中的对应源极线的所述对应NVM存储串电路;以及
在多个字线上施加表示多位输入矢量的多个输入电压,所述多个字线中的每个字线耦合到每个NVM存储串电路中的所述多个MLC NVM存储电路中的每个MLC NVM存储电路中的多个NVM位单元电路中的NVM位单元电路的对应栅极节点,以将所述MLC NVM存储电路电耦合到所述源极线以将所述MLC NVM存储电路的所述电阻耦合到所述源极线。
26.根据权利要求25所述的方法,还包括将存取电压施加到多个存取晶体管,所述多个存取晶体管中的每个存取晶体管耦合到所述多个位线中的对应位线和耦合到与所述位线相对应的所述源极线的所述多个NVM存储串电路中的对应NVM存储串电路,以将所述对应位线电耦合到所述对应NVM存储串电路。
27.根据权利要求25所述的方法,还包括响应于读取激活电压被施加到相应NVM存储串电路中的相应多个MLC NVM存储电路中的所述多个NVM位单元电路中的每个NVM位单元电路的所述栅极节点,基于施加到耦合到相应NVM存储串电路的所述位线的电压和由相应NVM存储串电路的所述多个MLC NVM存储电路中的每个MLC NVM存储电路施加的所述电阻,生成流过所述多个源极线中的相应源极线流向耦合到所述多个NVM存储串电路中的相应NVM存储串电路的相应输出节点的电流。
28.根据权利要求27所述的方法,其中流过所述源极线的电流的幅度表示耦合到所述源极线的所述NVM存储串电路的所述数据矢量与所述多位输入矢量的点积乘法。
29.根据权利要求25所述的方法,还包括:
将所述线电压施加到耦合到所述多个NVM存储串电路中的对应NVM存储串电路的所述多个位线中的位线;
将第二线电压施加到耦合到所述对应NVM存储串电路的所述多个源极线中的源极线;以及
将写入激活电压施加到所述对应NVM存储串电路中的所述多个MLC NVM存储电路中的每个MLC NVM存储电路中的所述多个NVM位单元电路中的每个NVM位单元电路的所述栅极节点,以基于施加到所述多个MLC NVM存储电路中的每个MLC NVM存储电路中的所述多个NVM位单元电路中的每个NVM位单元电路的所述栅极节点的所述写入激活电压来写入存储器状态。
30.一种多级单元MLC非易失性NV存储器NVM矩阵系统,包括:
第一MLC NVM矩阵电路,包括:
多个第一字线,被配置为接收由所述多个第一字线中的每个第一字线上的第一输入电压表示的第一多位输入矢量;
多个第一位线,所述多个第一位线中的每个第一位线被配置为接收对应的第一线电压;
多个第一源极线,每个第一源极线耦合到多个第一输出节点中的第一输出节点;
多个第一NVM存储串电路,所述多个第一NVM存储串电路中的每个第一NVM存储串电路被配置为电耦合在所述多个第一位线中的对应第一位线与所述多个第一源极线中的对应第一源极线之间,每个第一NVM存储串电路包括多个第一MLC NVM存储电路;
所述多个第一MLC NVM存储电路中的每个第一MLC NVM存储电路包括多个第一NVM位单元电路,所述多个第一NVM位单元电路中的每个第一NVM位单元电路被配置为存储对应的所述第一MLC NVM存储电路的相应存储器状态;
相应第一MLC NVM存储电路中的所述多个第一NVM位单元电路中的每个第一NVM位单元电路具有表示所存储的存储器状态的电阻,并且包括:
第一栅极节点,耦合到所述多个第一字线中的对应第一字线;以及
每个第一NVM位单元电路被配置为响应于施加到耦合到所述第一栅极节点的所述对应第一字线的输入电压而将所述第一NVM位单元电路的电阻耦合到耦合到所述第一NVM位单元电路的相应第一MLC NVM存储电路的所述第一源极线;以及
第二MLC NVM矩阵电路,包括:
多个第二字线,每个第二字线耦合到所述多个第一输出节点中的输出节点;
多个第二位线,所述多个第二位线中的每个第二位线被配置为接收对应的第二线电压;
多个第二源极线,每个第二源极线耦合到多个第二输出节点中的第二输出节点;以及
多个第二NVM存储串电路,所述多个第二NVM存储串电路中的每个第二NVM存储串电路被配置为电耦合在所述多个第二位线中的对应第二位线与所述多个第二源极线中的对应第二源极线之间,每个第二NVM存储串电路包括多个第二MLC NVM存储电路;
所述多个第二MLC NVM存储电路中的每个第二MLC NVM存储电路包括多个第二NVM位单元电路,所述多个第二NVM位单元电路中的每个第二NVM位单元电路被配置为存储对应的所述第二MLC NVM存储电路的相应存储器状态;
相应第二MLC NVM存储电路中的所述多个第二NVM位单元电路中的每个第二NVM位单元电路具有表示所存储的存储器状态的电阻,并且包括:
第二栅极节点,耦合到所述多个第二字线中的对应第二字线;以及
每个第二NVM位单元电路被配置为响应于施加到耦合到所述第二栅极节点的所述对应第二字线的所述输入电压而将所述第二NVM位单元电路的电阻耦合到耦合到所述第二NVM位单元电路的相应第二MLC NVM存储电路的所述第二源极线。
CN201880045785.0A 2017-07-13 2018-06-22 用于执行具有多位输入矢量的矩阵计算的多级单元(mlc)非易失性(nv)存储器(nvm)矩阵电路 Active CN110914906B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762531924P 2017-07-13 2017-07-13
US62/531,924 2017-07-13
US15/817,474 US10460817B2 (en) 2017-07-13 2017-11-20 Multiple (multi-) level cell (MLC) non-volatile (NV) memory (NVM) matrix circuits for performing matrix computations with multi-bit input vectors
US15/817,474 2017-11-20
PCT/US2018/039002 WO2019013955A1 (en) 2017-07-13 2018-06-22 MULTINIVE CELL (MLC) NONVOLATILE MEMORY (NV) MATRIX CIRCUITS FOR PERFORMING DIAL CALCULATIONS WITH MULTI-BIT INPUT VECTORS

Publications (2)

Publication Number Publication Date
CN110914906A true CN110914906A (zh) 2020-03-24
CN110914906B CN110914906B (zh) 2021-02-05

Family

ID=64999102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880045785.0A Active CN110914906B (zh) 2017-07-13 2018-06-22 用于执行具有多位输入矢量的矩阵计算的多级单元(mlc)非易失性(nv)存储器(nvm)矩阵电路

Country Status (3)

Country Link
US (1) US10460817B2 (zh)
CN (1) CN110914906B (zh)
WO (1) WO2019013955A1 (zh)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US10121553B2 (en) 2015-09-30 2018-11-06 Sunrise Memory Corporation Capacitive-coupled non-volatile thin-film transistor NOR strings in three-dimensional arrays
US9842651B2 (en) 2015-11-25 2017-12-12 Sunrise Memory Corporation Three-dimensional vertical NOR flash thin film transistor strings
US11120884B2 (en) 2015-09-30 2021-09-14 Sunrise Memory Corporation Implementing logic function and generating analog signals using NOR memory strings
JP6833873B2 (ja) 2016-05-17 2021-02-24 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 不揮発性メモリアレイを使用したディープラーニングニューラルネットワーク分類器
US10171084B2 (en) * 2017-04-24 2019-01-01 The Regents Of The University Of Michigan Sparse coding with Memristor networks
US11180861B2 (en) 2017-06-20 2021-11-23 Sunrise Memory Corporation 3-dimensional NOR string arrays in segmented stacks
US10608008B2 (en) 2017-06-20 2020-03-31 Sunrise Memory Corporation 3-dimensional nor strings with segmented shared source regions
US10608011B2 (en) 2017-06-20 2020-03-31 Sunrise Memory Corporation 3-dimensional NOR memory array architecture and methods for fabrication thereof
US10692874B2 (en) 2017-06-20 2020-06-23 Sunrise Memory Corporation 3-dimensional NOR string arrays in segmented stacks
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
KR102156624B1 (ko) * 2017-10-25 2020-09-16 한국과학기술원 트랩 층이 형성된 반도체 채널 기반의 뉴로모픽 시냅스 소자
KR102457732B1 (ko) 2017-12-28 2022-10-21 선라이즈 메모리 코포레이션 초미세 피치를 갖는 3차원 nor 메모리 어레이: 장치 및 방법
US10867239B2 (en) * 2017-12-29 2020-12-15 Spero Devices, Inc. Digital architecture supporting analog co-processor
US10475812B2 (en) 2018-02-02 2019-11-12 Sunrise Memory Corporation Three-dimensional vertical NOR flash thin-film transistor strings
US11119917B2 (en) * 2018-07-12 2021-09-14 Globalfoundries Singapore Pte. Ltd. Neuromorphic memories with split gate flash multi-level cell and method of making the same
US11751391B2 (en) 2018-07-12 2023-09-05 Sunrise Memory Corporation Methods for fabricating a 3-dimensional memory structure of nor memory strings
CN112567516A (zh) 2018-07-12 2021-03-26 日升存储公司 三维nor存储器阵列的制造方法
US11138497B2 (en) 2018-07-17 2021-10-05 Macronix International Co., Ltd In-memory computing devices for neural networks
WO2020018960A1 (en) * 2018-07-19 2020-01-23 The Regents Of The University Of California Compute-in-memory architecture for neural networks
TWI713195B (zh) 2018-09-24 2020-12-11 美商森恩萊斯記憶體公司 三維nor記憶電路製程中之晶圓接合及其形成之積體電路
US20200117988A1 (en) * 2018-10-11 2020-04-16 International Business Machines Corporation Networks for distributing parameters and data to neural network compute cores
US11636325B2 (en) 2018-10-24 2023-04-25 Macronix International Co., Ltd. In-memory data pooling for machine learning
TWI735873B (zh) * 2018-10-24 2021-08-11 旺宏電子股份有限公司 用以執行乘積和運算之半導體裝置
US11562229B2 (en) 2018-11-30 2023-01-24 Macronix International Co., Ltd. Convolution accelerator using in-memory computation
US11133059B2 (en) 2018-12-06 2021-09-28 Western Digital Technologies, Inc. Non-volatile memory die with deep learning neural network
CN113169041B (zh) 2018-12-07 2024-04-09 日升存储公司 形成多层垂直nor型存储器串阵列的方法
US11934480B2 (en) 2018-12-18 2024-03-19 Macronix International Co., Ltd. NAND block architecture for in-memory multiply-and-accumulate operations
US11270763B2 (en) 2019-01-18 2022-03-08 Silicon Storage Technology, Inc. Neural network classifier using array of three-gate non-volatile memory cells
US11409352B2 (en) 2019-01-18 2022-08-09 Silicon Storage Technology, Inc. Power management for an analog neural memory in a deep learning artificial neural network
US11023559B2 (en) 2019-01-25 2021-06-01 Microsemi Soc Corp. Apparatus and method for combining analog neural net with FPGA routing in a monolithic integrated circuit
US10720217B1 (en) 2019-01-29 2020-07-21 Silicon Storage Technology, Inc. Memory device and method for varying program state separation based upon frequency of use
JP7425069B2 (ja) 2019-01-30 2024-01-30 サンライズ メモリー コーポレイション 基板接合を用いた高帯域幅・大容量メモリ組み込み型電子デバイス
CN113424319A (zh) 2019-02-11 2021-09-21 日升存储公司 垂直薄膜晶体管以及作为用于三维存储器阵列的位线连接器的应用
US11132176B2 (en) * 2019-03-20 2021-09-28 Macronix International Co., Ltd. Non-volatile computing method in flash memory
US11423979B2 (en) * 2019-04-29 2022-08-23 Silicon Storage Technology, Inc. Decoding system and physical layout for analog neural memory in deep learning artificial neural network
US20200349422A1 (en) * 2019-05-02 2020-11-05 Silicon Storage Technology, Inc. Output array neuron conversion and calibration for analog neural memory in deep learning artificial neural network
US11081168B2 (en) * 2019-05-23 2021-08-03 Hefei Reliance Memory Limited Mixed digital-analog memory devices and circuits for secure storage and computing
US11520521B2 (en) 2019-06-20 2022-12-06 Western Digital Technologies, Inc. Storage controller having data augmentation components for use with non-volatile memory die
US11501109B2 (en) 2019-06-20 2022-11-15 Western Digital Technologies, Inc. Non-volatile memory die with on-chip data augmentation components for use with machine learning
US11475933B2 (en) 2019-08-21 2022-10-18 Samsung Electronics Co., Ltd Variation mitigation scheme for semi-digital mac array with a 2T-2 resistive memory element bitcell
US11556616B2 (en) * 2019-10-17 2023-01-17 Sandisk Technologies Llc Methods to tolerate programming and retention errors of crossbar memory arrays
US11188261B2 (en) 2019-11-18 2021-11-30 International Business Machines Corporation Memory controllers for solid-state storage devices
WO2021127218A1 (en) 2019-12-19 2021-06-24 Sunrise Memory Corporation Process for preparing a channel region of a thin-film transistor
KR102556249B1 (ko) * 2020-01-02 2023-07-14 서울대학교산학협력단 신경망을 위한 시냅스 스트링 어레이 아키텍처
WO2021159028A1 (en) 2020-02-07 2021-08-12 Sunrise Memory Corporation High capacity memory circuit with low effective latency
US11580038B2 (en) 2020-02-07 2023-02-14 Sunrise Memory Corporation Quasi-volatile system-level memory
US11508693B2 (en) 2020-02-24 2022-11-22 Sunrise Memory Corporation High capacity memory module including wafer-section memory circuit
US11507301B2 (en) 2020-02-24 2022-11-22 Sunrise Memory Corporation Memory module implementing memory centric architecture
US11561911B2 (en) 2020-02-24 2023-01-24 Sunrise Memory Corporation Channel controller for shared memory access
US11705496B2 (en) 2020-04-08 2023-07-18 Sunrise Memory Corporation Charge-trapping layer with optimized number of charge-trapping sites for fast program and erase of a memory cell in a 3-dimensional NOR memory string array
TWI784515B (zh) 2020-05-27 2022-11-21 台灣積體電路製造股份有限公司 記憶體系統以及操作記憶體系統的方法
US11437092B2 (en) 2020-05-27 2022-09-06 Taiwan Semiconductor Manufacturing Company, Ltd. Systems and methods to store multi-level data
US11200948B1 (en) * 2020-08-27 2021-12-14 Hewlett Packard Enterprise Development Lp System for a flexible conductance crossbar
US11937424B2 (en) 2020-08-31 2024-03-19 Sunrise Memory Corporation Thin-film storage transistors in a 3-dimensional array of nor memory strings and process for fabricating the same
DE102020211817A1 (de) 2020-09-22 2022-03-24 Robert Bosch Gesellschaft mit beschränkter Haftung Stufen-Analog-Digital-Wandler und Matrixschaltungsanordnung
US20220129738A1 (en) * 2020-10-22 2022-04-28 Micron Technology, Inc. Deep Learning Accelerator in Memory Utilized in Factory Safety Monitoring Systems
US11842777B2 (en) 2020-11-17 2023-12-12 Sunrise Memory Corporation Methods for reducing disturb errors by refreshing data alongside programming or erase operations
US11848056B2 (en) 2020-12-08 2023-12-19 Sunrise Memory Corporation Quasi-volatile memory with enhanced sense amplifier operation
US11232824B1 (en) 2020-12-11 2022-01-25 International Business Machines Corporation Non-volatile analog resistive memory cells implementing ferroelectric select transistors
TW202310429A (zh) 2021-07-16 2023-03-01 美商日升存儲公司 薄膜鐵電電晶體的三維記憶體串陣列
CN115840527A (zh) * 2021-09-22 2023-03-24 河北大学 应用于忆阻器阵列权重调制和图像识别的电路系统
US20230317161A1 (en) * 2022-03-31 2023-10-05 Crossbar, Inc. Matrix multiplication with resistive memory circuit having good substrate density
US20240127888A1 (en) 2022-10-11 2024-04-18 The University Of Hong Kong System and method for addition and subtraction in memristor-based in-memory computing
EP4357981A1 (en) * 2022-10-20 2024-04-24 Commissariat à l'énergie atomique et aux énergies alternatives Hybrid feram/oxram data storage circuit
TWI849732B (zh) * 2023-02-09 2024-07-21 旺宏電子股份有限公司 超高維度計算裝置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1509475A (zh) * 2002-01-11 2004-06-30 索尼公司 存储单元电路、存储设备、运动矢量检测器、和运动补偿预测编码器
US20050122768A1 (en) * 2003-09-12 2005-06-09 Sharp Kabushiki Kaisha Nonvolatile semiconductor memory device
US20160358661A1 (en) * 2012-02-23 2016-12-08 Micron Technology, Inc. Methods of operating memory
US20170178725A1 (en) * 2014-10-29 2017-06-22 Hewlett Packard Enterprise Development Lp Memristive dot product engine for vector processing

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0731705B2 (ja) 1992-08-24 1995-04-10 東京工業大学長 自己学習型積和演算回路素子及び回路
US6005806A (en) 1996-03-14 1999-12-21 Altera Corporation Nonvolatile configuration cells and cell arrays
JP2001024163A (ja) 1999-07-13 2001-01-26 Toshiba Corp 半導体メモリ
US7272050B2 (en) 2004-08-10 2007-09-18 Samsung Electronics Co., Ltd. Non-volatile memory device and erase method of the same
US7203092B2 (en) 2005-05-12 2007-04-10 Micron Technology, Inc. Flash memory array using adjacent bit line as source
US7474560B2 (en) 2006-08-21 2009-01-06 Micron Technology, Inc. Non-volatile memory with both single and multiple level cells
US7723774B2 (en) 2007-07-10 2010-05-25 Silicon Storage Technology, Inc. Non-diffusion junction split-gate nonvolatile memory cells and arrays, methods of programming, erasing, and reading thereof, and methods of manufacture
KR101527195B1 (ko) 2009-02-02 2015-06-10 삼성전자주식회사 수직 구조의 비휘발성 메모리 소자
US7940548B2 (en) 2009-07-13 2011-05-10 Seagate Technology Llc Shared bit line and source line resistive sense memory structure
KR20110096414A (ko) 2010-02-22 2011-08-30 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 읽기 방법
US8625337B2 (en) 2010-05-06 2014-01-07 Qualcomm Incorporated Method and apparatus of probabilistic programming multi-level memory in cluster states of bi-stable elements
JP2012204404A (ja) 2011-03-23 2012-10-22 Toshiba Corp 抵抗変化型不揮発性半導体記憶装置
US8929132B2 (en) 2011-11-17 2015-01-06 Everspin Technologies, Inc. Write driver circuit and method for writing to a spin-torque MRAM
US8792263B2 (en) 2011-12-22 2014-07-29 Micron Technology, Inc. Apparatuses and methods including memory with top and bottom data lines
KR102005533B1 (ko) 2012-10-22 2019-07-31 에스케이하이닉스 주식회사 반도체 메모리 소자 및 그 제조방법
US8879323B2 (en) 2012-11-21 2014-11-04 Flashsilicon Incorporation Interconnection matrix using semiconductor non-volatile memory
CN106256003B (zh) * 2014-03-13 2019-07-05 东芝存储器株式会社 可变变化存储器及其写入方法
US20150324691A1 (en) 2014-05-07 2015-11-12 Seagate Technology Llc Neural network connections using nonvolatile memory devices
US10311357B2 (en) 2014-06-19 2019-06-04 Knowmtech, Llc Thermodynamic-RAM technology stack
US9461094B2 (en) 2014-07-17 2016-10-04 Qualcomm Incorporated Switching film structure for magnetic random access memory (MRAM) cell
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
US10169701B2 (en) 2015-05-26 2019-01-01 International Business Machines Corporation Neuron peripheral circuits for neuromorphic synaptic memory array based on neuron models
US10417559B2 (en) 2015-06-22 2019-09-17 International Business Machines Corporation Communicating postsynaptic neuron fires to neuromorphic cores
US10014318B2 (en) 2015-10-24 2018-07-03 Monocithic 3D Inc Semiconductor memory device, structure and methods
KR102376505B1 (ko) 2016-01-13 2022-03-18 삼성전자주식회사 불휘발성 메모리 장치 내 소거 불량 워드라인 검출 방법
US9691479B1 (en) 2016-04-29 2017-06-27 Hewlett Packard Enterprise Development Lp Method of operating and apparatus of memristor arrays with diagonal lines interconnect between memristor cells
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
US10242737B1 (en) 2018-02-13 2019-03-26 Macronix International Co., Ltd. Device structure for neuromorphic computing system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1509475A (zh) * 2002-01-11 2004-06-30 索尼公司 存储单元电路、存储设备、运动矢量检测器、和运动补偿预测编码器
US20050122768A1 (en) * 2003-09-12 2005-06-09 Sharp Kabushiki Kaisha Nonvolatile semiconductor memory device
US20160358661A1 (en) * 2012-02-23 2016-12-08 Micron Technology, Inc. Methods of operating memory
US20170178725A1 (en) * 2014-10-29 2017-06-22 Hewlett Packard Enterprise Development Lp Memristive dot product engine for vector processing

Also Published As

Publication number Publication date
US20190019564A1 (en) 2019-01-17
WO2019013955A1 (en) 2019-01-17
CN110914906B (zh) 2021-02-05
US10460817B2 (en) 2019-10-29

Similar Documents

Publication Publication Date Title
CN110914906B (zh) 用于执行具有多位输入矢量的矩阵计算的多级单元(mlc)非易失性(nv)存储器(nvm)矩阵电路
CN110892480B (zh) 采用nvm矩阵电路以执行矩阵计算的非易失性(nv)存储器(nvm)矩阵电路
US20210142157A1 (en) Spin orbit torque based electronic neuron
US11361216B2 (en) Neural network circuits having non-volatile synapse arrays
CN110825345B (zh) 使用非易失性存储器单元的乘法
JP6858870B2 (ja) 不揮発性半導体記憶素子を用いたニューラルネットワーク演算回路
Li et al. Design of ternary neural network with 3-D vertical RRAM array
TWI751403B (zh) 具有非揮發性突觸陣列的神經網路電路及神經晶片
CN110729011B (zh) 用于类神经网路的存储器内运算装置
TWI754567B (zh) 神經形態裝置及其操作方法
Lee et al. Operation scheme of multi-layer neural networks using NAND flash memory as high-density synaptic devices
KR20180133061A (ko) 강유전체 전계 효과 트랜지스터들을 가진 시냅스들을 포함하는 뉴로모픽 소자의 시냅스 어레이 및 그 동작 방법
Agrawal et al. X-CHANGR: Changing memristive crossbar mapping for mitigating line-resistance induced accuracy degradation in deep neural networks
KR20220044643A (ko) 외부 자기장 프로그래밍 보조가 있는 초저전력 추론 엔진
Zhou et al. The characteristics of binary spike-time-dependent plasticity in HfO 2-based RRAM and applications for pattern recognition
Sheikhfaal et al. Short-term long-term compute-in-memory architecture: A hybrid spin/CMOS approach supporting intrinsic consolidation
Ahn et al. On-chip adaptive matching learning with charge-trap synapse device and ReLU activation circuit
CN108154227B (zh) 一种使用模拟计算的神经网络芯片
WO2023112674A1 (ja) 人工知能処理装置および人工知能処理装置の学習推論方法
CN117497026A (zh) 存储器单元、阵列电路结构及数据处理方法
Verma et al. Advances in neuromorphic spin-based spiking neural networks: a review
Shi Neuro-inspired Computing Using Emerging Non-Volatile Memories
Wu et al. A digitalized RRAM-based Spiking Neuron Network system with 3-bit weight and unsupervised online learning scheme
Milo et al. Synaptic realizations based on memristive devices
KR20230078024A (ko) 삼항 정밀도 xor 논리 연산을 기반으로 하는 반도체 소자 및 이를 포함하는 뉴로모픽 컴퓨팅 시스템

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