CN110491437A - 通过机器学习进行存储器存取管理的方法与相关存储装置 - Google Patents
通过机器学习进行存储器存取管理的方法与相关存储装置 Download PDFInfo
- Publication number
- CN110491437A CN110491437A CN201910390931.XA CN201910390931A CN110491437A CN 110491437 A CN110491437 A CN 110491437A CN 201910390931 A CN201910390931 A CN 201910390931A CN 110491437 A CN110491437 A CN 110491437A
- Authority
- CN
- China
- Prior art keywords
- threshold voltage
- storage device
- identification model
- controller
- nonvolatile 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.)
- Granted
Links
- 238000003860 storage Methods 0.000 title claims abstract description 158
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000010801 machine learning Methods 0.000 title claims abstract description 26
- 230000015654 memory Effects 0.000 claims abstract description 123
- 238000012549 training Methods 0.000 claims abstract description 25
- 230000001149 cognitive effect Effects 0.000 claims abstract description 15
- 239000013598 vector Substances 0.000 claims description 23
- 230000009183 running Effects 0.000 claims description 21
- 238000012706 support-vector machine Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 8
- 230000005611 electricity Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000009826 distribution Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 101100152598 Arabidopsis thaliana CYP73A5 gene Proteins 0.000 description 3
- 101100219315 Arabidopsis thaliana CYP83A1 gene Proteins 0.000 description 3
- 101100512568 Arabidopsis thaliana MED33B gene Proteins 0.000 description 3
- 101100140581 Arabidopsis thaliana REF6 gene Proteins 0.000 description 3
- 241000208340 Araliaceae Species 0.000 description 3
- 101000806846 Homo sapiens DNA-(apurinic or apyrimidinic site) endonuclease Proteins 0.000 description 3
- 101000835083 Homo sapiens Tissue factor pathway inhibitor 2 Proteins 0.000 description 3
- 101100269674 Mus musculus Alyref2 gene Proteins 0.000 description 3
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 3
- 235000003140 Panax quinquefolius Nutrition 0.000 description 3
- 101100140580 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) REF2 gene Proteins 0.000 description 3
- 102100026134 Tissue factor pathway inhibitor 2 Human genes 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 235000008434 ginseng Nutrition 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- -1 REF5 Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000000151 deposition Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
- G11C16/28—Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5671—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge trapping in an insulator
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种用于存储装置中,通过机器学习来进行的存储器存取管理的方法、相关的存储装置及其控制器以及电子装置。所述方法可包含:于存储装置中,在训练阶段的期间,根据关于一阈值电压分布的一预定数据库进行机器学习,产生至少一阈值电压识别模型,其中阈值电压识别模型用来判断读取自所述非易失性存储器的一存储单元的比特信息;以及于存储装置中,在识别阶段的期间,于读取所述非易失性存储器时取得一个或多个参考电压的代表信息,以供根据所述至少一阈值电压识别模型进行机器识别以产生读取数据,其中所述读取数据包含所述比特信息。
Description
技术领域
本发明涉及快闪存储器(Flash memory)的存取(access),特别关于一种用于存储装置中,通过机器学习来进行存储器存取管理的方法、相关存储装置及其控制器与电子装置。
背景技术
近年来由于存储器的技术不断地发展,各种可携式或非可携式存储装置(例如:符合SD/MMC、CF、MS、XD或UFS标准的存储卡(memory card);又例如:固态硬盘;又例如:符合UFS或EMMC规格的嵌入式(embedded)存储装置)被广泛地实现于许多应用中。因此,这些存储装置中的存储器的存取控制便成为相当热门的议题。
以常用的NAND型快闪存储器而言,其主要可区分为单阶存储单元(single levelcell,SLC)与多阶存储单元(multiple level cell,MLC)两大类别的闪存。单阶存储单元闪存中,每个被当作存储单元的晶体管只有两种电荷值,分别用来表示逻辑值0与逻辑值1。另外,多阶存储单元闪存中,每个被当作存储单元的晶体管的存储能力则被充分利用,这种存储单元被较高的电压驱动,并通过不同级别的电压在一个晶体管中记录至少两比特的信息(例如00、01、11、10);理论上,多阶存储单元闪存的记录密度可以达到单阶存储单元闪存的记录密度的至少两倍,这对于曾经在发展过程中遇到瓶颈的NAND型闪存的相关产业而言,是非常好的消息。
相对于单阶存储单元闪存,由于多阶存储单元闪存的价格较便宜,并且在有限的空间内可提供较大的容量,所以多阶存储单元闪存很快地成为市面上的存储装置竞相采用的主流。然而,多阶存储单元闪存的不稳定性所导致的问题也一一浮现。为了确保存储装置对快闪存储器的存取控制能符合相关规范,快闪存储器的控制器通常具备某些管理机制以妥善地管理数据的存取。
根据相关技术,有了这些管理机制的存储装置还是有不足的地方。举例来说,采用较新架构的快闪存储器,例如立体NAND型快闪(3D NAND Flash)存储器,可增加存储装置的存储容量,且在三阶存储单元(triple level cell,TLC)闪存之后,四阶存储单元(quadruple level cells,QLC)闪存可成为下一个研发目标。当尝试将这些管理机制应用到具备新架构的快闪存储器的存储装置时,很容易发生读取运作的阈值电压(thresholdvoltage)不精确,这可能导致各种问题,例如直接或间接地降低数据保留(dataretention)的时间、增加读取干扰错误(read disturb error)的机率、增加数据重复读取次数(read retry)、增加错误纠正码解码(Error Correction Code decoding,ECCdecoding)的困难度。因此,需要一种新颖的方法及相关架构,以在没有副作用或较不可能带来副作用的状况下提升存储装置的效能。
发明内容
本发明的一目的在于提供一种用于存储装置中,通过机器学习来进行的存储器存取管理的方法、相关存储装置与控制器以及电子装置,从而解决上述问题。
本发明的另一目的在于提供一种用于存储装置中,通过机器学习来进行的存储器存取管理的方法、相关的存储装置与控制器以及电子装置,以在没有副作用或较不可能带来副作用的状况下达到存储装置的优化效能。
本发明的至少一个实施例提供一种用于存储装置中,通过机器学习来进行的存储器存取管理的方法,其中所述存储装置包含非易失性存储器(non-volatile memory,NVmemory),且所述非易失性存储器包含至少一个非易失性存储器元件(NV memoryelement)。所述方法可包含:在所述存储装置中,在训练阶段的期间,根据关于阈值电压分布(threshold voltage distribution)的预定数据库进行机器学习,产生至少一个阈值电压识别模型,其中所述至少一个阈值电压识别模型是用来判断从所述非易失性存储器读取的存储细胞的比特信息(bit information);以及于所述存储装置中,在识别阶段的期间,在读取所述非易失性存储器时取得一个或多个参考电压的代表信息(representativeinformation),以供根据所述至少一个阈值电压识别模型进行机器识别,产生读取数据(read data),其中所述读取数据包含所述比特信息。
本发明的至少一个实施例提供一种存储装置,其可包含:非易失性存储器,用来存储信息,其中所述非易失性存储器包含至少一个非易失性存储器元件;以及控制器,耦接所述非易失性存储器,用来控制所述存储装置的至少一个运作。所述控制器可包含一处理电路。例如:所述处理电路可根据来自主控装置的指令控制所述控制器,以容许所述主装置通过所述控制器存取所述非易失性存储器。另外,在训练阶段的期间,所述控制器根据关于阈值电压分布的预定数据库进行机器学习,以产生至少一个阈值电压识别模型,其中所述至少一个阈值电压识别模型是用来判断从所述非易失性存储器读取的存储细胞的比特信息。此外,在识别阶段的期间,所述控制器在读取所述非易失性存储器时取得一个或多个参考电压的代表信息,以供根据所述至少一个阈值电压识别模型进行机器识别以产生读取数据,其中所述读取数据包含所述比特信息。
根据某些实施例,本发明还提供一种电子装置,其可包含上述的存储装置,而且另外包含:所述控主控装置,耦接所述存储装置。所述主控装置可包含:至少一个处理器,用来控制所述主控装置的运作;以及电源供应电路,耦接所述至少一个处理器,用来提供电源给所述至少一个处理器与所述存储装置。另外,所述存储装置可用来提供存储空间给所述主控装置。
本发明的至少一个实施例提供一种存储装置的控制器,其中所述存储装置包含所述控制器与非易失性存储器,且所述非易失性存储器包含至少一个非易失性存储器元件。所述控制器可包含处理电路。例如:所述处理电路可根据来自主控装置的指令控制所述控制器,以容许所述主控装置通过所述控制器存取所述非易失性存储器。另外,在训练阶段的期间,所述控制器根据关于阈值电压分布的预定数据库进行机器学习,以产生至少一个阈值电压识别模型,其中所述至少一个阈值电压识别模型是用来判断从所述非易失性存储器读取的存储单元的比特信息。此外,在识别阶段的期间,所述控制器在读取所述非易失性存储器时取得一个或多个参考电压的代表信息,以供根据所述至少一个阈值电压识别模型进行机器识别,产生读取数据,其中所述读取数据包含所述比特信息。
本发明一个好处是,能够针对所述存储装置的运作进行妥善的控制,尤其能提升读取运作的阈值电压(threshold voltage)的精确度,避免相关技术中的各种问题。另外,根据本发明的相关实施例来实现并不会增加许多额外的成本。因此,相关技术的问题可被解决,且整体成本不会增加太多。相较于相关技术,本发明能在没有副作用或较不可能带来副作用的状况下提升存储装置的效能。
附图说明
图1为根据本发明实施例的一种电子装置的示意图。
图2为根据本发明实施例的一种用于存储装置中通过机器学习来进行的存储器存取管理的方法的工作流程。
图3绘示所述方法的根据本发明实施例的参考电压。
图4绘示图2所示训练阶段的于一实施例中的实施细节。
图5绘示图2所示识别阶段的于一实施例中的实施细节。
其中,附图标记说明如下:
10 电子装置
50 主控装置
52 处理器
54 电源供应电路
100 存储装置
110 存储控制器
112 微处理器
112C 程序代码
112M 只读存储器
114 控制逻辑电路
115 MCSVM引擎
116 易失性存储器
118 传输介面电路
120 非易失性存储器
122-1,122-2,…,122-N 非易失性存储器元件
200 工作流程
200A 训练阶段
200B 识别阶段
S11,S12,S13,S21,S22,S23,S24,
S28,S30,S31,S32,S40 步骤
P0,P1,P2,P3,P4,P5,P6,P7 状态
REF1,REF2,REF3,REF4,
REF5,REF6,REF7 参考电压
Vth 阈值电压
H1,H2 支持超平面
Hopt 最佳超平面
具体实施方式
图1为根据本发明的一个实施例的一种电子装置10的示意图,其中电子装置10包含主控装置(host device)50与存储装置100。主控装置50可包含至少一个处理器52(例如一或多个处理器),用来控制主控装置50的运作;以及电源供应电路54,耦接至上述至少一个处理器52,用来提供电源给上述至少一个处理器52与存储装置100、且输出一个或多个驱动电压给存储装置100,其中存储装置100可用来提供存储空间给主控装置50,且可从主控装置50取得该一给或多个驱动电压,作为存储装置100的电源。主控装置50的例子可包含(但不限于):多功能移动电话(multifunctional mobile phone)、平板电脑(tablet)、可穿戴装置(wearable device)以及个人电脑(personal computer)例如台式机与笔记本电脑。存储装置100的例子可包含(但不限于):携带式存储装置(例如符合SD/MMC、CF、MS、XD或UFS标准的存储卡)、固态硬盘(solid state drive,SSD)以及各种嵌入式(embedded)存储装置(例如符合UFS或EMMC规格的嵌入式存储装置)。根据本实施例,存储装置100可包含一个控制器,例如存储控制器110,且可另外包含一个非易失性存储器(non-volatile memory,NVmemory)120,其中所述控制器用来存取(access)非易失性存储器120,且非易失性存储器120用来存储信息。非易失性存储器120可包含至少一个非易失性存储器元件(NV memoryelement)(例如一个或多个非易失性存储器元件),例如多个非易失性存储器元件122-1、122-2、…与122-N,其中符号「N」可代表大于一的正整数。例如:非易失性存储器120可为快闪存储器(Flash memory),而非易失性存储器元件122-1、122-2、…与122-N可分别为多个快闪存储器芯片(Flash memory chip;可简称为快闪晶片)或多个快闪存储器裸晶(Flashmemory die;可简称为快闪裸晶),但本发明不限于此。
如图1所示,存储控制器110可包含处理电路例如微处理器112、存储器例如只读存储器(Read Only Memory,ROM)112M、控制逻辑电路114、多类别支持向量机引擎(Multi-Class Support Vector Machine engine,可简称为MCSVM引擎)115、易失性存储器116与传输接口电路118,其中这些元件中的至少一部分(例如一部分或全部)可通过总线彼此耦接。MCSVM引擎115可包含多个数据处理子电路,例如对应各种计算运作的多个计算单元,以进行相关的学习与识别运作;易失性存储器116以随机存取存储器(Random Access Memory,RAM)来实现。例如,易失性存储器116可为静态随机存取存储器(Static RAM,SRAM),但本发明不限于此。易失性存储器116可用来提供内部存储空间给存储控制器110,例如可暂时地存储数据。另外,本实施例的只读存储器112M用来存储程序代码112C,而微处理器112则用来执行程序代码112C以控制对非易失性存储器120的存取。请注意,程序代码112C亦可存储在易失性存储器116或任何形式的存储器内。此外,控制逻辑电路114可用来控制非易失性存储器120。控制逻辑电路114可包含错误纠正码(Error Correction Code,ECC)电路(未显示),以进行数据保护及/或错误纠正,但本发明不限于此。传输接口电路118可符合一特定通讯标准(例如,串行高级技术附件(Serial Advanced Technology Attachment,SATA)标准、通用串行总线(Universal Serial Bus,USB)标准、快捷外设互联(PeripheralComponent Interconnect Express,PCIE)标准、嵌入式多媒体存储卡(embedded MultiMedia Card,eMMC)标准、或通用闪存存储(Universal Flash Storage,UFS)标准)且可根据特定通讯标准进行通讯。
在本实施例中,主控装置50可通过传送主控命令(host command)与相应的逻辑地址给存储控制器110,从而间接地存取存储装置100。存储控制器110接收主控命令与逻辑地址,并将主控命令转译成存储器操作命令(可简称为操作命令),再以操作命令控制非易失性存储器120读取、写入(write)或者编程(program)非易失性存储器120当中特定物理地址的存储器单位(memory unit)或数据页(page),其中物理地址对应逻辑地址。当存储控制器110对非易失性存储器元件122-1、122-2、…与122-N中的任一个非易失性存储器元件122-n进行抹除(erase)运作时(符号「n」可代表区间[1,N]中的任一个整数),非易失性存储器元件122-n的多个区块中的至少一个区块会被抹除。另外,所述多个区块中的每一区块可包含多个页(如数据页),且存取运作(例如读取或写入)可对一或多页来进行。在一个读取运作中,非易失性存储器120可将参考电压REF(也可称为读取参考电压或读取感测电压)施加在待读取的一组存储单元上,以感测该组存储单元各自的开启/关闭状态。通过调整一参数,非易失性存储器120可调整参考电压REF,且将该参数的最新值传送给存储控制器110作为参考电压REF的代表信息。存储控制器110可包含查找表(lookup table),该查找表存储参考电压REF与所述参数之间的关系。当取得所述代表信息时,存储控制器110(例如MCSVM引擎115)可根据所述查找表判断参考电压REF的最新值,作为目前参考电压,以供进行机器学习及/或机器辨识,但本发明不限于此。根据某些实施例,存储控制器110(例如MCSVM引擎115)可根据所述参数的最新值进行计算(例如算数(arithmetic)运作)来判断参考电压REF的最新值,作为目前参考电压,而这些实施例中不需要实现上述的查找表。在参考电压REF的大小对应于(例如成正比,尤其,等于)所述参数的数值大小的状况下,存储控制器110(例如MCSVM引擎115)可直接根据所述参数的最新值判断参考电压REF的最新值。
根据某些实施例,图1的架构可加以变化。例如,MCSVM引擎115可整合至控制逻辑电路114中。又例如,MCSVM引擎115可由运行于微处理器112上的程序代码所实现。又例如,MCSVM引擎115可设置在非易失性存储器120内。
图2为根据本发明一实施例的一种用于存储装置中通过机器学习来进行的存储器存取管理的方法的工作流程200。为了便于理解,步骤{S11,S12,S13}与{S21,S22,S23,S24,S28,S30}分别被绘制于训练阶段(training phase)200A与识别阶段(identificationphase)200B中,但本发明不限于此。在训练阶段200A的期间,存储控制器110(例如MCSVM引擎115)可根据关于一个阈值电压分布的一个预定数据库(如阈值电压数据库)进行机器学习,以产生至少一个阈值电压识别模型(例如一个或多个阈值电压识别模型),其中上述至少一个阈值电压识别模型是用来判断从非易失性存储器120所读取的存储单元的比特信息。在识别阶段200B的期间,存储控制器110(例如MCSVM引擎115)可在读取时取得一个或多个参考电压{REF}(简称参考电压{REF})的代表信息,以供根据上述至少一个阈值电压识别模型进行机器识别,以产生读取数据,其中所述读取数据包含所述比特信息。
在步骤S11中,存储控制器110(例如MCSVM引擎115)可从所述阈值电压数据库取得阈值电压数据。所述阈值电压数据库可包含预先取得的多组电压数据,例如,在读取一个或多个样本存储器(简称样本存储器)中的随机数据的过程中所取得的参考电压分布数据。例如,样本存储器可代表具有和非易失性存储器120相同型号的非易失性存储器产品,因此其参考电压分布数据可用来作为存储装置100中的机器学习的参考。为了便于理解,三阶细胞(triple level cell,TLC)闪存可作为非易失性存储器120的范例,但本发明不限于此。在图3中,横轴可代表阈值电压Vth,而纵轴可代表存储单元数(memory cell count)。分别对应于状态{P0,P1,P2,P3,P4,P5,P6,P7}的曲线可代表不同存储状态,分别代表比特信息{111,110,100,101,001,011,010,000},其中状态P0可视为抹除状态,而状态{P1,P2,P3,P4,P5,P6,P7}中的任一者可视为编程状态。图3所示的参考电压(以垂直虚线表示)包含参考电压REF的多个候选电压,而参考电压REF可于不同区间(如用来侦测状态{P1,P2,P3,P4,P5,P6,P7}的七个区间)分别称为参考电压{REF1,REF2,REF3,REF4,REF5,REF6,REF7}。存储装置100可使用参考电压REF(如{REF1,REF2,REF3,REF4,REF5,REF6,REF7})作为阈值电压Vth来判断一个读取运作的比特信息。当样本存储器和非易失性存储器120具有相同型号,所述参考电压分布数据可相似于分别对应于状态{P0,P1,P2,P3,P4,P5,P6,P7}的曲线的分布数据,并且可用来训练存储装置100进行机器学习。根据本实施例,由于参考电压REF可当作阈值电压Vth,所以所述参考电压分布数据也可被称为阈值电压分布数据。假设足够且有效的数据样本已被收集于所述阈值电压数据库中且已分类。所述阈值电压数据库中已分类的分布数据可分别属于多个类别,如分别对应于{000,001,010,011,100,101,110,111}的8个类别{CL(1),CL(2),CL(3),CL(4),CL(5),CL(6),CL(7),CL(8)}。
在步骤S12中,存储控制器110(例如MCSVM引擎115)可进行阈值电压标准化(normalization),尤其可分别使用多个一维的正态分布概率密度函数(probabilitydensity function,PDF)来对所述多个类别进行标准化,以供用来作为机器学习的训练数据。通过标准化,MCSVM引擎115可将原始数据(例如所述阈值电压分布数据)映射至一个预定区间,以减少机器学习及辨识的复杂度。举例来说,针对所述多个类别中的任一者,如目标类别,MCSVM引擎115可根据下列公式进行阈值电压标准化:
其中x代表阈值电压值,μ代表目标类别的阈值电压平均值,σ代表目标类别的阈值电压标准差。根据某些实施例,MCSVM引擎115可使用一组统计值(x,μ,σ)作为目标类别的特征信息,尤其,分别使用多组统计值{(x,μ,σ)}作为所述多个类别的特征信息。
在步骤S13中,存储控制器110(例如MCSVM引擎115)可进行基于多类别支持向量机的(MCSVM-based)阈值电压分类器(classifier)训练,产生上述至少一个阈值电压识别模型。MCSVM引擎115可根据监督式(supervised)机器学习方法来运作。在步骤S12的标准化完成后,所述多个类别的每一类别中的全部的电压数据可称为向量。以图4为例,在训练阶段200A中,MCSVM引擎115可寻找所述多个类别中的任两个类别之间的两个分隔线,其可称为支持超平面(Support Hyperplane)H1与H2,而刚好位于某一支持超平面上的任一组数据可称为支持向量(Support Vector)。针对这两个类别,MCSVM引擎115可寻找最佳超平面(Optimal Hyperplane),如图5所示的最佳超平面Hopt,以供于识别阶段200B进行分类。
根据本实施例,MCSVM引擎115可包含多类别支持向量机分类器(MCSVMclassifier,可简称为MCSVM分类器),其运作可表示如下:
以及
其中N代表向量的总数,索引i可为正整数且于区间[1,N]中变化,xi代表对应于索引i的目前向量,yi可为{-1,+1}中的一者以指出xi所属的类别,w代表正交于超平面的正交向量(normal vector),b代表具有常数的偏移项(bias term),C代表具有有限值(finitevalue)的惩罚参数(penalty parameter),且ξi代表非负松弛变数(nonnegative slackvariable)。
针对最佳超平面Hopt,w·x+b=0且w可为N维向量(例如w∈RN),而MCSVM分类器可根据下列决策函数f(x)来分类一个未知点x:
其中NS代表支持向量数,索引i可为正整数且于区间[1,NS]中变化,xi代表对应于索引i的目前向量,αi代表拉格朗日乘数(Lagrange multiplier),且mi∈{-1,+1},其可描述xi所属的类别。
在大部分状况下,在输入空间中搜索合适的超平面会太严格而不实用。为了解决这个问题,MCSVM引擎115可将输入空间映射到更高维度的特征空间(feature space)并且在特征空间中搜寻所述最佳超平面。例如,MCSVM引擎115可采用核函数K(xi,xj)=Φ(xi)Φ(xj),其中Φ(·)可表示将xi映射到高维空间的映射函数。于是,决策函数f(x)变成:
因此,已建立的上述至少一个阈值电压识别模型可包含各个类别之间的最佳超平面的决策函数f(x)的参数(w,b,αi)。假设所述多个类别代表CLCNT个类别,其中类别数(class count)CLCNT可为正整数。MCSVM引擎115可取得(CLCNT-1)组参数(如(w,b,αi)或{(w,b,αi)})作为上述至少一个阈值电压识别模型,且使用所述(CLCNT-1)组参数将所述MCSVM分类器组态成为一个或多个对应的分类器,以供区分这CLCNT个类别。例如,当CLCNT=2,MCSVM引擎115可取得一组参数(w,b,αi)作为一个阈值电压识别模型,且这一组参数(w,b,αi)可将MCSVM分类器组态成为对应的分类器C1,以供区分两个类别;当CLCNT=4,MCSVM引擎115可取得三组参数{(w,b,αi)}作为三个阈值电压识别模型,且这三组参数{(w,b,αi)}可将MCSVM分类器组态成为对应的分类器{C1,C2,C3},以供区分四个类别;当CLCNT=8,MCSVM引擎115可取得七组参数{(w,b,αi)}作为七个阈值电压识别模型,且这七组参数{(w,b,αi)}可将MCSVM分类器组态成为对应的分类器{C1,C2,C3,C4,C5,C6,C7},以供区分八个类别;依此类推。
在步骤S21中,存储控制器110(例如MCSVM引擎115)可在执行存储器读取操作时,取得目前参考电压,如上述参考电压{REF}。由于一个读取运作典型地针对一组存储单元(而非单一存储单元)来进行,所以MCSVM引擎115可从非易失性存储器120取得参考电压{REF}的一组代表信息。MCSVM引擎115可根据所述查找表将所述一组代表信息分别转换为参考电压{REF},其中参考电压{REF}可视为分别指出所述一组存储单元各自的开启与关闭状态之间的过渡(transition)的一组阈值电压{Vth}。
在步骤S22中,存储控制器110(例如MCSVM引擎115)可进行阈值电压标准化,类似步骤S12的运作。通过标准化,MCSVM引擎115可将原始数据(例如目前参考电压,如参考电压{REF})映射至所述预定区间,以减少机器学习及辨识的复杂度。
在步骤S23中,根据上述至少一个阈值电压识别模型,存储控制器110(例如MCSVM引擎115)可进行基于多类别支持向量机的(MCSVM-based)阈值电压识别。MCSVM引擎115可将标准化数据(例如目前参考电压的标准化版本,如参考电压{REF}的标准化版本)输入给所述MCSVM分类器,从而通过分类运作进行识别,取得识别结果。在步骤S22的标准化完成后,MCSVM引擎115可开始使用分类器C1进行分类,尤其,逐一使用分类器{C1,…,CCLCNT-1}(例如对应的决策函数{f1(x),…,fCLCNT-1(x)})进行分类。为了便于理解,假设CLCNT=8。针对所述标准化数据的任一个电压数据(如参考电压{REF}当中的一个参考电压的标准化版本),可称其为向量x,MCSVM引擎115可依序分别使用分类器{C1,C2,C3,C4,C5,C6,C7}进行下列分类运作:
(C1).当f1(x)=+1,x属于类别CL(1),否则(f1(x)=-1),x不属于类别CL(1);
(C2).当f2(x)=+1,x属于类别CL(2),否则(f2(x)=-1),x不属于类别CL(2);
(C3).当f3(x)=+1,x属于类别CL(3),否则(f3(x)=-1),x不属于类别CL(3);
(C4).当f4(x)=+1,x属于类别CL(4),否则(f4(x)=-1),x不属于类别CL(4);
(C5).当f5(x)=+1,x属于类别CL(5),否则(f5(x)=-1),x不属于类别CL(5);
(C6).当f6(x)=+1,x属于类别CL(6),否则(f6(x)=-1),x不属于类别CL(6);
(C7).当f7(x)=+1,x属于类别CL(7),否则(f7(x)=-1),x不属于类别CL(7),也就是,x属于类别CL(8);
其中当某一分类器判断x属于某一类别,MCSVM引擎115可跳过后续分类器(如果存在)的运作,但本发明不限于此。分类器{C1,…,CCLCNT-1}中的每一个的细节说明如下。假设所述电压数据(或x)将被分类至类别CLm(m∈{-1,+1},分别对应{f(x)=-1,f(x)=+1}这两种状况),且{xj|j=1,2,…}代表对应的特征向量如同上述特征空间中的向量。针对类别CLm,xj和最佳超平面Hopt之间的距离d(xj,Hopt)对边距(margin distance)的距离比(distanceratio)R(xj)可表示如下:
在步骤S24中,针对目前参考电压如参考电压{REF},存储控制器110(例如MCSVM引擎115)可进行信心分数量测(confidence score measurement),尤其,产生至少一信心分数如SCORESVM(CLm|xj)、SCOREKNN(CLm|xj)及其线性组合SCORE(CLm|xj),如下所示:
SCORE(CLm|xj)=β·SCORESVM+(1-β)·SCOREKNN
其中k代表符合预定规则的训练向量的数量,kj m代表k个训练向量当中属于类别CLm的向量的数量,β代表0与1之间的加权因子。SCORESVM(CLm|xj)可对应于xj属于类别CLm的概率。MCSVM引擎115可基于K近邻(K NearestNeighbor,KNN)规则,根据欧式距离量测(Euclidean distance measurement),不论类别,从全部的训练向量(如机器学习所采用的向量)选择最靠近未知特征向量xj的k个训练向量,然后判断所述k个训练向量当中属于类别CLm的向量的数量作为kj m,但于计算信心分数SCOREKNN(CLm|xj)时不将xj分类为类别CLm。
于步骤S28中,存储控制器110(例如MCSVM引擎115)可检查是否接受识别结果,尤其,检查上述至少一信心分数是否达到一信心分数阈值,以判断所述比特信息的正确性。如果接受,进入步骤S30;否则,进入步骤S40。
于步骤S30中,存储控制器110(例如MCSVM引擎115)可触发多个运作,尤其,触发下一读取操作(步骤S31)以及触发根据目前参考电压(如参考电压{REF})更新模型的运作(步骤S32)。当触发更新模型,MCSVM引擎115可将目前参考电压加入所述预定数据库以更新(例如扩增)所述预定数据库,且根据所述预定数据库的最新版本更新上述至少一阈值电压识别模型。
于步骤S40中,存储控制器110(例如MCSVM引擎115)可进行读取重试(read-retry)或错误纠正码解码(Error Correction Code decoding,可简称为ECC解码)流程。
根据本实施例,在进行机器识别时,存储控制器110(例如MCSVM引擎115)可针对所述存储单元,从多个类别(如{CL(1),CL(2),CL(3),CL(4),CL(5),CL(6),CL(7),CL(8)})选择一类别且使用对应所述类别的一组预定比特作为所述比特信息,其中所述组预定比特是选自多组预定比特(如{000,001,010,011,100,101,110,111}),且所述多组预定比特分别对应于所述多个类别。尤其,存储控制器110在识别阶段200B的期间所产生的所述读取数据可包含读取自非易失性存储器120的多个存储单元(如所述组存储单元)的各自的比特信息,且所述多个存储单元包含所述存储单元。
根据某些实施例,在存储控制器110的控制下,存储装置100可预先将所述预定数据库从外面载入至存储装置100中,以将所述预定数据库存储于非易失性存储器120及/或其它存储器。例如,存储装置100的制造商可将存储装置100耦接至一生产工具(其可为另一主控装置),以容许所述预定数据库从所述生产工具传输至存储装置100。又例如,电子装置10的制造商可从存储装置100的制造商取得所述预定数据库,以供主控装置50读取,以容许所述预定数据库从主控装置50传输至存储装置100。
根据某些实施例,在MCSVM引擎115设置于非易失性存储器120的状况下,MCSVM引擎115可从非易失性存储器元件{122-1,122-2,…,122-N}取得训练数据且在训练阶段200A的期间完成上述至少一阈值电压识别模型,并且在识别阶段200B的期间于读取时自行调整参考电压{REF}并且即时更新模型,且提供所述读取数据给存储控制器110。
根据某些实施例,在MCSVM引擎115设置于存储控制器110的状况下,非易失性存储器120的制造商可提供对数似然比(Log Likelihood Ratio)数据给控制器厂商(例如存储控制器110的厂商)参考,以供控制器厂商产生所述预定数据库。MCSVM引擎115可在训练阶段200A的期间完成上述至少一阈值电压识别模型,并且在识别阶段200B的期间判断目前参考电压如参考电压{REF}(尤其,根据所述查找表将所述组代表信息分别转换为参考电压{REF}),且可直接根据目前参考电压来判断所述读取数据并且即时更新模型。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种用于一存储装置中,通过机器学习来进行的存储器存取管理的方法,所述存储装置包含非易失性存储器,所述非易失性存储器包含至少一个非易失性存储器元件,其特征在于,所述方法包含有:
于所述存储装置中,在训练阶段的期间,根据关于一阈值电压分布的一预定数据库进行机器学习,以产生至少一阈值电压识别模型,其中所述至少一阈值电压识别模型用来判断读取自所述非易失性存储器的一存储单元的比特信息;以及
于所述存储装置中,在识别阶段的期间,于读取所述非易失性存储器时,取得一个或多个参考电压的代表信息,以供根据所述至少一阈值电压识别模型进行机器识别以产生读取数据,其中所述读取数据包含所述比特信息。
2.如权利要求1所述的方法,其特征在于,进行机器识别的步骤包含:
针对所述存储单元,从多个类别选择一类别且使用对应所述类别的一组预定比特作为所述比特信息。
3.如权利要求2所述的方法,其特征在于,所述组预定比特是选自多组预定比特,且所述多组预定比特分别对应于所述多个类别。
4.如权利要求1所述的方法,其特征在于,所述读取数据包含读取自所述非易失性存储器的多个存储单元各自的比特信息,且所述多个存储单元包含所述存储单元。
5.如权利要求1所述的方法,其特征在于,所述方法另包含:
根据所述一个或多个参考电压更新所述至少一阈值电压识别模型。
6.如权利要求1所述的方法,其特征在于,所述方法另包含:
针对所述一个或多个参考电压,产生至少一信心分数;以及
检查所述至少一信心分数是否达到一信心分数阈值,以判断所述比特信息的正确性。
7.如权利要求1所述的方法,其特征在于,进行机器学习的步骤包含:
进行基于多类别支持向量机的阈值电压分类器训练,以产生所述至少一阈值电压识别模型。
8.如权利要求7所述的方法,其特征在于,进行机器识别的步骤包含:
根据所述至少一阈值电压识别模型,进行基于多类别支持向量机的阈值电压识别。
9.如权利要求7所述的方法,其特征在于,所述至少一阈值电压识别模型包含至少一组参数;以及进行机器学习的步骤包含:
使用所述至少一组参数将所述存储装置中的一多类别支持向量机分类器组态成为至少一对应的分类器,以供区分多个类别。
10.如权利要求9所述的方法,其特征在于,所述至少一阈值电压识别模型包含多个阈值电压识别模型,且所述至少一组参数包含多组参数,分别对应所述多个阈值电压识别模型;以及进行机器学习的步骤包含:
分别使用所述多组参数将所述多类别支持向量机分类器组态成为多个对应的分类器,以供区分所述多个类别。
11.一种存储装置,其特征在于,所述存储装置包含有:
非易失性存储器,用来存储信息,其中所述非易失性存储器包含至少一个非易失性存储器元件;以及
控制器,耦接至所述非易失性存储器,用来控制所述存储装置的至少一运作,其中所述控制器包含:
处理电路,用来根据来自主控装置的指令控制所述控制器,以容许所述主控装置通过所述控制器存取所述非易失性存储器,其中:
在训练阶段的期间,所述控制器根据关于一阈值电压分布的一预定数据库进行机器学习,以产生至少一阈值电压识别模型,其中
所述至少一阈值电压识别模型用来判断读取自所述非易失性存储器的一存储单元的比特信息;以及
在识别阶段的期间,所述控制器于读取所述非易失性存储器时取得一个或多个参考电压的代表信息,以供根据所述至少一阈值电压识别模型进行机器识别以产生读取数据,其中所述读取数据包含所述比特信息。
12.如权利要求11所述的存储装置,其特征在于,在进行机器识别时,所述控制器针对所述存储单元,从多个类别选择一类别且使用对应所述类别的一组预定比特作为所述比特信息。
13.如权利要求12所述的存储装置,其特征在于,所述组预定比特是选自多组预定比特,且所述多组预定比特分别对应于所述多个类别。
14.如权利要求11所述的存储装置,其特征在于,所述读取数据包含读取自所述非易失性存储器的多个存储单元的各自的比特信息,且所述多个存储单元包含所述存储单元。
15.如权利要求11所述的存储装置,其特征在于,所述控制器根据所述一个或多个参考电压更新所述至少一阈值电压识别模型。
16.如权利要求11所述的存储装置,其特征在于,所述控制器针对所述一个或多个参考电压产生至少一信心分数,且检查所述至少一信心分数是否达到一信心分数阈值,以判断所述比特信息的正确性。
17.如权利要求11所述的存储装置,其特征在于,所述控制器包含多类别支持向量机引擎;以及于进行机器学习时,所述多类别支持向量机引擎进行基于多类别支持向量机的阈值电压分类器训练,以产生所述至少一阈值电压识别模型。
18.如权利要求17所述的存储装置,其特征在于,在进行机器识别时,所述多类别支持向量机引擎根据所述至少一阈值电压识别模型进行基于多类别支持向量机的阈值电压识别。
19.一种电子装置,其特征在于,所述电子装置包含如权利要求11所述的存储装置,且另包含:
所述主控装置,耦接至所述存储装置,其中所述主控装置包含:
至少一个处理器,用来控制所述主控装置的运作;以及
电源供应电路,耦接至所述至少一个处理器,用来提供电源予所述至少一个处理器与所述存储装置;
其中所述存储装置用来提供存储空间给所述主控装置。
20.一种存储装置的控制器,所述存储装置包含所述控制器与非易失性存储器,所述非易失性存储器包含至少一个非易失性存储器元件,其特征在于,所述控制器包含有:
处理电路,用来根据来自主控装置的指令控制所述控制器,以容许所述主控装置通过所述控制器存取所述非易失性存储器,其中:
在训练阶段的期间,所述控制器根据关于一阈值电压分布的一预定数据库进行机器学习,以产生至少一阈值电压识别模型,其中所述至少一阈值电压识别模型用来判断读取自所述非易失性存储器的一存储单元的比特信息;以及
在识别阶段的期间,所述控制器于读取所述非易失性存储器时取得一个或多个参考电压的代表信息,以供根据所述至少一阈值电压识别模型进行机器识别以产生读取数据,其中所述读取数据包含所述比特信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107116259 | 2018-05-14 | ||
TW107116259A TWI657456B (zh) | 2018-05-14 | 2018-05-14 | 用來於記憶裝置中藉助於機器學習來進行的記憶體存取管理之方法,記憶裝置及其控制器以及電子裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110491437A true CN110491437A (zh) | 2019-11-22 |
CN110491437B CN110491437B (zh) | 2021-05-11 |
Family
ID=66995981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910390931.XA Active CN110491437B (zh) | 2018-05-14 | 2019-05-10 | 通过机器学习进行存储器存取管理的方法与相关存储装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11449806B2 (zh) |
CN (1) | CN110491437B (zh) |
TW (1) | TWI657456B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988613A (zh) * | 2019-12-18 | 2021-06-18 | 杭州海康存储科技有限公司 | 确定闪存的物理状态的方法、装置及设备 |
CN113467704A (zh) * | 2020-03-31 | 2021-10-01 | 西部数据技术公司 | 通过智能阈值检测的命令优化 |
CN116368471A (zh) * | 2020-06-22 | 2023-06-30 | 美光科技公司 | 用于存储器装置的读取算法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110310678A (zh) * | 2019-06-04 | 2019-10-08 | 上海新储集成电路有限公司 | 一种智能芯片 |
US10811075B1 (en) * | 2019-08-19 | 2020-10-20 | Silicon Motion, Inc. | Method for performing access control regarding quality of service optimization of memory device with aid of machine learning, associated memory device and controller thereof |
US11386972B2 (en) * | 2020-01-30 | 2022-07-12 | Macronix International Co., Ltd. | Determining read voltages for memory systems with machine learning |
CN111339074B (zh) * | 2020-02-24 | 2023-05-05 | 深圳市名通科技股份有限公司 | 阈值生成方法、装置、设备和存储介质 |
US11907571B2 (en) | 2020-07-13 | 2024-02-20 | SK Hynix Inc. | Read threshold optimization systems and methods using domain transformation |
KR20220105940A (ko) | 2021-01-21 | 2022-07-28 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법 |
US11749354B2 (en) | 2021-07-13 | 2023-09-05 | SK Hynix Inc. | Systems and methods for non-parametric PV-level modeling and read threshold voltage estimation |
US11769555B2 (en) | 2021-07-27 | 2023-09-26 | SK Hynix Inc. | Read threshold voltage estimation systems and methods for parametric PV-level modeling |
US11769556B2 (en) * | 2021-07-27 | 2023-09-26 | SK Hynix Inc. | Systems and methods for modeless read threshold voltage estimation |
US11854629B2 (en) | 2021-11-22 | 2023-12-26 | SK Hynix Inc. | System and method for non-parametric optimal read threshold estimation using deep neural network |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160148679A1 (en) * | 2014-11-21 | 2016-05-26 | Panasonic Intellectual Property Management Co., Ltd. | Tamper-resistant non-volatile memory device |
US20170083811A1 (en) * | 2015-09-18 | 2017-03-23 | Samsung Electronics Co., Ltd. | Weighting device, neural network, and operating method of the weighting device |
CN107240419A (zh) * | 2012-02-22 | 2017-10-10 | 慧荣科技股份有限公司 | 读取快闪存储器中所储存的数据的方法、存储器控制器与系统 |
CN107797935A (zh) * | 2016-09-06 | 2018-03-13 | 三星电子株式会社 | 存储装置和用于非易失性存储器装置的访问方法 |
CN107957851A (zh) * | 2016-10-18 | 2018-04-24 | 三星电子株式会社 | 存储装置、存储器系统、及其读取电压决定方法 |
CN107967928A (zh) * | 2017-10-18 | 2018-04-27 | 武汉忆数存储技术有限公司 | 一种基于数学模型的闪存芯片寿命预测方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7859932B2 (en) * | 2008-12-18 | 2010-12-28 | Sandisk Corporation | Data refresh for non-volatile storage |
US8259506B1 (en) * | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US20120008414A1 (en) * | 2010-07-06 | 2012-01-12 | Michael Katz | Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system |
US9076545B2 (en) * | 2013-01-17 | 2015-07-07 | Sandisk Tecnologies Inc. | Dynamic adjustment of read voltage levels based on memory cell threshold voltage distribution |
KR20170058066A (ko) * | 2015-11-18 | 2017-05-26 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
CN106448737B (zh) * | 2016-09-30 | 2020-12-01 | 厦门旌存半导体技术有限公司 | 读取闪存数据的方法、装置以及固态驱动器 |
US10877827B2 (en) * | 2017-09-15 | 2020-12-29 | Pure Storage, Inc. | Read voltage optimization |
-
2018
- 2018-05-14 TW TW107116259A patent/TWI657456B/zh active
-
2019
- 2019-02-11 US US16/271,889 patent/US11449806B2/en active Active
- 2019-05-10 CN CN201910390931.XA patent/CN110491437B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107240419A (zh) * | 2012-02-22 | 2017-10-10 | 慧荣科技股份有限公司 | 读取快闪存储器中所储存的数据的方法、存储器控制器与系统 |
US20160148679A1 (en) * | 2014-11-21 | 2016-05-26 | Panasonic Intellectual Property Management Co., Ltd. | Tamper-resistant non-volatile memory device |
US20170083811A1 (en) * | 2015-09-18 | 2017-03-23 | Samsung Electronics Co., Ltd. | Weighting device, neural network, and operating method of the weighting device |
CN107797935A (zh) * | 2016-09-06 | 2018-03-13 | 三星电子株式会社 | 存储装置和用于非易失性存储器装置的访问方法 |
CN107957851A (zh) * | 2016-10-18 | 2018-04-24 | 三星电子株式会社 | 存储装置、存储器系统、及其读取电压决定方法 |
CN107967928A (zh) * | 2017-10-18 | 2018-04-27 | 武汉忆数存储技术有限公司 | 一种基于数学模型的闪存芯片寿命预测方法 |
Non-Patent Citations (1)
Title |
---|
CRISTIAN ZAMBELLI: "Characterization of TLC 3D-NAND Flash Endurance through Machine Learning for LDPC Code Rate Optimization", 《2017 IEEE INTERNATIONAL MEMORY WORKSHOP (IMW)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988613A (zh) * | 2019-12-18 | 2021-06-18 | 杭州海康存储科技有限公司 | 确定闪存的物理状态的方法、装置及设备 |
CN113467704A (zh) * | 2020-03-31 | 2021-10-01 | 西部数据技术公司 | 通过智能阈值检测的命令优化 |
CN116368471A (zh) * | 2020-06-22 | 2023-06-30 | 美光科技公司 | 用于存储器装置的读取算法 |
Also Published As
Publication number | Publication date |
---|---|
US20190347573A1 (en) | 2019-11-14 |
TWI657456B (zh) | 2019-04-21 |
CN110491437B (zh) | 2021-05-11 |
TW201947598A (zh) | 2019-12-16 |
US11449806B2 (en) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110491437A (zh) | 通过机器学习进行存储器存取管理的方法与相关存储装置 | |
US11049009B2 (en) | Identifying memory block write endurance using machine learning | |
US10013211B2 (en) | Storage devices including nonvolatile memory devices and access methods for nonvolatile memory devices | |
WO2021008220A1 (en) | Systems and methods for data storage system | |
US9535614B2 (en) | Temperature based flash memory system maintenance | |
US9361167B2 (en) | Bit error rate estimation for wear leveling and for block selection based on data type | |
US8250292B2 (en) | Data writing method for a flash memory, and controller and storage system using the same | |
US8667210B2 (en) | Memory management method, memory controller and memory storage apparatus | |
TWI651721B (zh) | 解碼方法以及儲存控制器 | |
TWI437569B (zh) | 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器 | |
US11393539B2 (en) | Systems and methods for determining change of read threshold voltage | |
CN110489264A (zh) | 记忆装置页可用性管理方法及系统、记忆装置及电子装置 | |
US20220027721A1 (en) | Read threshold estimation systems and methods using deep learning | |
US11403018B2 (en) | Method and apparatus for performing block management regarding non-volatile memory | |
US11288184B2 (en) | Systems and methods for managing an artificially limited logical space of non-volatile memory | |
CN110532195A (zh) | 存储器系统的工作负荷分簇及执行其的方法 | |
CN110308876A (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN110289036B (zh) | 读取电压最佳化方法以及存储控制器 | |
CN110308936A (zh) | 进行初始化的方法、记忆装置及其控制器以及电子装置 | |
CN114385074B (zh) | 固件参数优化系统和方法 | |
CN110364197A (zh) | 解码方法以及存储控制器 | |
CN103870408A (zh) | 数据处理方法、存储器控制器与存储器储存装置 | |
WO2024020929A1 (en) | Short stripe repair in memory systems | |
US20230147773A1 (en) | Storage device and operating method | |
CN118259839A (zh) | 一种固态盘空间分配方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |