CN111837189A - 用于深度学习神经网络中的模拟非易失性存储器的数据刷新的方法和设备 - Google Patents

用于深度学习神经网络中的模拟非易失性存储器的数据刷新的方法和设备 Download PDF

Info

Publication number
CN111837189A
CN111837189A CN201980018504.7A CN201980018504A CN111837189A CN 111837189 A CN111837189 A CN 111837189A CN 201980018504 A CN201980018504 A CN 201980018504A CN 111837189 A CN111837189 A CN 111837189A
Authority
CN
China
Prior art keywords
current
memory cell
refreshing
data
cell
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.)
Pending
Application number
CN201980018504.7A
Other languages
English (en)
Inventor
H·V·特兰
V·蒂瓦里
N·多
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.)
Silicon Storage Technology Inc
Original Assignee
Silicon Storage Technology 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 Silicon Storage Technology Inc filed Critical Silicon Storage Technology Inc
Publication of CN111837189A publication Critical patent/CN111837189A/zh
Pending legal-status Critical Current

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/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/16Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters 
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3431Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
    • 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/5642Sensing or reading circuits; Data output circuits
    • 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/30Power supply circuits
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • G11C27/005Electric analogue stores, e.g. for storing instantaneous values with non-volatile charge storage, e.g. on floating gate or MNOS
    • 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/045Combinations of networks
    • 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
    • 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/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • G11C16/0425Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing a merged floating gate and select transistor
    • 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/08Address circuits; Decoders; Word-line control circuits
    • 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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • 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/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/02Structural aspects of erasable programmable read-only memories
    • G11C2216/04Nonvolatile memory cell provided with a separate control gate for erasing the cells, i.e. erase gate, independent of the normal read control gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • 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

Landscapes

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

Abstract

公开了用于人工神经网络中的矢量‑矩阵乘法(VMM)阵列的数据刷新方法和设备的许多实施方案。公开了适合于检测VMM阵列内的闪存存储器单元中的数据漂移的数据漂移检测器的各种实施方案。

Description

用于深度学习神经网络中的模拟非易失性存储器的数据刷新 的方法和设备
优先权声明
本申请要求于2018年3月14日提交的标题为“用于人工神经网络中的模拟神经形态存储器的数据刷新的方法和设备(Method and Apparatus for Data Refresh forAnalog Neuromorphic Memory in Artificial Neural Network)”的美国临时专利申请62/642,867以及于2018年5月25日提交的标题为“用于深度学习神经网络中的模拟非易失性存储器的数据刷新的方法和设备(Method and Apparatus for Data Refresh forAnalog Non-volatile Memory in Deep Learning Neural Network)”的美国专利申请15/990,220的优先权。
技术领域
公开了用于人工神经网络中的矢量-矩阵乘法(VMM)阵列中的闪存存储器单元的数据刷新方法和设备的许多实施方案。
背景技术
人工神经网络模拟生物神经网络(动物的中枢神经系统,特别是大脑),这些人工神经网络用于估计或近似可取决于大量输入并且通常未知的功能。人工神经网络通常包括互相交换消息的互连“神经元”层。
图1示出了人工神经网络,其中圆圈表示神经元的输入或层。连接部(称为突触)用箭头表示,并且具有可以根据经验进行调整的数值权重。这使得神经网络适应于输入并且能够学习。通常,神经网络包括多个输入的层。通常存在神经元的一个或多个中间层,以及提供神经网络的输出的神经元的输出层。处于每一级别的神经元分别地或共同地根据从突触所接收的数据作出决定。
在开发用于高性能信息处理的人工神经网络方面的主要挑战中的一个挑战是缺乏足够的硬件技术。实际上,实际神经网络依赖于大量的突触,从而实现神经元之间的高连通性,即非常高的计算并行性。原则上,此类复杂性可通过数字超级计算机或专用图形处理单元集群来实现。然而,相比于生物网络,这些方法除了高成本之外,能量效率也很普通,生物网络主要由于其执行低精度的模拟计算而消耗更少的能量。CMOS模拟电路已被用于人工神经网络,但由于给定大量的神经元和突触,大多数CMOS实现的突触都过于庞大。
申请人先前在美国专利申请15/594,439中公开了一种利用一个或多个非易失性存储器阵列作为突触的人工(模拟)神经网络,该专利申请以引用方式并入本文。非易失性存储器阵列作为模拟神经形态存储器操作。神经网络装置包括被配置为接收第一多个输入并从其生成第一多个输出的第一多个突触,以及被配置为接收第一多个输出的第一多个神经元。第一多个突触包括多个存储器单元,其中存储器单元中的每个存储器单元包括:形成于半导体衬底中的间隔开的源极区和漏极区,其中沟道区在源极区和漏极区之间延伸;设置在沟道区的第一部分上方并且与所述第一部分绝缘的浮栅;以及设置在沟道区的第二部分上方并且与所述第二部分绝缘的非浮栅。多个存储器单元中的每一个被配置为存储与浮栅上的多个电子相对应的权重值。多个存储器单元被配置为将第一多个输入乘以所存储的权重值以生成第一多个输出。
必须擦除和编程在模拟神经形态存储器系统中使用的每个非易失性存储器单元,以在浮栅中保持非常特定且精确的电荷量。例如,每个浮栅必须保持N个不同值中的一个,其中N是可由每个单元指示的不同权重的数量。N的示例包括16、32和64。
常规的闪存存储器装置不需要刷新其数据,因为每个闪存存储器单元可以无限地保持其值(通常将其值限制为两个可能的级别,或者有时限制为四个可能的级别,即,N=2或4)。然而,在VNM中使用的闪存存储器单元中,由于N明显更大,所以由于基于温度变化和工艺变型而随时间自然发生的数据漂移,数据随时间变得不正确(即损坏)的可能性增加。
所需要的是这样的机制,该机制用于检测VNM中闪存存储器单元中的数据漂移,并将该单元中的数据刷新到其原始的期望状态。
发明内容
公开了用于人工神经网络中的矢量-矩阵乘法(VMM)阵列中的闪存存储器单元的数据刷新方法和设备的许多实施方案。
附图说明
图1为示出人工神经网络的示意图。
图2为常规的2栅极非易失性存储器单元的横截面侧视图。
图3为常规的4栅极非易失性存储器单元的横截面侧视图。
图4为常规的3栅极非易失性存储器单元的横截面侧视图。
图5为另一个常规的2栅极非易失性存储器单元的横截面侧视图。
图6为示出利用非易失性存储器阵列的示例性人工神经网络的不同级的示意图。
图7为示出矢量乘法器矩阵的框图。
图8为示出矢量乘法器矩阵的各种级的框图。
图9描绘了矢量乘法器矩阵的实施方案。
图10描绘了图9的矢量乘法器矩阵的操作电压。
图11描绘了矢量乘法器矩阵的另一实施方案。
图12描绘了图11的矢量乘法器矩阵的操作电压。
图13描绘了矢量乘法器矩阵的另一实施方案。
图14描绘了图13的矢量乘法器矩阵的操作电压。
图15描绘了矢量乘法器矩阵的另一实施方案。
图16描述了图15的矢量乘法器矩阵的操作电压。
图17描绘了矢量乘法器矩阵的另一实施方案。
图18描绘了用于检测矢量乘法器矩阵中的数据漂移的系统。
图19描述了数据刷新方法。
图20描述了另一数据刷新方法。
图21描绘了矢量乘法器矩阵中快速单元的特性。
图22描绘了矢量乘法器矩阵中快速单元的特性。
图23描述了用于评估数据漂移的机制。
图24描绘了数据漂移检测器的实施方案。
图25描绘了数据漂移检测器的另一实施方案。
图26描绘了图25的实施方案的示例性采样周期。
图27描绘了数据漂移检测器的另一实施方案。
具体实施方式
本发明的人工神经网络利用CMOS技术和非易失性存储器阵列的组合。
非易失性存储器单元
数字非易失性存储器是众所周知的。例如,美国专利5,029,130(“’130专利”)公开了一种分栅非易失性存储器单元阵列,并且出于所有目的将该专利以引用方式并入本文。此类存储器单元在图2中示出。每个存储器单元210包括形成于半导体衬底12中的源极区14和漏极区16,其间具有沟道区18。浮栅20形成在沟道区18的第一部分上方并且与其绝缘(并控制其电导率),并且形成在源极区16的一部分上方。字线端子22(其通常被耦接到字线)具有设置在沟道区18的第二部分上方并且与该沟道区的第二部分绝缘(并且控制其电导率)的第一部分,以及向上延伸并且位于浮栅20上方的第二部分。浮栅20和字线端子22通过栅极氧化物与衬底12绝缘。位线24耦接到漏极区16。
通过将高的正电压置于字线端子22上来对储器单元210进行擦除(其中电子从浮栅去除),这导致浮栅20上的电子经由Fowler-Nordheim隧穿从浮栅20到字线端子22隧穿通过中间绝缘体。
通过将正电压置于字线端子22上以及将正电压置于源极16上来编程存储器单元210(其中电子被置于浮栅上)。电子电流将从源极16流向漏极14。当电子到达字线端子22和浮栅20之间的间隙时,电子将加速并且变热。由于来自浮栅20的静电引力,一些加热的电子将通过栅极氧化物26被注入到浮栅20上。
通过将正读取电压置于漏极14和字线端子22(其接通在字线端子下方的沟道区)上来读取存储器单元210。如果浮栅20带正电(即,电子被擦除以及正极耦合到漏极16),则沟道区在浮栅20下方的部分也被接通,并且电流将流过沟道区18,该沟道区被感测为擦除状态或“1”状态。如果浮栅20带负电(即,通过电子进行了编程),则沟道区的在浮栅20下方的部分被大部分或完全关断,并且电流将不会(或者有很少的电流)流过沟道区18,该沟道区被感测为编程状态或“0”状态。
表1描绘了可以施加到存储器单元210的端子用于执行读取、擦除和编程操作的典型电压范围:
表1:图2的闪存存储器单元210的操作
WL BL SL
读取 2-3V 0.6V-2V 0V
擦除 约11-13V 0V 0V
编程 1-2V 1-3μA 9-10V
其他分栅存储器单元配置是已知的。例如,图3描绘了四栅极存储器单元310,其包括源极区14、漏极区16、在沟道区18的第一部分上方的浮栅20、在沟道区18的第二部分上方的选择栅28(通常耦接到字线)、在浮栅20上方的控制栅22、以及在源极区14上方的擦除栅30。这种配置在美国专利6,747,310中有所描述,该专利以引用方式并入本文以用于所有目的。这里,除了浮栅20之外,所有的栅极均为非浮栅,这意味着它们电连接到或能够电连接到电压源。编程由来自沟道区18的受热电子示出,电子将自身注入浮栅20上。擦除通过从浮栅20隧穿到擦除栅30的电子来显示。
表2描绘了可以施加到存储器单元310的端子用于执行读取、擦除和编程操作的典型电压范围:
表2:图3的闪存存储器单元310的操作
WL/SG BL CG EG SL
读取 1.0V-2V 0.6V-2V 0-2.6V 0-2.6V 0V
擦除 -0.5V/0V 0V 0V/-8V 8-12V 0V
编程 1V 1μA 8-11V 4.5-9V 4.5-5V
图4描绘了分栅三栅极存储器单元410。存储器单元410与图3的存储器单元310相同,除了存储器单元410没有单独的控制栅。擦除操作(通过擦除栅进行擦除)和读取操作与图3的操作类似,不同的是不存在控制栅偏置。编程操作也在无控制栅偏置的情况下完成,因此源极线上的编程电压更高以对缺少控制栅偏置进行补偿。
表3描绘了可以施加到存储器单元410的端子用于执行读取、擦除和编程操作的典型电压范围:
表3:图4的闪存存储器单元410的操作
WL/SG BL EG SL
读取 0.7V-2.2V 0.6V-2V 0-2.6V 0V
擦除 -0.5V/0V 0V 11.5V 0V
编程 1V 2-3μA 4.5V 7-9V
图5描绘了叠栅存储器单元510。存储器单元510类似于图2的存储器单元210,不同的是浮栅20在整个沟道区18上方延伸,并且控制栅22在浮栅20上方延伸,由绝缘层分开。擦除、编程和读取操作以与先前针对存储器单元210所述类似的方式操作。
表4描绘了可以施加到存储器单元510的端子用于执行读取、擦除和编程操作的典型电压范围:
表4:图5的闪存存储器单元510的操作
CG BL SL P-sub
读取 2-5V 0.6–2V 0V 0V
擦除 -8至-10V/0V FLT FLT 8-10V/15-20V
编程 8-12V 3-5V 0V 0V
为了在人工神经网络中利用包括上述类型的非易失性存储器单元之一的存储器阵列,进行了两个修改。第一,对线路进行配置,使得每个存储器单元可被单独编程、擦除和读取,而不会不利地影响阵列中的其他存储器单元的存储器状态,如下文进一步解释。第二,提供存储器单元的连续(模拟)编程。
具体地,阵列中的每个存储器单元的存储器状态(即,浮栅上的电荷)可在独立地并且对其他存储器单元的干扰最小的情况下连续地从完全擦除状态变为完全编程状态,反之亦然。在另一实施方案中,阵列中的每个存储器单元的存储器状态(即,浮栅上的电荷)可在独立地并且对其他存储器单元的干扰最小的情况下连续地从完全编程状态变为完全擦除状态,反之亦然。这意味着单元存储装置是模拟的,或者至少可存储许多离散值(诸如16或64个不同的值)中的一个离散值,这允许对存储器阵列中的所有单元进行非常精确且单独的调谐,并且这使得存储器阵列对于存储和对神经网络的突触权重进行微调调整是理想的。
采用非易失性存储器单元阵列的神经网络
图6概念性地示出了利用非易失性存储器阵列的神经网络的非限制性示例。该示例将非易失性存储器阵列神经网络用于面部识别应用,但任何其他适当的应用也可使用基于非易失性存储器阵列的神经网络来实现。
对于该示例,S0为输入,其为具有5位精度的32×32像素RGB图像(即,三个32×32像素阵列,分别用于每个颜色R、G和B,每个像素为5位精度)。从S0到C1的突触CB1同时具有不同组的权重和共享权重,并且用3×3像素重叠滤波器(内核)扫描输入图像,将滤波器移位1个像素(或根据模型所指示的多于1个像素)。具体地,将图像的3×3部分中的9个像素的值(即,称为滤波器或内核)提供给突触CB1,由此将这9个输入值乘以适当的权重,并且在对该乘法的输出求和之后,由CB1的第一神经元确定并提供单个输出值以用于生成特征映射的其中一层C1的像素。然后将3×3滤波器向右移位一个像素(即,添加右侧的三个像素的列,并释放左侧的三个像素的列),由此将该新定位的滤波器中的9个像素值提供给突触CB1,由此将它们乘以相同的权重并且由相关联的神经元确定第二单个输出值。继续该过程,直到3×3滤波器在整个32×32像素图像上扫描所有三种颜色和所有位(精度值)。然后使用不同组的权重重复该过程以生成C1的不同特征映射,直到计算出层C1的所有特征映射。
在C1处,在本示例中,存在16个特征映射,每个特征映射具有30×30像素。每个像素是从输入和内核的乘积中提取的新特征像素,因此每个特征映射是二维阵列,因此在该示例中,突触CB1由16层的二维阵列构成(记住本文所引用的神经元层和阵列是逻辑关系,而不必是物理关系,即阵列不必定向于物理二维阵列)。16个特征映射中的每个特征映射均由应用于滤波器扫描的十六个不同组的突触权重中的一组生成。C1特征映射可全部涉及相同图像特征的不同方面,诸如边界识别。例如,第一映射(使用第一权重组生成,针对用于生成该第一映射的所有扫描而共享)可识别圆形边缘,第二映射(使用与第一权重组不同的第二权重组生成)可识别矩形边缘,或某些特征的纵横比,以此类推。
在从C1转到S1之前,应用激活函数P1(池化),该激活函数将来自每个特征映射中连续的非重叠2×2区域的值进行池化。池化阶段的目的是对邻近位置求均值(或者也可使用max函数),以例如减少边缘位置的依赖性,并在进入下一阶段之前减小数据大小。在S1处,存在16个15×15特征映射(即,16个每个15×15像素的不同阵列)。CB2中从S1到C2的突触和相关联神经元利用4×4滤波器扫描S1中的映射,其中滤波器移位1个像素。在C2处,存在22个12×12特征映射。在从C2转到S2之前,应用激活函数P2(池化),该激活函数将来自每个特征映射中连续的非重叠2×2区域的值进行池化。在S2处,存在22个6x6特征映射。将激活函数应用于从S2到C3的突触CB3,其中C3中的每个神经元连接至S2中的每个映射。在C3处,存在64个神经元。从C3到输出S3的突触CB4将S3完全连接至C3。S3处的输出包括10个神经元,其中最高输出神经元确定类。例如,该输出可指示对原始图像的内容的识别或分类。
使用非易失性存储器单元的阵列或阵列的一部分来实现每个级别的突触。图7为包括非易失性存储器单元并且被用作输入层和下一层之间的突触的矢量-矩阵乘法(VMM)阵列的框图。具体地,VMM 32包括非易失性存储器单元阵列33、擦除栅和字线栅解码器34、控制栅解码器35、位线解码器36和源极线解码器37,这些解码器对存储器阵列33的输入进行解码。在该示例中,源极线解码器37还对存储器单元阵列的输出进行解码。另选地,位线解码器36可以解码存储器阵列的输出。存储器阵列有两个用途。首先,它存储将由VMM使用的权重。其次,存储器阵列有效地将输入与存储在存储器阵列中的权重相乘,然后逐条输出线(源极线或位线)将它们相加,以产生输出,该输出将作为下一层的输入或最终层的输入。通过执行乘法和加法函数,存储器阵列消除了对单独的乘法和加法逻辑电路的需要,并且由于原位存储器计算也是高功效的。
将存储器阵列的输出提供至差动加法器(诸如加法运算放大器)38,该差动加法器对存储器单元阵列的输出进行求和,以为该卷积创建单个值。差动加法器是为了实现正权重和负权重与正输入的总和。然后将求和后的输出值提供至激活函数电路39,该激活函数电路对输出进行修正。激活函数可包括sigmoid、tanh或ReLU函数。经修正的输出值成为下一层的特征映射的元素(例如,上述描述中的C1),然后被应用于下一突触以产生下一特征映射层或最终层。因此,在该示例中,存储器阵列构成多个突触(其从现有神经元层或从输入层诸如图像数据库接收它们的输入),并且求和运算放大器38和激活函数电路39构成多个神经元。
图8是VMM的各个级的框图。通过数模转换器31将输入从数字转换为模拟,并将其提供至输入VMM 32a。输入VMM 32a生成的输出作为下一VMM(隐藏的级别1)32b的输入而提供,该输入继而生成作为下一VMM(隐藏的级别2)32b的输入而提供的输出,以此类推。VMM32的各层用作卷积神经网络(CNN)的突触和神经元的不同层。每个VMM可以是独立的非易失性存储器阵列、或者多个VMM可以利用相同非易失性存储器阵列的不同部分、或者多个VMM可以利用相同非易失性存储器阵列的重叠部分。
矢量-矩阵乘法(VMM)阵列
图9描绘了神经元VMM 900,其特别适用于图2所示类型的存储器单元,并且用作输入层与下一层之间的神经元的突触和部件。VMM 900包括非易失性存储器单元的存储器阵列903、参考阵列901和参考阵列902。参考阵列901和902用于将流入端子BLR0-3的电流输入转换为电压输入WL0-3。如图所示,参考阵列901和902在列方向上。一般来讲,参考阵列方向与输入线正交。实际上,参考存储器单元是通过多路复用器(多路复用器914,其包括多路复用器和用于偏置参考位线的级联晶体管VBLR)与流入其中的电流输入连接的二极管。将参考单元调谐至目标参考电平。
存储器阵列903用于两个目的。首先,它存储将由VMM 900使用的权重。其次,存储器阵列903有效地将输入(端子BLR0-3中提供的电流输入;参考阵列901和902将这些电流输入转换成输入电压以提供给字线WL0-3)乘以存储在存储器阵列中的权重以产生输出,该输出将是到下一层的输入或到最终层的输入。通过执行乘法函数,存储器阵列消除了对单独的乘法逻辑电路的需要,并且也是高功效的。这里,电压输入在字线上提供,并且输出在读取(推断)操作期间出现在位线上。置于位线上的电流执行来自连接到位线的存储器单元的所有电流的求和功能。
图10描绘了用于VMM 900的操作电压。表中的列指示置于用于所选单元的字线、用于未选单元的字线、用于所选单元的位线、用于未选单元的位线、用于所选单元的源极线和用于未选单元的源极线上的电压。行指示读取、擦除和编程操作。
图11描绘了神经元VMM 1100,其特别适用于图2所示类型的存储器单元,并且用作输入层与下一层之间的神经元的突触和部件。VMM 1100包括非易失性存储器单元的存储器阵列1103、参考阵列1101和参考阵列1102。VMM 1100类似于VMM 900,不同的是在VMM 1100中,字线在竖直方向上延伸。存在两个参考阵列1101(在顶部,其提供将输入电流转换成用于偶数行的电压的参考)和1102(在底部,其提供将输入电流转换成用于奇数行的电压的参考)。这里,输入在字线上提供,并且输出在读取操作期间出现在源极线上。置于源极线上的电流执行来自连接到源极线的存储器单元的所有电流的求和功能。
图12描绘了用于VMM 1100的操作电压。表中的列指示置于用于所选单元的字线、用于未选单元的字线、用于所选单元的位线、用于未选单元的位线、用于所选单元的源极线和用于未选单元的源极线上的电压。行指示读取、擦除和编程操作。
图13描绘了神经元VMM 1300,其特别适用于图3所示类型的存储器单元,并且用作输入层与下一层之间的神经元的突触和部件。VMM 1300包括非易失性存储器单元的存储器阵列1301、参考阵列1302(提供将输入电流转换成用于偶数行的电压的参考)和参考阵列1303(提供将输入电流转换成用于奇数行的电压的参考)。VMM 1300类似于VMM 900,不同的是,VMM 1300还包括耦接到一行存储器单元的控制栅的控制线1306和耦接到邻接行的存储器单元的擦除栅的控制线1307。这里,字线、控制栅线和擦除栅线的方向相同。VMM还包括:参考位线选择晶体管1304(复用器1314的一部分),该参考位线选择晶体管将参考位线选择性地耦接到所选参考存储器单元的位线触点;以及开关1305(复用器1314的一部分),该开关选择性地将参考位线耦接至特定选择的参考存储器单元的控制线1306。这里,在读取操作期间,在(存储器阵列1301的)字线上提供输入,并且在诸如位线1309的位线上出现输出。置于位线上的电流执行来自连接到位线的存储器单元的所有电流的求和功能。
图14描绘了用于VMM 1300的操作电压。表中的列指示置于用于所选单元的字线、用于未选单元的字线、用于所选单元的位线、用于未选单元的位线、用于所选单元的控制栅、用于与所选单元相同扇区中的未选单元的控制栅、用于与所选单元不同扇区中的未选单元的控制栅、用于所选单元的擦除栅、用于未选单元的擦除栅、用于所选单元的源极线、用于未选单元的源极线上的电压。行指示读取、擦除和编程操作。
图15描绘了神经元VMM 1500,其特别适用于图3所示类型的存储器单元,并且用作输入层与下一层之间的神经元的突触和部件。VMM 1500类似于VMM 1100,不同的是在VMM1500中,擦除栅线(诸如擦除栅线1501)在竖直方向上延伸。这里,输入在位线上提供,并且输出出现在源极线上。置于位线上的电流执行来自连接到位线的存储器单元的所有电流的求和功能。
图16描绘了用于VMM 1500的操作电压。表中的列指示置于用于所选单元的字线、用于未选单元的字线、用于所选单元的位线、用于未选单元的位线、用于所选单元的控制栅、用于与所选单元相同扇区中的未选单元的控制栅、用于与所选单元不同扇区中的未选单元的控制栅、用于所选单元的擦除栅、用于未选单元的擦除栅、用于所选单元的源极线、用于未选单元的源极线上的电压。行指示读取、擦除和编程操作。
图17描绘了神经元VMM 1700,其特别适用于图3所示类型的存储器单元,并且用作输入层与下一层之间的神经元的突触和部件。VMM 1700包括非易失性存储器单元的存储器阵列1701和参考阵列1702(在阵列的顶部)。另选地,可将另一个参考阵列设置在底部,类似于图10的参考阵列。在其他方面,VMM 1700类似于先前描述的VMM,不同的是在VMM1700中,控制栅线(诸如控制栅线1703)在竖直方向上延伸(因此参考阵列1702在与输入控制栅线正交的行方向上),并且擦除栅线(诸如擦除栅线1704)在水平方向上延伸。这里,输入在控制栅线上提供,并且输出出现在源极线上。在一个实施方案中,仅使用偶数行,并且在另一个实施方案中,仅使用奇数行。置于源极线上的电流执行来自连接到源极线的存储器单元的所有电流的求和功能。
如本文针对神经网络所述,闪存单元优选地被配置为在亚阈值区域中操作。
本文所述的存储器单元以弱反偏置:
Ids=Io*e(Vg-Vth)/kVt=w*Io*e(Vg)/kVt
w=e(-Vth)/kVt
对于使用存储器单元将输入电流转换为输入电压的I到V对数转换器:
Vg=k*Vt*log[Ids/wp*Io]
对于用作矢量矩阵乘法器VMM的存储器阵列,输出电流为:
Iout=wa*Io*e(Vg)/kVt,即
Iout=(wa/wp)*Iin=W*Iin
W=e(Vthp-Vtha)/kVt
字线或控制栅可用作输入电压的存储器单元的输入。
另选地,闪存存储器单元可被配置为在线性区域中操作:
Ids=beta*(Vgs-Vth)*Vds;beta=u*Cox*W/L
Wα(Vgs-Vth)
对于I至V线性转换器,在线性区域中操作的存储器单元可用于将输入/输出电流线性地转换为输入/输出电压。
ESF矢量矩阵乘法器的其他实施方案如美国专利申请15/826,345中所述,该专利申请以引用方式并入本文。源极线或位线可用作神经元输出(电流求和输出)。
图18描绘了模拟神经形态存储器系统1800,该模拟神经形态存储器系统包括系统控制器1801、模拟神经形态存储器引擎1802和模拟神经形态存储器引擎1803。模拟神经形态存储器引擎1802和模拟神经形态存储器引擎1803每个都包含用权重编程的VNM阵列。模拟神经形态存储器引擎1803中的VNM中的阵列的一部分专用于确定数据是否漂移的过程。
图19描绘了用于刷新VNM中的数据的方法1900。采样一组闪存存储器单元(步骤1901中的采样选择)。针对由闪存存储器单元(L0,......,LN-1)存储的每个可能的级别(N值)分析样本,并且在每对相邻级别之间计算差(DRx)(步骤1902)。对于每个级别,将差(DRx)与目标(理想)(DRx_target)进行比较(步骤1903)。如果任何差(DRx)超过目标,则设置刷新标志(步骤1904)。然后进行恢复数据处理(步骤1905)。该步骤可以通过片上控制器或片外控制器来完成。在步骤1905中,为每个级别定制重新调谐步骤(例如,重新编程)。首先读回该单元,然后根据级别,对该级别应用增量重新调谐。查找表(Icell与I调谐目标)可用于此目的。在该步骤中,使用调谐算法(迭代验证和程序)到达目标(诸如通过使用在美国专利申请15/826,345中描述的算法,该专利通过引用并入本文)。还对被采样数据保留单元进行恢复。一旦每个单元的电流等于该单元中存储的级别的目标电流(步骤1906),则过程完成(步骤1908)。如果从未达到,则认为该单元是坏的,并且该过程完成(步骤1907)。
图20描绘了用于刷新VNM中的数据的另一方法2000。采样一组示例性闪存存储器单元(步骤2001)。针对由闪存存储器单元(L0,......,LN-1)存储的每个可能的级别(N值)分析样本,并且在每对相邻级别之间计算差(DRx)(步骤2002)。对于每个级别,将差(DRx)与目标(理想)(DRx_target)进行比较(步骤2003)。如果任何差(DRx)超过目标,则设置刷新标志(步骤2004)。然后进行恢复数据处理(步骤2005)。恢复可以由片上或片外控制器完成。在步骤2005中,针对每个级别定制重新调谐步骤(例如,重新编程)。首先读回该单元(阵列单元和被采样数据保留单元),然后根据级别,通过精细增量恢复算法对该级别应用增量重新调谐。查找表(Icell与I调谐目标)可用于此目的。在该步骤中,使用精细调谐算法(精细步骤迭代验证和编程)来达到目标(诸如通过使用美国专利申请15/826,345中描述的算法,该专利通过引用并入本文)。另选地,可以通过将所有权重从训练转移到VMM阵列来对整个VMM阵列进行重新编程来完成数据恢复。一旦每个单元的电流等于该单元中存储的级别的目标电流(步骤2006),则过程完成(步骤2007)。如果从未达到,则认为该单元是坏的(步骤2008)。然后使用冗余阵列扇区代替坏的阵列扇区(步骤2009)。如果以此方式使用的冗余单元的数量超过阈值(步骤2010),则整个扇区被认为是坏的(步骤2011)。
关于图21和图22,可能期望识别“快速单元”,与平均单元相比,快速单元是在编程操作期间可以相对快速从其浮栅中失去电荷的单元,因为此类快速单元更容易随时间发生数据漂移。在图21中,参考曲线图2100,可以将快速单元标识为通过相对较少的编程尝试(计数)获得高电流级别的单元Ircell。在图22中,参考曲线图2200,应当理解,快速单元可能具有比正常单元更高的Ir操作范围。图22示出了用于数据保留(漂移)监测的示例性单元。超出最小和最大范围的单元用于监测目的。这用于创建应力条件比正常单元更糟的监测单元。
图23描绘了数据漂移检测方案。在该示例中,期望某个电流级别在目标1和目标2之间。如果感测电流在这些目标之间,则无需刷新,这意味着漂移对于系统性能是可接受的。但是,如果感测电流在目标1和目标2之间的范围之外,则将执行数据刷新(恢复)过程。
图24描绘了数据漂移检测器的实施方案。数据漂移检测器2400在比较器2403中接收电流2402(其可以是通过所选单元的感测电流级别或此类电流之间的差)和参考电流2401,该比较器输出指示电流2402是否超过参考电流2401的值。数据漂移检测器2400基于预期已经存储在所选单元中的值,将所选单元汲取的电流与目标电流进行比较。
图25描绘了数据漂移检测器的另一实施方案。数据漂移检测器2500包括采样保持电容器2501和2504、开关2502和2505、电流源2506(其可以是通过选定单元的感测电流级别或此类电流之间的差)、参考电流2503和比较器2507。在该实施方案中,两个电流源由电容器采样通过确定的斜坡时间段并保持,然后由比较器2507比较那些采样值。因此,数据漂移检测器2500基于预期已经存储在所选单元中的值,将所选单元所汲取的采样电流与采样目标电流进行比较。
参考图26,如曲线图2600所示,可以基于对发生明显的数据漂移之前可能要经过多少时间的理解来选择数据漂移检测器2500的采样周期。与数据漂移检测器2400相比,这可以减少功耗。
图27描绘了数据漂移检测器的另一实施方案。数据漂移检测器2700包括所选存储器单元2701、电流源2702、参考电压2703和比较器2704。在该实施方案中,在所选存储器单元2701的浮栅上存储的电压(节点2705上的电压=约VFG–VtFG)和参考电压2703(所选存储器单元2701打算存储的电压)之间进行直接比较)。存储器单元2701以源极跟随器操作模式配置。参考电压可以从参考存储器单元产生。
应当指出,如本文所用,术语“在…上方”和“在…上”两者包容地包含“直接在…上”(之间未设置中间材料、元件或空间)和“间接在…上”(之间设置有中间材料、元件或空间)。类似地,术语“相邻”包括“直接相邻”(之间没有设置中间材料、元件或空间)和“间接相邻”(之间设置有中间材料、元件或空间),“安装到”包括“直接安装到”(之间没有设置中间材料、元件或空间)和“间接安装到”(之间设置有中间材料、元件或空间),并且“电耦合至”包括“直接电耦合至”(之间没有将元件电连接在一起的中间材料或元件)和“间接电耦合至”(之间有将元件电连接在一起的中间材料或元件)。例如,“在衬底上方”形成元件可包括在两者间没有中间材料/元件的情况下在衬底上直接形成元件,以及在两者间有一个或多个中间材料/元件的情况下在衬底上间接形成元件。

Claims (43)

1.一种在模拟神经形态存储器系统中检测所选闪存存储器单元中的数据漂移并刷新数据的方法,所述方法包括:
感测存储在所选闪存存储器单元的浮栅中的第一电压;
将所述第一电压与由参考电路提供的第二电压进行比较;
如果所述第一电压超过所述第二电压,则通过将第三电压存储在所述浮栅上来刷新存储在所述浮栅中的所述数据,其中所述第三电压比所述第一电压更接近所述第二电压。
2.根据权利要求1所述的方法,其中所述参考电路包括电压源。
3.根据权利要求1所述的方法,其中所述参考电路包括参考存储器单元。
4.根据权利要求1所述的方法,其中所选存储器单元为分栅存储器单元。
5.根据权利要求1所述的方法,其中所选存储器单元为叠栅存储器单元。
6.根据权利要求1所述的方法,其中所选存储器单元以源极跟随器模式配置。
7.根据权利要求1所述的方法,其中以专门针对当前级别的恢复量来完成所述刷新。
8.根据权利要求1所述的方法,其中通过将训练权重重新转移到所选存储器单元来完成所述刷新。
9.一种在模拟神经形态存储器系统中检测所选闪存存储器单元中的数据漂移并刷新数据的方法,所述方法包括:
感测由所选闪存存储器单元在读取操作期间汲取的第一电流;
将所述第一电流与由参考电路汲取的第二电流进行比较;
如果所述第一电流超过所述第二电流,则刷新存储在所选存储器单元的浮栅中的所述数据,使得所选闪存存储器单元在读取操作期间汲取第三电流,其中所述第三电流比所述第一电流更接近所述第二电流。
10.根据权利要求9所述的方法,其中所述参考电路包括电流源。
11.根据权利要求9所述的方法,其中所选存储器单元为分栅存储器单元。
12.根据权利要求9所述的方法,其中所选存储器单元为叠栅存储器单元。
13.根据权利要求9所述的方法,其中以专门针对当前级别的恢复量来完成所述刷新。
14.根据权利要求9所述的方法,其中通过将训练权重重新转移到所选存储器单元来完成所述刷新。
15.一种在模拟神经形态存储器系统中检测所选闪存存储器单元中的数据漂移并刷新数据的方法,所述方法包括:
对由所选闪存存储器单元在读取操作期间汲取的第一电流进行采样以生成第一采样值;
对由参考电路汲取的第二电流进行采样以生成第二采样值;
将所述第一采样值和所述第二采样值进行比较;
如果所述第一采样值超过所述第二采样值,则刷新存储在所选存储器单元的浮栅中的所述数据,使得所选闪存存储器单元在读取操作期间汲取第三电流,其中所述第三电流比所述第一电流更接近所述第二电流。
16.根据权利要求15所述的方法,其中所述参考电路包括电流源。
17.根据权利要求15所述的方法,其中所选存储器单元为分栅存储器单元。
18.根据权利要求15所述的方法,其中所选存储器单元为叠栅存储器单元。
19.根据权利要求15所述的方法,其中以专门针对当前级别的恢复量来完成所述刷新。
20.根据权利要求15所述的方法,其中通过将训练权重重新转移到所选存储器单元来完成所述刷新。
21.一种在模拟神经形态存储器系统中检测所选闪存存储器单元中的数据漂移并刷新数据的方法,所述方法包括:
感测由所选闪存存储器单元在读取操作期间汲取的第一电流;
将所述第一电流与由参考电路汲取的第二电流进行比较;
将所述第一电流与由参考电路汲取的第三电流进行比较;
如果所述第一电流超过所述第三电流,则刷新存储在所选存储器单元的浮栅中的所述数据,使得所选闪存存储器单元在读取操作期间汲取电流,其中所恢复电流在所述第二电流和所述第三电流之间;或者
如果所述第一电流超过所述第二电流并且不超过所述第三电流,则抑制刷新所述数据。
22.根据权利要求21所述的方法,其中所述参考电路包括电流源。
23.根据权利要求21所述的方法,其中所选存储器单元为分栅存储器单元。
24.根据权利要求21所述的方法,其中所选存储器单元为叠栅存储器单元。
25.根据权利要求21所述的方法,其中以专门针对当前级别的恢复量来完成所述刷新。
26.根据权利要求21所述的方法,其中通过将训练权重重新转移到所选存储器单元来完成所述刷新。
27.一种在模拟神经形态存储器系统中检测所选闪存存储器单元中的数据漂移并刷新数据的方法,所述方法包括:
识别快速单元;
对所述快速单元进行采样以进行数据漂移检测;
以示例性级别对所述快速单元进行编程以进行数据漂移检测;以及
监测所述被采样快速单元以进行数据漂移检测。
28.根据权利要求27所述的方法,其中所述监测步骤包括:
感测由所述被采样闪存存储器单元在读取操作期间汲取的第一电流;
将所述第一电流与由参考电路汲取的第二电流进行比较;
将所述第一电流与由参考电路汲取的第三电流进行比较;
如果所述第一电流超过所述第三电流,则刷新存储在所述存储器单元的浮栅中的所述数据,使得所选闪存存储器单元在读取操作期间汲取电流,其中所恢复电流在所述第二电流和所述第三电流之间;或者
如果所述第一电流超过所述第二电流并且不超过所述第三电流,则抑制刷新所述数据。
29.根据权利要求27所述的方法,其中所述参考电路包括电流源。
30.根据权利要求27所述的方法,其中所述被采样闪存存储器单元为分栅存储器单元。
31.根据权利要求27所述的方法,其中所述被采样存储器单元为叠栅存储器单元。
32.根据权利要求27所述的方法,其中以专门针对当前级别的恢复量来完成所述刷新。
33.根据权利要求27所述的方法,其中通过将训练权重重新转移到所述被采样存储器单元来完成所述刷新。
34.一种在模拟神经形态存储器系统中检测所选闪存存储器单元中的数据漂移并刷新数据的方法,所述方法包括:
选择存储器单元的样本;
测试所述被采样单元以进行数据漂移检测;
以选自N个级别的示例性级别对所述被测试单元进行编程以进行数据漂移检测;以及
监测所述被采样单元以进行数据漂移检测。
35.根据权利要求34所述的方法,其中当所述被测试单元的任何电流超过增量目标时,执行数据恢复。
36.根据权利要求34所述的方法,其中所述被采样单元的任何电流超过增量目标,则设置所述数据恢复标志。
37.根据权利要求35所述的方法,其中当恢复单元的任何电流不能满足目标时,则将所述恢复单元识别为坏单元。
38.根据权利要求37所述的方法,所述方法还包括用冗余单元替换坏单元。
39.根据权利要求35所述的方法,其中所述数据恢复包括单元调谐。
40.根据权利要求35所述的方法,其中所述数据恢复包括以与所述示例性级别相对应的目标量进行单元调谐。
41.根据权利要求34所述的方法,其中所述存储器单元为分栅存储器单元。
42.根据权利要求34所述的方法,其中所述存储器单元为叠栅存储器单元。
43.根据权利要求35所述的方法,其中所述数据恢复包括将训练权重重新转移到所述存储器单元。
CN201980018504.7A 2018-03-14 2019-01-16 用于深度学习神经网络中的模拟非易失性存储器的数据刷新的方法和设备 Pending CN111837189A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862642867P 2018-03-14 2018-03-14
US62/642,867 2018-03-14
US15/990,220 2018-05-25
US15/990,220 US10446246B2 (en) 2018-03-14 2018-05-25 Method and apparatus for data refresh for analog non-volatile memory in deep learning neural network
PCT/US2019/013871 WO2019177687A1 (en) 2018-03-14 2019-01-16 Method and apparatus for data refresh for analog non-volatile memory in deep learning neural network

Publications (1)

Publication Number Publication Date
CN111837189A true CN111837189A (zh) 2020-10-27

Family

ID=67906045

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980018504.7A Pending CN111837189A (zh) 2018-03-14 2019-01-16 用于深度学习神经网络中的模拟非易失性存储器的数据刷新的方法和设备

Country Status (7)

Country Link
US (3) US10446246B2 (zh)
EP (1) EP3766071B1 (zh)
JP (1) JP7153737B2 (zh)
KR (2) KR20220114095A (zh)
CN (1) CN111837189A (zh)
TW (3) TWI755339B (zh)
WO (1) WO2019177687A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11461621B2 (en) * 2018-06-26 2022-10-04 Vishal Sarin Methods and systems of implementing positive and negative neurons in a neural array-based flash memory
CN110797067B (zh) * 2019-10-21 2021-10-22 上海闪易半导体有限公司 存储阵列模块及其控制方法、装置、模组
CN111222626B (zh) * 2019-11-07 2021-08-10 恒烁半导体(合肥)股份有限公司 一种基于NOR Flash模块的神经网络的数据切分运算方法
US11636322B2 (en) 2020-01-03 2023-04-25 Silicon Storage Technology, Inc. Precise data tuning method and apparatus for analog neural memory in an artificial neural network
JPWO2022013676A1 (zh) 2020-07-17 2022-01-20
CN112053726B (zh) * 2020-09-09 2022-04-12 哈尔滨工业大学 一种基于Er态阈值电压分布的闪存误擦除数据恢复方法
US11626168B2 (en) * 2021-03-10 2023-04-11 Samsung Electronics Co.. Ltd. De-noising using multiple threshold-expert machine learning models
KR102612011B1 (ko) * 2021-03-24 2023-12-07 광운대학교 산학협력단 인공 신경망 소자 및 이의 동작 방법
US12014768B2 (en) 2021-07-29 2024-06-18 Taiwan Semiconductor Manufacturing Company, Ltd. DRAM computation circuit and method
KR20240052994A (ko) * 2021-11-12 2024-04-23 실리콘 스토리지 테크놀로지 인크 신경망에서 하나 이상의 메모리 셀에 인가할 바이어스 전압 결정
US11942144B2 (en) 2022-01-24 2024-03-26 Stmicroelectronics S.R.L. In-memory computation system with drift compensation circuit
CN115148248B (zh) * 2022-09-06 2022-11-08 北京奎芯集成电路设计有限公司 基于深度学习的dram刷新方法和装置
KR102525664B1 (ko) * 2022-09-15 2023-04-25 전남대학교산학협력단 메모리 반도체 최적의 예비자원 수 예측 방법 및 장치

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239505A (en) * 1990-12-28 1993-08-24 Intel Corporation Floating gate non-volatile memory with blocks and memory refresh
US5479170A (en) * 1992-10-16 1995-12-26 California Institute Of Technology Method and apparatus for long-term multi-valued storage in dynamic analog memory
US5909449A (en) * 1997-09-08 1999-06-01 Invox Technology Multibit-per-cell non-volatile memory with error detection and correction
US20070263454A1 (en) * 2006-05-15 2007-11-15 Apple Inc. Maintenance Operations for Multi-Level Data Storage Cells
CN101364436A (zh) * 2001-05-31 2009-02-11 株式会社半导体能源研究所 非易失存储器及其驱动方法
US8000141B1 (en) * 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
CN104332178A (zh) * 2013-07-16 2015-02-04 希捷科技有限公司 固态非易失性存储单元的部分重新编程
US20170092371A1 (en) * 2015-09-30 2017-03-30 Eli Harari Capacitive-coupled non-volatile thin-film transistor strings in three dimensional arrays
US9711197B1 (en) * 2016-03-21 2017-07-18 SK Hynix Inc. Memory device and operating method thereof
US20170337466A1 (en) * 2016-05-17 2017-11-23 Silicon Storage Technology, Inc. Deep Learning Neural Network Classifier Using Non-volatile Memory Array

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029130A (en) 1990-01-22 1991-07-02 Silicon Storage Technology, Inc. Single transistor non-valatile electrically alterable semiconductor memory device
US6493270B2 (en) * 1999-07-01 2002-12-10 Micron Technology, Inc. Leakage detection in programming algorithm for a flash memory device
EP1206775B1 (en) * 1999-08-23 2004-11-10 Micron Technology, Inc. Flash memory device with externally triggered detection and repair of leaky cells
JP2001076496A (ja) * 1999-09-02 2001-03-23 Fujitsu Ltd 不揮発性メモリのデータ化け防止回路およびその方法
US6396744B1 (en) * 2000-04-25 2002-05-28 Multi Level Memory Technology Flash memory with dynamic refresh
JP2002230984A (ja) 2001-02-05 2002-08-16 Fujitsu Ltd 不揮発性半導体記憶装置
US6747310B2 (en) 2002-10-07 2004-06-08 Actrans System Inc. Flash memory cells with separated self-aligned select and erase gates, and process of fabrication
WO2004097839A1 (ja) 2003-04-28 2004-11-11 Fujitsu Limited 不揮発性半導体記憶装置及び不揮発性半導体記憶装置のプログラム方法
CN1710661A (zh) * 2004-06-16 2005-12-21 皇家飞利浦电子股份有限公司 一种确定光盘读取信号质量的方法及装置
US7483324B2 (en) * 2004-10-21 2009-01-27 Nxp B.V. Memory device and method providing an average threshold based refresh mechanism
US7551503B2 (en) * 2005-06-24 2009-06-23 Macronix International Co., Ltd. Method for refreshing a flash memory
US7558149B2 (en) * 2006-01-24 2009-07-07 Macronix International Co., Ltd. Method and apparatus to control sensing time for nonvolatile memory
EP1843356A1 (en) * 2006-04-03 2007-10-10 STMicroelectronics S.r.l. Method and system for refreshing a memory device during reading thereof
US7869275B2 (en) * 2006-10-07 2011-01-11 Active-Semi, Inc. Memory structure capable of bit-wise write or overwrite
WO2009039169A1 (en) * 2007-09-17 2009-03-26 Innovative Silicon S.A. Refreshing data of memory cells with electrically floating body transistors
JP2009140564A (ja) 2007-12-06 2009-06-25 Toshiba Corp Nand型フラッシュメモリおよびメモリシステム
US7859932B2 (en) * 2008-12-18 2010-12-28 Sandisk Corporation Data refresh for non-volatile storage
US8032804B2 (en) * 2009-01-12 2011-10-04 Micron Technology, Inc. Systems and methods for monitoring a memory system
DE112009005413B4 (de) * 2009-12-02 2018-11-29 Micron Technology, Inc. Verfahren zur Aktualisierung für nichtflüchtige Speicher und Nichtflüchtiger-Speicher-Vorrichtung
US8649215B2 (en) * 2010-12-22 2014-02-11 HGST Netherlands B.V. Data management in flash memory using probability of charge disturbances
CN103999161B (zh) * 2011-12-20 2016-09-28 英特尔公司 用于相变存储器漂移管理的设备和方法
US9645177B2 (en) * 2012-05-04 2017-05-09 Seagate Technology Llc Retention-drift-history-based non-volatile memory read threshold optimization
US9224089B2 (en) * 2012-08-07 2015-12-29 Qualcomm Incorporated Method and apparatus for adaptive bit-allocation in neural systems
US9564219B2 (en) * 2015-04-08 2017-02-07 Sandisk Technologies Llc Current based detection and recording of memory hole-interconnect spacing defects
US9563505B2 (en) * 2015-05-26 2017-02-07 Winbond Electronics Corp. Methods and systems for nonvolatile memory data management
US9836349B2 (en) * 2015-05-29 2017-12-05 Winbond Electronics Corp. Methods and systems for detecting and correcting errors in nonvolatile memory
WO2017201107A1 (en) * 2016-05-16 2017-11-23 Purepredictive, Inc. Predictive drift detection and correction
EP3367385B1 (en) * 2017-02-28 2020-07-08 ams AG Memory arrangement and method for operating a memory arrangement
KR102415867B1 (ko) * 2017-11-29 2022-07-04 에스케이하이닉스 주식회사 메모리 셀의 결함을 제거하기 위한 메모리 시스템 및 그의 동작 방법
US10748630B2 (en) * 2017-11-29 2020-08-18 Silicon Storage Technology, Inc. High precision and highly efficient tuning mechanisms and algorithms for analog neuromorphic memory in artificial neural networks

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239505A (en) * 1990-12-28 1993-08-24 Intel Corporation Floating gate non-volatile memory with blocks and memory refresh
US5479170A (en) * 1992-10-16 1995-12-26 California Institute Of Technology Method and apparatus for long-term multi-valued storage in dynamic analog memory
US5909449A (en) * 1997-09-08 1999-06-01 Invox Technology Multibit-per-cell non-volatile memory with error detection and correction
CN101364436A (zh) * 2001-05-31 2009-02-11 株式会社半导体能源研究所 非易失存储器及其驱动方法
US20070263454A1 (en) * 2006-05-15 2007-11-15 Apple Inc. Maintenance Operations for Multi-Level Data Storage Cells
US8000141B1 (en) * 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
CN104332178A (zh) * 2013-07-16 2015-02-04 希捷科技有限公司 固态非易失性存储单元的部分重新编程
US20170092371A1 (en) * 2015-09-30 2017-03-30 Eli Harari Capacitive-coupled non-volatile thin-film transistor strings in three dimensional arrays
US9711197B1 (en) * 2016-03-21 2017-07-18 SK Hynix Inc. Memory device and operating method thereof
US20170337466A1 (en) * 2016-05-17 2017-11-23 Silicon Storage Technology, Inc. Deep Learning Neural Network Classifier Using Non-volatile Memory Array

Also Published As

Publication number Publication date
TW202044127A (zh) 2020-12-01
TWI755339B (zh) 2022-02-11
TW202137074A (zh) 2021-10-01
KR20220114095A (ko) 2022-08-17
JP2021517704A (ja) 2021-07-26
US20190341118A1 (en) 2019-11-07
EP3766071B1 (en) 2022-11-23
WO2019177687A1 (en) 2019-09-19
US10446246B2 (en) 2019-10-15
TWI696128B (zh) 2020-06-11
TWI733451B (zh) 2021-07-11
EP3766071A1 (en) 2021-01-20
US20190287631A1 (en) 2019-09-19
US10607710B2 (en) 2020-03-31
JP7153737B2 (ja) 2022-10-14
US10861568B2 (en) 2020-12-08
US20200035310A1 (en) 2020-01-30
KR20200121347A (ko) 2020-10-23
EP3766071A4 (en) 2021-09-29
KR102430151B1 (ko) 2022-08-08
TW201939362A (zh) 2019-10-01

Similar Documents

Publication Publication Date Title
KR102430151B1 (ko) 심층 학습 신경망에서 아날로그 비휘발성 메모리를 위한 데이터 리프레쉬 방법 및 장치
CN111542840B (zh) 用于深度学习人工神经网络中的模拟非易失性存储器的可编程神经元
KR102654503B1 (ko) 딥 러닝 인공 신경망에서의 아날로그 신경 메모리용 고전압 생성을 위한 방법 및 장치
CN113366503B (zh) 使用二栅极非易失性存储器单元阵列的神经网络分类器
CN112602095B (zh) 用于深度学习神经网络中使用的模拟神经存储器系统中的存储器单元的温度和泄漏补偿
KR102516399B1 (ko) 심층 학습 인공 신경망에서 아날로그 신경 메모리를 위한 디코더들
KR102675657B1 (ko) 딥 러닝 인공 신경망에서의 아날로그 신경 메모리를 프로그래밍하기 위한 방법 및 장치
CN112567391A (zh) 包括多个矢量-矩阵乘法阵列和共享部件的用于深度学习神经网络的模拟神经存储器系统
CN112585623B (zh) 用于深度学习神经网络的可配置模拟神经存储器系统
CN112400177A (zh) 对深度学习人工神经网络中的模拟神经元存储器中的参考晶体管和存储器单元的补偿
CN113366506A (zh) 使用堆叠栅极非易失性存储器单元阵列的神经网络分类器
CN115885345A (zh) 模拟神经存储器中的并发写入和验证操作
CN112368716A (zh) 对深度学习人工神经网络中的模拟神经存储器中包含故障存储器单元的行或列的冗余存储器访问
CN115516565A (zh) 人工神经网络中的具有源极线拉低机构的模拟神经存储器阵列
CN113366504B (zh) 使用四栅极非易失性存储器单元阵列的神经网络分类器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination