CN106997317B - 通过检测泄漏电流及感测时间的快速软数据读取 - Google Patents

通过检测泄漏电流及感测时间的快速软数据读取 Download PDF

Info

Publication number
CN106997317B
CN106997317B CN201610885551.XA CN201610885551A CN106997317B CN 106997317 B CN106997317 B CN 106997317B CN 201610885551 A CN201610885551 A CN 201610885551A CN 106997317 B CN106997317 B CN 106997317B
Authority
CN
China
Prior art keywords
memory cell
logic
memory cells
processor
memory
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.)
Active
Application number
CN201610885551.XA
Other languages
English (en)
Other versions
CN106997317A (zh
Inventor
金永毕
安托万·胡维尔
黄南五
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seagate Technology LLC
Original Assignee
Seagate Technology LLC
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 Seagate Technology LLC filed Critical Seagate Technology LLC
Publication of CN106997317A publication Critical patent/CN106997317A/zh
Application granted granted Critical
Publication of CN106997317B publication Critical patent/CN106997317B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • 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/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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/24Bit-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/32Timing 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
    • 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
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/025Detection or location of defective auxiliary circuits, e.g. defective refresh counters in signal lines
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50012Marginal testing, e.g. race, voltage or current testing of timing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1125Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs
    • 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
    • G11C2029/1204Bit line control
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5006Current
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/026Detection or location of defective auxiliary circuits, e.g. defective refresh counters in sense amplifiers
    • 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/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/26Accessing multiple arrays
    • 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/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/26Accessing multiple arrays
    • G11C29/28Dependent multiple arrays, e.g. multi-bit arrays
    • 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/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Probability & Statistics with Applications (AREA)
  • Read Only Memory (AREA)

Abstract

本发明描述用于基于感测时间及/或泄漏电流从存储器单元进行低时延软数据获取的系统及方法。在一个实施例中,所述系统及方法可包含将第一读取电压施加到由快闪存储器装置的处理器选定为用于读取操作的存储器单元的页的字线;将传递电压施加到与存储块的存储器单元的一或多个不同页相关联的字线;在施加所述第一读取电压之后,感测所述选定页中的存储器单元的位线是否导通;测量与感测所述选定页中的所述存储器单元的所述位线是否导通相关联的副作用;及至少部分地基于所述所测量副作用将LLR值作为软LDPC输入指派到所述存储器单元。

Description

通过检测泄漏电流及感测时间的快速软数据读取
技术领域
本申请涉及存储器,并且具体地涉及用于减少从存储器单元获取软数据的时延的方法及系统。
背景技术
快闪存储器装置的存储器单元的典型读取可包含感测放大器施加两个或多于两个读取电压到存储器单元以确定由存储器单元存储的逻辑值。举例来说,感测放大器可针对每一读取操作使用不同读取电压来执行多个读取操作。存储器单元可经充电到预定电压以存储逻辑0,同时存储器单元可缺乏或没有电荷以存储逻辑1。当将读取电压施加到存储器单元的位线时,带电(逻辑0)的存储器单元将不导通除非读取电压超出存储于存储器单元中的电压充电为止。另一方面,不带电(逻辑1)的存储器单元将对于任何所施加读取电压导通。因此,导通位线指示逻辑1且非导通位线指示逻辑0。
发明内容
本文中的揭示内容包含用于至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的方法及系统。在一些实施例中,本发明的系统及方法可执行相对于快闪存储器存储装置的存储器单元的读取操作。
在一个实施例中,存储装置可包含感测放大器及处理器。在一些情况下,处理器包含存储装置的存储控制器及/或为存储控制器的部分。在一个实例中,存储器单元的页可由处理器选定为用于读取操作。在一些情况下,感测放大器可将第一读取电压施加到存储器单元的页的字线。在一些实施例中,感测放大器可将传递电压施加到与存储器单元的一或多个不同页相关联的字线。在施加第一读取电压之后,感测放大器可感测在选定页中的存储器单元的位线是否导通。在一个配置中,感测放大器可测量与感测选定页中的存储器单元的位线是否导通相关联的副作用。副作用可包含在施加读取电压情况下测量感测位线是否正导通花费的时间及/或测量与感测位线是否导通相关联的泄漏电流。在一些实施例中,感测放大器可包含时钟计数器。感测放大器可使用时钟计数器以测量感测时间。
在一个配置中,处理器可至少部分地基于所测量副作用,将对数似然比(LLR)值作为软低密度奇偶校验(LDPC)输入指派到存储器单元。在一些实施例中,LLR值可用作到错误校正码(ECC)引擎的软LDPC输入以解码存储于存储器单元中的数据。在确定选定页中的存储器单元的位线导通之后,感测放大器可将存储器单元识别为存储逻辑1。另一方面,在确定选定页中的存储器单元的位线并不导通之后,感测放大器可将存储器单元识别为存储逻辑0。
在一个实施例中,感测放大器可将相关于存储器单元的位线是否导通的第一数据及相关于所测量副作用的第二数据发送到处理器。在一个实施例中,所测量副作用包括泄漏电流电平。在确定第一数据指示存储器单元存储逻辑0之后,处理器可分析来自第二数据的泄漏电流电平以确定泄漏电流电平是否指示存储器单元存储强逻辑0或弱逻辑0。在一些情况下,处理器可比较泄漏电流电平与预定泄漏阈值。在确定泄漏电流电平满足预定泄漏阈值之后,处理器可将强逻辑0LLR值指派到存储器单元。在确定泄漏电流电平未能满足预定泄漏阈值之后,处理器可将弱逻辑0LLR值指派到存储器单元。
在一个实施例中,所测量副作用包括感测时间。感测时间可至少部分地基于感测放大器确定选定页中的存储器单元是否导通花费的时间周期。在确定第一数据指示存储器单元存储逻辑1之后,处理器分析来自第二数据的感测时间以确定感测时间是否指示存储器单元存储强逻辑1或弱逻辑1。在一些情况下,处理器可比较感测时间与预定定时阈值。在确定感测时间满足预定定时阈值之后,处理器可将强逻辑1LLR值指派到存储器单元。在确定感测时间未能满足预定定时阈值之后,处理器可将弱逻辑1LLR值指派到存储器单元。
在一些实施例中,相对于施加第一读取电压,感测放大器可旁路施加第二及/或任何后续读取电压到选定页的字线以确定选定页中的存储器单元是否导通。
描述用于至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的方法。在一个实施例中,所述方法可包含施加第一读取电压到由快闪存储器装置的处理器选定为用于读取操作的存储器单元的页的字线。所述方法可包含施加传递电压到与存储块的存储器单元的一或多个不同页相关联的字线,及在施加第一读取电压之后,感测选定页中的存储器单元的位线是否导通。所述方法可包含测量与感测选定页中的存储器单元的位线是否导通相关联的副作用,及至少部分地基于所测量副作用将LLR值作为软LDPC输入指派到存储器单元。
还描述用于至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的设备。在一个实施例中,所述设备可包含处理器、与处理器电子通信的存储器及存储于存储器中的指令,所述指令可由处理器执行以执行如下步骤:施加第一读取电压到由快闪存储器装置的处理器选定为用于读取操作的存储器单元的页的字线。所述处理器可执行如下步骤:施加传递电压到与存储块的存储器单元的一或多个不同页相关联的字线,及在施加第一读取电压之后,感测选定页中的存储器单元的位线是否导通。所述处理器可执行如下步骤:测量与感测选定页中的存储器单元的位线是否导通相关联的副作用,及至少部分地基于所测量副作用将LLR值作为软 LDPC输入指派到存储器单元。
前文已相当广泛地概述了根据本发明的实例的特征及技术优势从而使得更好的理解以下详细描述。下文将描述额外特征及优势。所揭示的概念及特定实例可容易地用作用于修改或设计用于进行本发明的相同目的的其它结构的基础。此类等效构造不脱离所附权利要求书的范围。当结合附图考虑时,本文所揭示的概念的特性(包含其组织及操作方法)连同相关联优势将从以下描述更好地理解。图中的每一者仅出于说明及描述的目的提供且并不提供为对权利要求书的限制的界定。
附图说明
可参考以下图式实现对本发明的性质与优势的进一步理解。在附图中,类似组件或特征可具有相同参考标记。另外,可通过在第一参考标记之后跟着短划线及可区分类似组件的第二标记来区分同一类型的各种组件。然而,针对各种组件(包含具有短划线及第二参考标记的那些)所论述之特征适用于其它类似组件。如果说明书中只使用第一参考标记,则描述适用于具有相同第一参考标记的类似组件中的任一者而与第二参考标记无关。
图1为根据各种实施例的系统的实例的框图;
图2展示根据本发明的各种方面的装置的框图;
图3展示根据本发明的各种方面的装置的框图;
图4展示根据本发明的各种方面的系统的图式;
图5展示根据本发明的各种方面的曲线图的一个实施例;
图6展示根据本发明的各种方面的曲线图的另一实施例;
图7展示根据本发明的各种方面的曲线图的另一实施例;
图8为说明根据本发明的各种方面的方法的实例的流程图;及
图9为说明根据本发明的各种方面的方法的实例的流程图。
具体实施方式
下文大体上涉及至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延。在一个实施例中,系统及方法施加单一读取电压以读取存储器单元,而非常规读取操作中用于读取存储器单元的典型两个或多于两个不同读取电压。
作为一实例,感测放大器可施加VR1用于第一读取,VR2用于第二读取及VR3用于第三读取,其中VR2为比VR1高的电压,且VR3为比VR1及VR2高的电压。因此,感测放大器可确定由存储器单元存储何值。在每一遍次中,感测放大器可确定存储器单元的位线是否导通。如果感测放大器在施加读取电压之后确定位线导通,则将读取结果指派为逻辑1。如果感测放大器在施加读取电压之后确定位线并不导通,则将读取结果指派为逻辑0。因此,如果读取结果为111,其指示在施加每一读取电压VR1、VR2及 VR3之后位线导通,则感测放大器确定存储器单元存储强逻辑1。如果读取结果为011,其指示位线在VR1下并不导通但对于VR2及VR3确实导通,则感测放大器确定存储器单元存储弱逻辑1。如果读取结果为001,其指示位线在VR1或VR2下并不导通但在 VR3下确实导通,则感测放大器确定存储器单元存储弱逻辑0。如果读取结果为000,其指示位线在VR1、VR2或VR3下并不导通,则感测放大器确定存储器单元存储强逻辑0。因此,可基于存储于存储器单元中的所识别逻辑值将对数似然比(LLR)值指派给存储器单元。举例来说,强逻辑1可指派有(-10)的LLR值,弱逻辑1可指派有(-5)的LLR 值,弱逻辑0可指派有(+5)的LLR值且强逻辑0可指派有(+10)的LLR值。每一经测量存储器单元的所指派LLR值可用作到软低密度奇偶校验(LDPC)错误校正码(ECC)引擎的输入以解码存储于存储器单元中的数据。在一些情况下,存储器单元可存储单一位,例如快闪存储器装置的每一单层级单元(SLC)。因此,本发明的系统及方法的读取操作可施加单一读取电压以获取LLR值,而非如常规读取操作中进行般施加两个或多于两个不同读取电压。
另外或替代地,存储器单元可存储两个或多于两个位,例如多层级单元(MLC)、三层级单元(TLC)及/或四层级单元(QLC)存储器单元。MLC存储器单元可存储两个位的值且因此存储四个状态00、01、10及11中的一者。四个状态中的每一者可指派有阈值电压。同样地,TLC存储器单元可存储三个位的值且因此存储八个状态000、001、010、 011、100、101、110及111中的一者。类似地,QLC存储器单元可存储四个位的值且因此存储十六个状态中的一者。在一些情况下,本文中所描述的方法及系统可如其对SLC 存储器单元进行般同样应用于MLC、TLC及/或QLC存储器单元。
图1为说明本发明的系统及方法可实施于其中的环境100的一个实施例的框图。环境可包含装置105及存储装置110。存储装置110可包含硬盘驱动器、固态驱动器及包含硬盘及固态驱动器两者的混合驱动器的任何组合。存储装置110可包含挥发性高速缓冲存储器(例如,磁盘缓冲器、静态随机存取存储器(RAM)、动态RAM等)。挥发性高速缓冲存储器可暂时保存数据,例如待存储于存储装置110上的新数据及/或正传送到第二存储位置的已存储于存储装置110的第一存储位置处的数据。
在一些实施例中,本文中所描述的系统及方法可执行于单一装置(例如,装置105)上。在一些情况下,本文中所描述的方法可执行于多个存储装置或存储装置的网络上。装置105的实例包含存储服务器、存储箱体、存储控制器(例如,存储装置110的存储控制器)、分布式存储系统中的存储驱动器、云存储系统上的存储驱动器、个人计算装置上的存储装置、服务器上的存储装置等。在一些配置中,装置105可包含软数据模块130。在一个实例中,装置105可耦合到存储装置110。在一些情况下,装置105及存储装置 110可在同一箱体(例如,硬盘驱动器、固态驱动器、混合驱动器等)中。在一些情况下,装置105可为存储装置110的主机(例如,操作系统、主机硬件系统等)的组件。
在一个实施例中,装置105可为具有一或多个处理器、存储器及/或一或多个存储装置的计算装置。在一些情况下,装置105可包含无线存储装置。在一些实施例中,装置 105可包含用于家庭或办公设置的云驱动器。在一个实施例中,装置105可包含网络装置,例如交换器、路由器、接入点等。在一个实例中,装置105可操作以从一或多个本地及/或远程计算装置接收数据流、结合一或多个本地及/或远程计算装置存储及/或处理数据及/或向一或多个本地及/或远程计算装置传输数据。
装置105可包含数据库。在一些情况下,数据库可在装置105内部。举例来说,存储装置110可包含数据库。另外或替代地,数据库可包含到有线及/或无线数据库的连接。另外,如本文中进一步详细描述,软件及/或固件(例如,存储于存储器中)可执行于装置 105的处理器上。执行于处理器上的此软件及/或固件可操作以致使装置105监视、处理、汇总、呈现及/或发送与本文中所描述的操作相关联的信号。
在一些实施例中,存储装置110可经由一或多个网络连接到装置105。网络的实例包含云网络、局域网(LAN)、广域网(WAN)、虚拟私用网络(VPN)、个人局域网、近场通信(NFC)、电信网络、无线网络(例如,使用802.11)及/或蜂窝式网络(例如,使用3G及/ 或LTE)等。在一些配置中,网络可包含因特网及/或企业内部网。装置105可经由无线通信链路在网络上接收及/或发送信号。在一些实施例中,用户可经由本地计算装置、远程计算装置及/或网络装置存取装置105的功能。举例来说,在一些实施例中,装置105 可包含与用户介接的应用程序。在一些情况下,装置105可包含与网络装置、远程计算装置及/或本地计算装置的一或多个功能介接的应用程序。
图2展示根据本发明的各种方面的用于电子通信的设备205的框图200。设备205可为参考图1描述的装置105及/或110的一或多个方面的实例。设备205可包含驱动控制器210、驱动缓冲器215、主机接口逻辑220、驱动媒体225及软数据模块130-a。这些组件中的每一者可彼此通信及/或与其它组件直接及/或间接通信。
设备205的组件中的一或多者可个别地或共同地使用适于执行硬件中的可适用功能中的一些或全部的一或多个专用集成电路(ASIC)实施。替代地,功能可由一或多个其它处理单元(或核心)在一或多个集成电路上执行。在其它实例中,可使用其它类型的集成电路(例如,结构化/平台ASIC、现场可编程门阵列(FPGA)及其它半定制IC)),所述其它类型的集成电路可以所属领域中已知的任何方式编程。每一模块的功能也可整体或部分地用格式化为待由一或多个通用及/或专用处理器执行的体现在存储器中的指令实施。
在一个实施例中,驱动控制器210可包含处理器230、缓冲器管理器235及媒体控制器240。驱动控制器210可经由处理器230结合主机接口逻辑220(设备205与设备205 的主机(例如,操作系统、主机硬件系统等)之间的接口)处理读取及写入请求。驱动缓冲器215可暂时保存用于设备205的内部操作的数据。举例来说,主机可将数据以及存储数据于驱动媒体225上的请求发送到设备205。驱动控制器210可处理请求并将所接收数据存储于驱动媒体225中。在一些情况下,可将存储于驱动媒体225中的数据的一部分复制到驱动缓冲器215,且处理器230可处理或修改数据的此复本及/或执行相对于暂时保存于驱动缓冲器215中的数据的此复本的操作。
在一个实施例中,驱动媒体225可包含快闪存储器250及感测放大器260。快闪存储器250可包含晶体管快闪存储器单元的阵列。在一些配置中,当施加读取电压时,感测放大器260可感测快闪存储器250内的存储器单元的位线是否导通。感测放大器260 可包含泄漏电流检测器265及时钟计数器270。当施加读取电压到位线时,感测放大器可使用泄漏电流检测器265以测量从位线泄漏的电流电平。当施加读取电压时,感测放大器260可使用时钟计数器270以测量感测位线是否导通花费的时间。
尽管描绘为在驱动控制器210外部,但在一些实施例中,软数据模块130-a可包含位于驱动控制器210及/或驱动媒体225内的软件、固件及/或硬件。举例来说,软数据模块130-a可包含处理器230、缓冲器管理器235及/或媒体控制器240的至少部分。在一个实例中,软数据模块130-a可包含由处理器230、缓冲器管理器235及/或媒体控制器240执行的一或多个指令。
另外或替代地,软数据模块130-a可包含感测放大器260、泄漏电流检测器265及/或时钟计数器270的至少部分。在一个实例中,软数据模块130-a可包含由感测放大器 260、泄漏电流检测器265及/或时钟计数器270执行的一或多个指令。软数据模块130-a 可经配置以将LLR值指派到存储器单元,并将LLR值用作到ECC引擎的软LDPC输入以解码存储于存储器单元中的数据。
图3展示软数据模块130-b的框图300。软数据模块130-b可包含一或多个处理器、存储器及/或一或多个存储装置。软数据模块130-b可包含控制模块305、感测模块310、数据模块315及分析模块320。软数据模块130-b可为图1及/或2的软数据模块130的一个实例。这些组件中的每一者可彼此通信。
软数据模块130可结合感测放大器及快闪存储器核心执行一或多个功能。举例来说,软数据模块130可结合NAND快闪存储器核心(例如,来自图2的快闪存储器250的快闪存储器核心)的感测放大器执行一或多个功能。另外或替代地,软数据模块130可结合处理器执行一或多个功能。举例来说,软数据模块130可结合快闪存储器装置的存储控制器(例如,图2的驱动控制器210)执行一或多个功能。在一些情况下,软数据模块130 可结合时钟计数器(例如,图2的时钟计数器270)执行一或多个功能。举例来说,NAND 快闪存储器核心的感测放大器可包含用于测量感测时间及/或与读取存储器单元的位线相关联的其它定时数据的时钟计数器。
在一个实施例中,读取操作控制模块305可选择存储器单元的页,并施加第一读取电压到选定存储器单元的页的字线。在一些情况下,除了存储器单元的选定页之外,控制模块305可施加传递电压到与存储块的存储器单元的一或多个不同页相关联的字线。在一些情况下,控制模块305可选择在选定页内的存储器单元的位线。在控制模块305 施加第一读取电压到选定位线之后,感测模块310可感测在选定页中的存储器单元的选定位线是否导通。在确定存储器单元的位线导通之后,数据模块315可将存储器单元识别为存储逻辑1。另一方面,在确定选定页中的存储器单元的位线并不导通之后,数据模块315可将存储器单元识别为存储逻辑0。
在一些实施例中,感测模块310可测量与感测选定页中的存储器单元的位线是否导通相关联的副作用。举例来说,感测模块310可测量与感测选定页中的存储器单元的位线是否导通相关联的泄漏电流及/或感测时间。在一些实施例中,至少部分地基于所测量副作用,数据模块315可将LLR值指派到存储器单元以作为到与选定页的一或多个存储器单元相关联的ECC数据解码的软LDPC输入。因此,取决于所测量副作用,可将LLR 值指派给存储器单元且所指派LLR值可用作到软LDPC ECC引擎的输入以解码存储于存储器单元中的数据。
在一个实施例中,数据模块315可发送第一及第二数据集到快闪存储器装置的处理器。第一及第二数据集可各自含有一或多个位的信息。举例来说,第一或第二数据集可包含单一位,例如逻辑0或逻辑1。在一些情况下,数据模块315可将来自快闪存储器装置的感测放大器的第一及第二数据集发送到快闪存储器装置的存储控制器。在一些情况下,数据模块315可结合快闪存储器装置的处理器及/或存储控制器操作。在一些情况下,第一数据集可相关于存储器单元的位线是否导通。举例来说,第一数据集可包含逻辑0以指示存储器单元存储逻辑0,或包含逻辑1以指示存储器单元存储逻辑1。在一些实施例中,第二数据集可相关于所测量副作用。
在一个实施例中,所测量副作用可包含泄漏电流电平。举例来说,感测模块310可在读取操作期间(例如,在施加读取电压及感测位线是否导通时)测量从存储器单元泄漏的电流电平。泄漏电流可测量为安培、毫安、微安、毫微安单位等。在确定第一数据集指示存储器单元并不导通(即,存储器单元存储逻辑0)之后,分析模块320可分析包含于第二数据集中的泄漏电流电平以确定泄漏电流电平是指示存储器单元存储强逻辑0还是弱逻辑0。在一些实施例中,分析模块320可比较泄漏电流电平与预定泄漏阈值以确定泄漏电流电平是否满足预定泄漏阈值。在确定泄漏电流电平满足预定泄漏阈值之后,数据模块315可将存储于存储器单元中的逻辑0识别为强逻辑0。结果,数据模块315 可将强逻辑0LLR值指派到存储器单元。另一方面,在确定泄漏电流电平未能满足预定泄漏阈值之后,数据模块315可将存储于存储器单元中的逻辑0识别为弱逻辑0且结果将弱逻辑0LLR值指派到存储器单元。在任一情况下,数据模块315可将所指派LLR 值用作到软LDPC ECC解码过程的输入。举例来说,数据模块315可确定用以指派到弱逻辑0、强逻辑0、弱逻辑1及强逻辑1的LLR值。作为一实例,数据模块315可将(+1) 的LLR值指派到弱逻辑0,(+7)的LLR值指派到强逻辑0,(-1)的LLR值指派到弱逻辑 1及(-7)的LLR值指派到强逻辑1。
在一个实施例中,由感测模块310测量的副作用可包含感测时间。举例来说,感测时间可包含感测模块310感测选定页中的存储器单元是否导通花费的时间周期。在一些实施例中,感测模块310在将读取电压施加到选定位线时测量感测时间及泄漏电流两者。
在确定第一数据集指示存储器单元存储逻辑1之后,分析模块320可分析来自第二数据集的感测时间以确定感测时间是指示存储器单元存储强逻辑1还是弱逻辑1。在一些实施例中,分析模块320可比较感测时间与预定定时阈值。在确定感测时间满足预定定时阈值之后,数据模块315可将由存储器单元存储的逻辑1识别为强逻辑1,且结果将强逻辑1LLR值作为软LDPC输入指派到存储器单元。另一方面,在确定感测时间未能满足预定定时阈值之后,数据模块315可将由存储器单元存储的逻辑1识别为弱逻辑 1,且结果将弱逻辑1LLR值作为软LDPC输入指派到存储器单元。
在一个实施例中,在施加第一读取电压之后,感测模块310可旁路施加第二及/或后续读取电压到选定页的字线。快闪存储器单元的典型读取操作涉及若干读取操作。举例来说,感测放大器可施加三个单独读取电压以确定存储器单元的位线是否导通。相反,感测模块310可施加单一读取电压,并基于施加单一读取电压的所测量副作用确定存储器单元是存储弱/强逻辑1还是逻辑0。因此,软数据模块130可明显减少读取快闪存储器装置中的存储器单元的时延及计算代价。
图4展示根据各种实例的用于至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的系统400。系统400可包含设备445,其可为图1的装置105及/或110及/或图2的设备205中的任一者的实例。
设备445可包含用于双向语音及数据通信的组件,所述组件包含用于传输通信的组件及用于接收通信的组件。举例来说,设备445可与一或多个存储装置及/或客户端系统双向通信。此双向通信可是直接的(例如,设备445与存储系统直接通信)及/或间接的(例如,设备445通过服务器与客户端装置间接通信)。
设备445还可包含处理器模块405及存储器410(包含软件/固件代码(SW)415)、输入 /输出控制器模块420、用户接口模块425、网络适配器430及存储适配器435。软件/固件代码415可为执行于设备445上的软件应用程序的一个实例。网络适配器430可经由一或多个有线链路及/或无线链路与一或多个网络及/或客户端装置双向通信。在一些实施例中,网络适配器430可经由经由POP(访问点)到因特网的直接网络链路提供到客户端装置的直接连接。在一些实施例中,设备445的网络适配器430可提供使用无线技术的连接,包含数字蜂窝电话连接、蜂窝数字分组数据(CDPD)连接、数字卫星数据连接及 /或另一连接。设备445可包含软数据模块130-c,其可执行上文对于图1及/或2的软数据模块130和/或130-a所描述的功能。
与系统400相关联的信号可包含无线通信信号,例如射频、电磁、局域网(LAN)、广域网(WAN)、虚拟专用网络(VPN)、无线网络(例如,使用802.11)、蜂窝网络(例如,使用3G及/或LTE)及/或其它信号。网络适配器430可实现WWAN(GSM、CDMA及 WCDMA)、WLAN(包含蓝牙(V及Wi-Fi))、用于移动通信的WMAN(WiMAX)、用于无线个人局域网(WPAN)应用的天线(包含RFID及UWB)等中的一或多者。
一或多个总线440可允许设备445的一或多个元件(例如,处理器模块405、存储器410、I/O控制器模块420、用户接口模块425、网络适配器430及存储适配器435等)之间的数据通信。
存储器410可包含随机存取存储器(RAM)、只读存储器(ROM)、快闪RAM及/或其它类型。存储器410可存储计算机可读计算机可执行软件/固件代码415,其包含当经执行时致使处理器模块405执行本发明中结合软数据模块130-c所描述的各种功能的指令。替代地,软件/固件代码415可能不可由处理器模块405直接执行,但可致使计算机(例如,当经编译及执行时)执行本文中所描述的功能。替代地,计算机可读计算机可执行软件/固件代码415可能不可由处理器模块405直接执行,但可经配置以致使计算机(例如,当经编译及执行时)执行本文中所描述的功能。处理器模块405可包含智能硬件装置,例如中央处理单元(CPU)、微控制器、专用集成电路(ASIC)等。
在一些实施例中,存储器410可尤其含有基本输入输出系统(BIOS),其可控制例如与周边组件或装置的互动的基本硬件及/或软件操作。举例来说,实施本发明的系统及方法的软数据模块130-b的至少一部分可存储于系统存储器410内。与系统400一起驻留的应用程序大体上存储于例如硬盘驱动器或其它存储媒体的非暂时性计算机可读媒体上且经由所述媒体存取。另外,当经由网络接口(例如,网络适配器430等)存取时,应用程序可呈根据应用程序及数据通信技术调制的电子信号形式。
许多其它装置及/或子系统可连接到系统400的一个元件或可包含为所述系统的一或多个元件(例如,个人计算装置、移动计算装置、智能电话、服务器、因特网连接式装置、小区无线电模块等等)。在一些实施例中,图4中所展示的全部元件无需存在以实践本发明的系统及方法。装置及子系统可以不同于图4中所展示的方式互连。在一些实施例中,例如图4中所展示的系统的一些操作的方面可在所属领域中容易地已知且在本申请案中并不详细论述。用以实施本发明的代码可存储于例如系统存储器410或其它存储器中的一或多者的非暂时性计算机可读媒体中。提供于I/O控制器模块420上的操作系统可为移动装置操作系统、桌上型/膝上型计算机操作系统或另一已知操作系统。
I/O控制器模块420可结合网络适配器430及/或存储适配器435操作。网络适配器430可使得设备445具有经由图2的设备205与客户端装置(例如,图1的装置105)及/ 或其它装置通信的能力。网络适配器430可提供有线及/或无线网络连接。在一些情况下,网络适配器430可包含以太网适配器或光纤通道适配器。存储适配器435可使得设备445 能够存取一或多个数据存储装置(例如,存储装置110)。一或多个数据存储装置可各自包含两个或多于两个数据层。存储适配器可包含以太网适配器、光纤通道适配器、光纤通道协议(FCP)适配器、SCSI适配器及iSCSI协议适配器中的一或多者。
图5展示根据各种实例的用于至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的曲线图500。曲线图500的至少一个方面可结合图1的装置105及/或110、图2的设备205及/或图1、2、3及/或4 中所描绘的软数据模块130实施。
如所描绘,曲线图500的水平线515表示电压电平与两个所描绘电压阈值VTHI及VTH2的关系。电压阈值VTHI及VTH2可表示两个单独存储器单元的电压阈值。举例来说, VTHI可表示第一存储器单元的电压阈值且VTH2可表示第二存储器单元的电压阈值。如所描绘,第一存储器单元的电压阈值VTHI为比第二存储器单元的电压阈值VTHI低的电压。
在一个实施例中,存储逻辑0的存储器单元经充电以存储给定电压阈值下的电荷,且存储逻辑1的存储器单元并不保存电荷。因此,保存逻辑0的存储器单元可充有3 VDC。充有3VDC的存储器单元的阈值可小于或等于3VDC。举例来说,存储器单元可充有3VDC且阈值电压可为2.5VDC。替代地,存储器单元可充有3VDC且阈值电压可为3VDC。
在一些实施例中,当对存储器单元的读取指示存储器单元存储逻辑0(例如,存储器单元保存电荷且在施加读取电压之后位线并不导通)时,可使用泄漏电流。因此,作为一个实例,与所描绘的阈值电压VTHI及VTH2相关联的第一及第二存储器单元可充有逻辑0 的电压电平。
泄漏电流电平505表示当将读取电压VR 520施加到第一存储器单元的位线时从第一存储器单元泄漏的电流电平。同样地,泄漏电流电平510表示当将读取电压VR 520 施加到第二存储器单元的位线时从第二存储器单元泄漏的电流电平。如所描绘,泄漏电流电平505小于泄漏电流电平510。因此,在第一及第二存储器单元两者都存储逻辑0 的情况下,泄漏电流电平505及510指示存储于每一存储器单元中的逻辑0的强度。因此,基于由每一泄漏电平指示的存储于每一存储器单元中的逻辑0的所指示强度,可将 LLR值指派给每一存储器单元。作为一个实例,泄漏电流电平505可测量为1x10^-1安培而泄漏电流电平510可测量为1x10^-7。在一个实施例中,指派给每一存储器单元的 LLR值可基于所测量泄漏电流选定。举例来说,1x10^-1的泄漏电流可指派有+1的LLR 值,而1x10^-7的泄漏电流可指派有+7的LLR值。因此,具有1x10^-1安培的泄漏电流电平505的第一存储器单元可指派有+1的LLR,而具有1x10^-7安培的泄漏电流电平 510的第二存储器单元可指派有+7的LLR。所指派LLR值可用作到ECC引擎的软LDPC 输入以解码存储于存储器单元中的数据。
图6展示根据各种实例的用于至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的曲线图600。曲线图600可为与图5的曲线图500相关联的数据的一个例示性使用。曲线图600的至少一个方面可结合图1的装置105及/或110、图2的设备205及/或图1、2、3及/或4中所描绘的软数据模块130实施。
如所描绘,曲线图600可描绘操纵灵活性相对于给定存储器单元的所测量泄漏电流 (ID)。在一个实施例中,曲线图600可描绘NAND单元晶体管电流/电压(I/V)曲线。曲线图600可包含描绘所测量泄漏电流的对数尺度(Log ID)的y轴635及描绘所测量操纵灵活性的x轴640。所测量操纵灵活性可基于所测量存储器单元的读取电压VR与阈值电压 VTH之间的差(VR-VTH)。如所描绘,第一存储器单元的I/V值605相对于第二存储器单元可较低。可通过找出第一存储器单元的读取电压VR与阈值电压VTH1之间的差 (VR-VTH1)确定I/V值605。第一存储器单元的泄漏电流电平可测量为1x10^-1。由于Log(1 x10^-1)_-1,因此第一存储器单元的I/V值605如所指示地定位。另一方面,如所描绘,第二存储器单元的I/V值610相对于第一存储器单元可较高。可通过找出第二存储器单元的读取电压VR与阈值电压VTH2之间的差(VR-VTH2)确定I/V值610。第二存储器单元的泄漏电流电平可测量为1x10^-7。由于Log(1x10'-7)_-7,因此第二存储器单元的I/V 值610如所指示地定位。
图7展示根据各种实例的用于至少部分地基于在读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的曲线图700。曲线图700的至少一个方面可结合图1的装置105及/或110,图2的设备205及/或图1、2、3及/或4 中所描绘的软数据模块130实施。
如所描绘,曲线图700描绘基于读取存储器单元时所测量的感测时间的x-y曲线图。 y轴720描绘电压电平(V)且x轴725描绘测量时间(例如,如描绘的以微秒为单位)。在感测存储器单元的数据时,快闪存储器核心单元通过对存储器单元施加读取电压VR且对所有其它单元施加传递电压VPASS而断开位线电流流动。在一些实施例中,当存储器单元的读取指示存储器单元存储逻辑1(例如,位线在施加读取电压之后导通)时可使用感测时间。如果正读取存储器单元具有强逻辑1数据,则高电流流动且位线电压比具有弱逻辑1数据的单元较快下降。
如所描绘,曲线图700描绘三个存储器单元的感测时间。第一感测时间T1 705可与第一存储器单元相关联,第二感测时间T2 710与第二存储器单元相关联且第三感测时间T3 715与第三存储器单元相关联。如所展示,第一感测时间T1 705为比第二感测时间T2710及第三感测时间T3 715两者短的感测时间。因此,因为第一存储器单元的感测时间T1705相对较短,所以第一存储器单元可被识别为存储强逻辑1。同样地,因为第三存储器单元的感测时间T3 715相对较长,所以第三存储器单元可被识别为存储弱逻辑 1。最后,因为第二存储器单元的感测时间T2 710既不相对较短又不相对较长,所以第二存储器单元可被识别为存储中级逻辑1。
在一个实施例中,可基于所测量感测时间将LLR值指派给三个存储器单元中的每一者。在一些实施例中,可基于所测量感测时间的负倒数指派LLR值。因此,作为一个实例,第一感测时间T1 705可测量为1/7gs,第二感测时间T2 710可测量为1/3gs,且第三感测时间T3 715可测量为1gs。因此,第一存储器单元可指派有(-7)的LLR值,第二存储器单元可指派有(-3)的LLR值,且第三存储器单元可指派有(-1)的LLR值。因此,所指派LLR值可用作到ECC引擎的软LDPC输入以解码存储于存储器单元中的数据。
图8为说明根据本发明的各种方面的用于至少部分地基于读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的方法800的实例的流程图。方法800的一或多个方面可结合图1的装置105及/或110,图2的设备205及/ 或图1、2、3及/或4中所描绘的软数据模块130实施。在一些实例中,后端服务器、计算装置及/或存储装置可执行一或多个集合的代码以控制后端服务器、计算装置及/或存储装置的功能元件来执行下文所描述功能中的一或多者。另外或替代地,后端服务器、计算装置及/或存储装置可使用专用硬件执行下文所描述功能中的一或多者。
在框805处,方法800可包含将读取电压施加到存储器单元的页的字线。在一些情况下,存储器单元的页可由快闪存储器装置的处理器选定为用于读取操作。在框810处,方法800可包含将传递电压施加到与存储块的存储器单元的一或多个不同页相关联的字线。在框815处,在施加读取电压之后,方法800可包含感测选定页中的存储器单元的位线是否导通。在框820处,方法800可包含测量与感测选定页中的存储器单元的位线是否导通相关联的副作用。在框825处,方法800可包含至少部分地基于所测量副作用,将对数似然比(LLR)值作为软低密度奇偶校验(LDPC)输入指派到存储器单元。
框805到825处的操作可使用参考图1到4描述的软数据模块130及/或另一模块执行。因此,方法800可提供至少部分地基于读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延。应注意,方法800仅为一个实施且方法 800的操作可经重新布置、省略及/或以其它方式修改以使得其它实施是可能及涵盖的。
图9为说明根据本发明的各种方面的用于至少部分地基于读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延的方法900的实例的流程图。方法900的一或多个方面可结合图1的装置105及/或110,图2的设备205及/ 或图1、2、3及/或4中所描绘的软数据模块130实施。在一些实例中,后端服务器、计算装置及/或存储装置可执行一或多个集合的代码以控制后端服务器、计算装置及/或存储装置的功能元件来执行下文所描述功能中的一或多者。另外或替代地,后端服务器、计算装置及/或存储装置可使用专用硬件执行下文所描述功能中的一或多者。
在框905处,在施加第一读取电压之后,方法900可包含感测选定页中的存储器单元的位线是否导通。在一些实施例中,在确定选定页中的存储器单元的位线导通之后,方法900包含将存储器单元识别为存储逻辑1,且在确定选定页中的存储器单元的位线并不导通之后,方法900包含将存储器单元识别为存储逻辑0。在框910处,在施加第一读取电压之后,方法900可包含测量检测位线是否导通花费的时间。此测量时间可被称为感测时间。在框915处,在施加第一读取电压之后,方法900可包含测量位线上的泄漏电流。感测时间及/或泄漏电流的测量可在施加第一读取电压时发生。感测时间的测量可关于泄漏电流的测量同时及/或依序发生。在框920处,在确定位线并不导通之后,方法900可包含分析泄漏电流电平以识别强逻辑0还是弱逻辑0存储于存储器单元中。在一些实施例中,方法900可包含比较泄漏电流电平与预定泄漏阈值。在确定泄漏电流电平满足预定泄漏阈值之后,方法900可包含将强逻辑0LLR值指派到存储器单元,在确定泄漏电流电平未能满足预定泄漏阈值之后,方法900可包含将弱逻辑0LLR值指派到存储器单元。在框925处,在确定位线导通之后,方法900可包含分析感测时间以识别强逻辑1还是弱逻辑1存储于存储器单元中。在框930处,方法900可包含在施加第一读取电压之后旁路施加第二读取电压到位线。在框935处,方法900可包含至少部分地基于存储于存储器单元中的强或弱逻辑值将LLR值作为LDPC输入指派到存储器单元。
框905到935处的操作可使用参考图1到4描述的软数据模块130及/或另一模块执行。因此,方法900可提供至少部分地基于读取存储器单元时所测量的感测时间及/或泄漏电流,减少从存储器单元获取软数据的时延。应注意,方法900仅为一个实施且方法 900的操作可经重新布置、省略及/或以其它方式修改以使得其它实施是可能及涵盖的。
在一些实例中,可组合及/或分离来自方法800及900中的两者或多于两者的方面。应注意,方法800及900仅为实例实施且方法800及900的操作可经重新布置或以其它方式修改以使得其它实施是可能的。
上文结合附图阐述的具体实施方式描述实例且并不表示可实施或属于权利要求书的范围内的唯一情况。术语“实例”及“示范性”当用于此描述中时意味着“充当实例、例子或说明”,且并不“优选”或“有利于其它实例”。出于提供对所描述技术的理解的目的,具体实施方式包含特定细节。然而,可在没有这些特定细节的情况下实践这些技术。在一些情况下,以框图的形式展示已知结构及设备以便避免混淆所描述实例的概念。
可使用多种不同技艺及技术中的任一者来表示信息及信号。举例来说,可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示可能贯穿上文描述参考的数据、指令、命令、信息、信号、位、符号及芯片。
结合本发明描述的各种说明性块及组件可用以下装置实施或执行:通用处理器、数字信号处理器(DSP)、ASIC、FPGA或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件,或其经设计以执行本文中所描述功能的任何组合。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器及/或状态机。处理器还可实施为计算装置的组合,例如DSP与微处理器的组合、多个微处理器、结合 DSP核心的一或多个微处理器及/或任何其它此类配置。
本文中所描述的功能可以硬件、由处理器执行的软件、固件或其任何组合来实施。如果以由处理器执行的软件实施,则可将功能作为一或多个指令或代码存储于计算机可读媒体上或经由计算机可读媒体予以传输。其它实例及实施在本发明及所附权利要求书的范围及精神内。举例来说,归因于软件的性质,上文所描述的功能可使用由处理器、硬件、固件、硬连线或这些中的任一者的组合执行的软件实施。实施功能的特征也可物理上位于各个位置处,包含经分布以使得功能的各部分在不同物理位置处实施。
如本文中(包含权利要求书)所使用,术语“及/或”当用于两种或多于两种项目的列表时,意味着可单独地使用所列举项目中的任一种或可使用所列举项目中的两种或多于两种的任何组合。举例来说,如果将组合物描述为含有组分A、B及/或C,则组合物可仅含有A;仅含有B;仅含有C;含有A与B的组合;含有A与C的组合;含有B与 C的组合;或含有A、B及C的组合。并且,如本文中(包含权利要求书)所使用,如项目列表(例如,由例如“中的至少一者”或“中的一或多者”的短语开始的项目列表)中所使用的“或”指示分离性列表,使得(例如)“A、B或C中的至少一者”的列表意味着A或B或C或AB或AC或BC或ABC(即,A及B及C)。
另外,含有于其它组件内或分离于其它组件的组件的任何揭示内容应被视为示范性的,这是因为多个其它架构可能经实施以实现同一功能性,包含将全部、大部分及/或一些元件作为一或多个单式结构及/或单独结构的部分并入。
计算机可读媒体包含计算机存储媒体及通信媒体两者,通信媒体包含促进将计算机程序从一处传送到另一处的任何媒体。存储媒体可为可由通用或专用计算机存取的任何可用媒体。作为实例而非限制,计算机可读媒体可包括RAM、ROM、EEPROM、快闪存储器、CD-ROM、DVD或其它光盘存储装置、磁盘存储装置或其它磁性存储装置或可用于携载或存储呈指令或数据结构形式的所要程序代码构件且可由通用或专用计算机或通用或专用处理器存取的任何其它媒体。并且,任何连接被适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电及微波的无线技术从网站、服务器或其它远程源传输软件,则同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电及微波的无线技术包含于媒体的定义中。如本文中所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。上文各者的组合也包含在计算机可读媒体的范围内。
本发明的先前描述经提供以使所属领域的技术人员能够制造或使用本发明。所属领域的技术人员将易于了解对本发明的各种修改,且本文中界定的一般原理可应用于其它变体而不脱离本发明的范围。因此,本发明并不限于本文中所描述的实例及设计,而是应符合与本文中所揭示的原理及新颖特征相一致的最广范围。
本发明可特定地适用于安全系统应用。本发明可特定地适用于存储系统应用。在一些实施例中,概念、技术描述、特征、方法、构想及/或描述可特定地适用于存储及/或数据安全系统应用。从本发明显而易见用于这些特定应用的此类系统的相异优势。
本发明中所描述及/或说明的过程、参数、动作及步骤仅作为实例给出且可按需要变化。举例来说,虽然所说明及/或描述的步骤可以特定次序展示或论述,但这些步骤未必需要以所说明或论述次序执行。此处所描述及/或说明的各种示范性方法还可省略此处所描述或说明的步骤中的一或多者或包含除所揭示那些步骤之外的额外步骤。
此外,虽然此处已在充分功能性计算系统的上下文中描述及/或说明各种实施例,但这些示范性实施例中的一或多者可以多种形式分布为程序产品,而不管用于实际上进行分布的计算机可读媒体的特定类型。本文中所揭示的实施例还可使用执行某些任务的软件模块实施。这些软件模块可包含可存储在计算机可读存储媒体上或计算机系统中的脚本批处理文件或其它可执行文件。在一些实施例中,这些软件模块可准许及/或指示计算机系统执行此处所揭示的示范性实施例中的一或多者。
已出于解释的目的参考特定实施例描述此描述。然而,上文的说明性论述并不意图为穷尽性的或限制本发明的系统及方法为所论述精确形式。鉴于上文教示,许多修改及变化是可能的。选择并描述实施例以便解释本发明的系统及方法的原理及其实用应用,以使得所属领域的技术人员能够利用本发明系统、设备及方法及如可适合于所涵盖特定使用的具有各种修改的各种实施例。

Claims (19)

1.一种存储装置,其包括:
感测放大器及处理器;
所述感测放大器用以将第一读取电压施加到存储器单元的页的字线,存储器单元的所述页是由所述处理器选定;
所述感测放大器用以将传递电压施加到与存储器单元的一或多个不同页相关联的字线;
在施加所述第一读取电压之后,所述感测放大器用以感测所述选定页中的存储器单元的位线是否导通;
所述感测放大器用以测量与感测所述选定页中的所述存储器单元的所述位线是否导通相关联的副作用,并用以基于对所述副作用的测量将第二读取电压旁路施加到所述字线;及
所述处理器用以至少部分地基于所述感测放大器施加所述第一读取电压并基于所测量的所述副作用,将对数似然比LLR值作为软低密度奇偶校验LDPC输入指派到所述存储器单元。
2.根据权利要求1所述的存储装置,其包括:
在确定所述选定页中的所述存储器单元的所述位线导通之后,所述感测放大器用以将所述存储器单元识别为存储逻辑1;及
在确定所述选定页中的所述存储器单元的所述位线并不导通之后,所述感测放大器用以将所述存储器单元识别为存储逻辑0。
3.根据权利要求2所述的存储装置,其包括:
所述感测放大器用以将相关于所述存储器单元的所述位线是否导通的第一数据及相关于所测量的所述副作用的第二数据发送到所述处理器。
4.根据权利要求3所述的存储装置,其包括:
其中所测量的所述副作用包括泄漏电流电平;且
在确定所述第一数据指示所述存储器单元存储逻辑0之后,所述处理器用以分析来自所述第二数据的所述泄漏电流电平以确定所述泄漏电流电平是指示所述存储器单元存储强逻辑0还是弱逻辑0。
5.根据权利要求4所述的存储装置,其包括:
所述处理器用以比较所述泄漏电流电平与预定泄漏阈值。
6.根据权利要求5所述的存储装置,其包括:
在确定所述泄漏电流电平满足所述预定泄漏阈值之后,所述处理器用以将强逻辑0LLR值指派到所述存储器单元;及
在确定所述泄漏电流电平未能满足所述预定泄漏阈值之后,所述处理器用以将弱逻辑0LLR值指派到所述存储器单元。
7.根据权利要求3所述的存储装置,其包括:
其中所测量的所述副作用包括感测时间,所述感测时间包括所述感测放大器确定所述选定页中的所述存储器单元是否导通花费的时间周期;且
在确定所述第一数据指示所述存储器单元存储逻辑1之后,所述处理器用以分析来自所述第二数据的所述感测时间以确定所述感测时间是指示所述存储器单元存储强逻辑1还是弱逻辑1。
8.根据权利要求7所述的存储装置,其包括:
所述处理器用以比较所述感测时间与预定定时阈值。
9.根据权利要求8所述的存储装置,其包括:
在确定所述感测时间满足所述预定定时阈值之后,所述处理器用以将强逻辑1LLR值指派到所述存储器单元;及
在确定所述感测时间未能满足所述预定定时阈值之后,所述处理器用以将弱逻辑1LLR值指派到所述存储器单元。
10.根据权利要求1所述的存储装置,
其中所测量的所述副作用包括感测时间,以及
其中所述感测放大器包括时钟计数器,所述时钟计数器用以测量所述感测时间。
11.根据权利要求1所述的存储装置,其中所述处理器包含所述存储装置的存储控制器。
12.一种用于快速软数据读取的方法,其包括:
将第一读取电压施加到存储器单元的页的字线,存储器单元的所述页是由快闪存储器装置的处理器选定为用于读取操作;
将传递电压施加到与存储块的存储器单元的一或多个不同页相关联的字线;
在施加所述第一读取电压之后,感测所述选定页中的存储器单元的位线是否导通;
测量与感测所述选定页中的所述存储器单元的所述位线是否导通相关联的副作用;
基于对所述副作用的测量将第二读取电压旁路施加到所述字线;及
至少部分地基于施加所述第一读取电压并基于所测量的所述副作用,将对数似然比LLR值作为软低密度奇偶校验LDPC输入指派到所述存储器单元。
13.根据权利要求12所述的方法,其包括:
在确定所述选定页中的所述存储器单元的所述位线导通之后,将所述存储器单元识别为存储逻辑1;及
在确定所述选定页中的所述存储器单元的所述位线并不导通之后,将所述存储器单元识别为存储逻辑0。
14.根据权利要求13所述的方法,其包括:
将相关于所述存储器单元的所述位线是否导通的第一数据及相关于所测量的所述副作用的第二数据从感测放大器发送到所述快闪存储器装置的所述处理器。
15.根据权利要求14所述的方法,其包括:
其中所测量的所述副作用包括泄漏电流电平;且
在确定所述第一数据指示所述存储器单元存储逻辑0之后,分析来自所述第二数据的所述泄漏电流电平以确定所述泄漏电流电平是指示所述存储器单元存储强逻辑0还是弱逻辑0。
16.根据权利要求15所述的方法,其包括:
比较所述泄漏电流电平与预定泄漏阈值;
在确定所述泄漏电流电平满足所述预定泄漏阈值之后,将强逻辑0LLR值指派到所述存储器单元;及
在确定所述泄漏电流电平未能满足所述预定泄漏阈值之后,将弱逻辑0LLR值指派到所述存储器单元。
17.根据权利要求14所述的方法,其包括:
其中所测量的所述副作用包括感测时间,所述感测时间包括所述感测放大器确定所述选定页中的所述存储器单元是否导通花费的时间周期;且
在确定所述第一数据指示所述存储器单元存储逻辑1之后,分析来自所述第二数据的所述感测时间以确定所述感测时间是指示所述存储器单元存储强逻辑1还是弱逻辑1。
18.根据权利要求17所述的方法,其包括:
比较所述感测时间与预定定时阈值;
在确定所述感测时间满足所述预定定时阈值之后,将强逻辑1LLR值指派到所述存储器单元;及
在确定所述感测时间未能满足所述预定定时阈值之后,将弱逻辑1LLR值指派到所述存储器单元。
19.一种经配置以用于快速软数据读取的计算装置,其包括:
处理器;
与所述处理器进行电子通信的存储器,所述存储器存储在由所述处理器执行时致使所述处理器执行以下步骤的计算机可执行指令:
将第一读取电压施加到存储器单元的页的字线,存储器单元的所述页是由所述处理器选定为用于读取操作;
将传递电压施加到与存储块的存储器单元的一或多个不同页相关联的字线;
在施加所述第一读取电压之后,感测所述选定页中的存储器单元的位线是否导通;
测量与感测所述选定页中的所述存储器单元的所述位线是否导通相关联的副作用;
基于对所述副作用的测量将第二读取电压旁路施加到所述字线;及
至少部分地基于施加所述第一读取电压并基于所测量的所述副作用,将对数似然比LLR值作为软低密度奇偶校验LDPC输入指派到所述存储器单元。
CN201610885551.XA 2015-10-02 2016-10-10 通过检测泄漏电流及感测时间的快速软数据读取 Active CN106997317B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/874,257 2015-10-02
US14/874,257 US9589655B1 (en) 2015-10-02 2015-10-02 Fast soft data by detecting leakage current and sensing time

Publications (2)

Publication Number Publication Date
CN106997317A CN106997317A (zh) 2017-08-01
CN106997317B true CN106997317B (zh) 2021-05-07

Family

ID=58163567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610885551.XA Active CN106997317B (zh) 2015-10-02 2016-10-10 通过检测泄漏电流及感测时间的快速软数据读取

Country Status (3)

Country Link
US (2) US9589655B1 (zh)
KR (1) KR102655717B1 (zh)
CN (1) CN106997317B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9589655B1 (en) * 2015-10-02 2017-03-07 Seagate Technology Llc Fast soft data by detecting leakage current and sensing time
CN109411002B (zh) * 2017-08-15 2021-01-29 华为技术有限公司 一种数据读取的方法及闪存控制器
US10553289B1 (en) * 2018-10-16 2020-02-04 Micron Technology, Inc. Apparatus and methods for determining an expected data age of memory cells
US10984847B2 (en) 2019-06-14 2021-04-20 Micron Technology, Inc. Memory management for charge leakage in a memory device
US11301320B2 (en) 2020-04-03 2022-04-12 Micron Technology, Inc. Erasure decoding for a memory device
CN114144834A (zh) * 2019-06-14 2022-03-04 美光科技公司 存储器装置的存储器管理及删除解码
CN116959544B (zh) * 2023-09-20 2023-12-15 上海芯存天下电子科技有限公司 校验电流的设置方法、操作校验方法及相关设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102426852A (zh) * 2011-11-30 2012-04-25 中国科学院微电子研究所 一种存储阵列单元信息读取方法及系统
CN104937667A (zh) * 2012-12-19 2015-09-23 西部数据技术公司 对数似然比和针对数据存储系统的集中的对数似然比生成

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7158431B2 (en) 2005-03-28 2007-01-02 Silicon Storage Technology, Inc. Single transistor sensing and double transistor sensing for flash memory
US7808831B2 (en) * 2008-06-30 2010-10-05 Sandisk Corporation Read disturb mitigation in non-volatile memory
US8213255B2 (en) * 2010-02-19 2012-07-03 Sandisk Technologies Inc. Non-volatile storage with temperature compensation based on neighbor state information
US8498152B2 (en) * 2010-12-23 2013-07-30 Sandisk Il Ltd. Non-volatile memory and methods with soft-bit reads while reading hard bits with compensation for coupling
US8782495B2 (en) * 2010-12-23 2014-07-15 Sandisk Il Ltd Non-volatile memory and methods with asymmetric soft read points around hard read points
PL2741983T3 (pl) * 2011-08-11 2016-05-31 Mol Belting Systems Inc Rolka przenośnika
US9036415B2 (en) * 2011-12-21 2015-05-19 Sandisk Technologies Inc. Mitigating variations arising from simultaneous multi-state sensing
US8953384B2 (en) 2012-07-31 2015-02-10 Winbond Electronics Corporation Sense amplifier for flash memory
KR102083491B1 (ko) * 2012-12-05 2020-03-02 삼성전자 주식회사 메모리 장치, 메모리 시스템 및 이의 동작 방법
JP6367562B2 (ja) * 2013-01-31 2018-08-01 エルエスアイ コーポレーション 選択的なバイナリ復号および非バイナリ復号を用いるフラッシュ・メモリ内の検出および復号
US10083069B2 (en) * 2013-06-27 2018-09-25 Sandisk Technologies Llc Word line defect detection and handling for a data storage device
TWI521513B (zh) * 2013-06-28 2016-02-11 群聯電子股份有限公司 讀取電壓設定方法、控制電路與記憶體儲存裝置
US9209835B2 (en) 2013-11-27 2015-12-08 Seagate Technology Llc Read retry for non-volatile memories
US9396792B2 (en) 2014-02-26 2016-07-19 Seagate Technology Llc Adjusting log likelihood ratio values to compensate misplacement of read voltages
US9589655B1 (en) * 2015-10-02 2017-03-07 Seagate Technology Llc Fast soft data by detecting leakage current and sensing time

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102426852A (zh) * 2011-11-30 2012-04-25 中国科学院微电子研究所 一种存储阵列单元信息读取方法及系统
CN104937667A (zh) * 2012-12-19 2015-09-23 西部数据技术公司 对数似然比和针对数据存储系统的集中的对数似然比生成

Also Published As

Publication number Publication date
US20170133098A1 (en) 2017-05-11
KR20170040115A (ko) 2017-04-12
US9881678B2 (en) 2018-01-30
KR102655717B1 (ko) 2024-04-08
CN106997317A (zh) 2017-08-01
US9589655B1 (en) 2017-03-07

Similar Documents

Publication Publication Date Title
CN106997317B (zh) 通过检测泄漏电流及感测时间的快速软数据读取
US9864523B2 (en) Background threshold voltage shifting using base and delta threshold voltage shift values in non-volatile memory
KR102364368B1 (ko) 플래시 메모리 내에서의 데이터 리프레시의 개선
US9558852B2 (en) Method and apparatus for defect repair in NAND memory device
TW201413735A (zh) 非揮發性記憶體之以單一讀取爲基礎的軟決定解碼
US20190361784A1 (en) Machine learning error prediction in storage arrays
US10101938B2 (en) Data storage system selectively employing multiple data compression techniques
KR20170037562A (ko) 계층화된 저장 장치에서의 압축 샘플링
CN107451006B (zh) 限制存储设备中的性能变化的技术
US20200097194A1 (en) Host-resident translation layer validity check techniques
US20190303002A1 (en) Optimization of Memory Systems based on Performance Goals
US20220269551A1 (en) Grouping requests to reduce inter-process communication in memory systems
WO2017052959A1 (en) Technologies for automatic partitioning of large graphs
US20190286342A1 (en) Efficient storage drive read-write head verification
CN113744790A (zh) 通过泵时钟监测进行装置现场降级和工厂缺陷检测
US10969978B2 (en) Configurable buffer manager arbitration request throttling mechanism
US20190391752A1 (en) Block health estimation for wear leveling in non-volatile memories
US10446238B2 (en) Pseudo single pass NAND memory programming
CN111435403B (zh) 一种闪存系统的磨损均衡方法及装置
US20210103520A1 (en) System and method for inline tiering of write data
KR20180042681A (ko) 누설 전류 및 감지 시간의 검출에 의한 고속 소프트 데이터
US11545232B1 (en) Quick reliability scan for memory device
US11392292B2 (en) Maintenance operations for memory devices
US11720282B2 (en) Stack management in memory systems
US10228870B2 (en) Redundant write transfer detection

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