CN110322913B - 存储器管理方法与存储控制器 - Google Patents
存储器管理方法与存储控制器 Download PDFInfo
- Publication number
- CN110322913B CN110322913B CN201810263501.7A CN201810263501A CN110322913B CN 110322913 B CN110322913 B CN 110322913B CN 201810263501 A CN201810263501 A CN 201810263501A CN 110322913 B CN110322913 B CN 110322913B
- Authority
- CN
- China
- Prior art keywords
- group
- word lines
- memory
- word line
- block
- 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
Links
Images
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/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/08—Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
Abstract
本发明提出一种存储器管理方法与存储控制器。所述存储器管理方法包括:将第一区块的多个字线分成多个字线群组,并为每一字线群组记录一特征值;当读取第一字线群组时,累加第二字线群组及第三字线群组的特征值,其中第二字线群组及第三字线群组直接相邻于第一字线群组;以及当第二字线群组的特征值大于第一门槛值时,以第一最佳读取电压组来读取第二字线群组,其中第一最佳读取电压组与对应第二字线群组的预设读取电压组不同。
Description
技术领域
本发明涉及一种存储器管理方法与存储控制器,尤其涉及一种能减少读取扰动(read disturb)错误的存储器管理方法与存储控制器。
背景技术
在反及闸快闪存储器(NAND flash)中,存在读取扰动的效应。简单来说,从一个反及闸快闪存储器阵列的电路图可看出,即使只有读取某一个页面,在与此读取页面处于同一条电压线连接的相邻页面都会被干扰。在累积一定数量的读取次数之后,会开始产生无法通过错误修正码来进行修正的错误。
为了解决读取扰动的问题,一般会记录区块的读取计数值(counter)并当区块的读取计数值大于预先决定值时将此区块的数据搬移到其他区块。这会造成过多的区块数据搬移操作。因此,如何更有效率地解决读取扰动的问题,是本领域技术人员应该致力的目标。
发明内容
本发明提供一种存储器管理方法与存储控制器,能够更有效率地解决读取扰动的问题并减少读取扰动错误。
本发明提出一种存储器管理方法,适用于控制配置有可复写式非易失性存储器模块的存储装置。存储装置通过存储控制器来控制。可复写式非易失性存储器模块包括多个区块。每一区块包括多个字线。每一字线由多个存储单元构成。上述区块包括第一区块。存储器管理方法包括:通过存储控制器将第一区块的字线分成多个字线群组,并为每一字线群组记录特征值。当存储控制器读取字线群组中的第一字线群组时,存储控制器累加字线群组中的第二字线群组及第三字线群组的特征值,其中第二字线群组及第三字线群组直接相邻于第一字线群组。当第二字线群组的特征值大于第一门槛值时,存储控制器指示以第一最佳读取电压组来读取第二字线群组,其中第一最佳读取电压组与对应第二字线群组的预设读取电压组不同。
本发明提出一种存储控制器,适用于控制配置有可复写式非易失性存储器模块的存储装置。可复写式非易失性存储器模块包括多个区块。每一区块包括多个字线。每一字线由多个存储单元构成。上述区块包括第一区块。存储控制器包括:连接接口电路,耦接到主机系统;存储器接口控制电路,耦接到可复写式非易失性存储器模块;以及处理器,耦接到连接接口电路及存储器接口控制电路。其中处理器将第一区块的字线分成多个字线群组,并为每一字线群组记录特征值。当处理器读取字线群组中的第一字线群组时,处理器累加字线群组中的第二字线群组及第三字线群组的特征值,其中第二字线群组及第三字线群组直接相邻于第一字线群组。当第二字线群组的特征值大于第一门槛值时,处理器指示以第一最佳读取电压组来读取第二字线群组,其中第一最佳读取电压组与对应第二字线群组的预设读取电压组不同。
基于上述,本发明的存储器管理方法与存储控制器会将一个区块的字线分成多个字线群组并为每个字线群组记录一个特征值。当其中一个字线群组被读取时,与被读取的字线群组直接相邻的字线群组的特征值会被垒加。当一个字线群组的特征值大于门槛值时,则存储控制器会指示以与预设读取电压组不同的最佳读取电压组来读取特征值大于门槛值的字线群组,以减少读取扰动产生的错误。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1为根据本发明的一实施例所示出的主机系统及存储装置的方块示意图。
图2为根据本发明的一实施例所示出的三维的实体区块的多个字线的示意图。
图3为根据本发明一实施例的存储器管理方法的流程图。
附图标记说明
10:主机系统;
20:存储装置;
110、211:处理器;
120:主机存储器;
130:数据传输接口电路;
210:存储控制器;
212:数据管理电路;
213:存储器接口控制电路;
220:可复写式非易失性存储器模块;
230:连接接口电路;
B1:实体区块;
L1~L64:堆叠层;
W1~W256:字线;
S301、S303、S305:存储器管理方法的步骤。
具体实施方式
在本实施例中,存储装置包括可复写式非易失性存储器模块(rewritable non-volatile memory module)与存储装置控制器(也称,存储控制器或存储控制电路)。此外,存储装置是与主机系统一起使用,以使主机系统可将数据写入至存储装置或从存储装置中读取数据。
图1是根据本发明的一实施例所示出的主机系统及存储装置的方块示意图。
请参照图1,主机系统(Host System)10包括处理器(Processor)110、主机存储器(Host Memory)120及数据传输接口电路(Data Transfer Interface Circuit)130。在本实施例中,数据传输接口电路130耦接(也称,电性连接)至处理器110与主机存储器120。在另一实施例中,处理器110、主机存储器120与数据传输接口电路130之间利用系统总线(System Bus)彼此耦接。
存储装置20包括存储控制器(Storage Controller)210、可复写式非易失性存储器模块(Rewritable Non-Volatile Memory Module)220及连接接口电路(ConnectionInterface Circuit)230。其中,存储控制器210包括处理器211、数据管理电路(DataTransfer Management Circuit)212与存储器接口控制电路(Memory Interface ControlCircuit)213。
在本实施例中,主机系统10是通过数据传输接口电路130与存储装置20的连接接口电路230耦接至存储装置20来进行数据的存取操作。例如,主机系统10可经由数据传输接口电路130将数据存储至存储装置20或从存储装置20中读取数据。
在本实施例中,处理器110、主机存储器120及数据传输接口电路130可设置在主机系统10的主机板上。数据传输接口电路130的数目可以是一或多个。通过数据传输接口电路130,主机板可以经由有线或无线方式耦接至存储装置20。存储装置20可例如是U盘、存储卡、固态硬盘(Solid State Drive,SSD)或无线存储器存储装置。无线存储器存储装置可例如是近距离无线通讯(Near Field Communication,NFC)存储器存储装置、无线传真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通讯技术为基础的存储器存储装置。此外,主机板也可以通过系统总线耦接至全球定位系统(Global Positioning System,GPS)模块、网络接口卡、无线传输装置、键盘、屏幕、喇叭等各式I/O装置。
在本实施例中,数据传输接口电路130与连接接口电路230是相容于高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准的接口电路。并且,数据传输接口电路130与连接接口电路230之间是利用快速非易失性存储器接口标准(Non-Volatile Memory express,NVMe)通讯协定来进行数据的传输。
然而,必须了解的是,本发明不限于此,数据传输接口电路130与连接接口电路230也可以是符合并行高级技术附件(Parallel Advanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394标准、串行高级技术附件(Serial Advanced Technology Attachment,SATA)标准、通用串行总线(Universal Serial Bus,USB)标准、SD接口标准、超高速一代(UltraHigh Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II,UHS-II)接口标准、存储棒(Memory Stick,MS)接口标准、多芯片封装(Multi-Chip Package)接口标准、多媒体存储卡(Multi Media Card,MMC)接口标准、eMMC接口标准、通用快闪存储器(UniversalFlash Storage,UFS)接口标准、eMCP接口标准、CF接口标准、整合式驱动电子接口(Integrated Device Electronics,IDE)标准或其他适合的标准。此外,在另一实施例中,连接接口电路230可与存储控制器210封装在一个芯片中,或者连接接口电路230是布设于一包含存储控制器210的芯片外。
在本实施例中,主机存储器120用以暂存处理器110所执行的指令或数据。例如,在本范例实施例中,主机存储器120可以是动态随机存取存储器(Dynamic Random AccessMemory,DRAM)、静态随机存取存储器(Static Random Access Memory,SRAM)等。然而,必须了解的是,本发明不限于此,主机存储器120也可以是其他适合的存储器。
存储控制器210用以执行以硬件型式或固体型式实作的多个逻辑门或控制指令并且根据主机系统10的指令在可复写式非易失性存储器模块220中进行数据的写入、读取与抹除等运作。
更详细来说,存储控制器210中的处理器211为具备运算能力的硬件,其用以控制存储控制器210的整体运作。具体来说,处理器211具有多个控制指令,并且在存储装置20运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。
值得一提的是,在本实施例中,处理器110与处理器211例如是中央处理单元(Central Processing Unit,CPU)、微处理器(micro-processor)、或是其他可程序化的处理单元(Microprocessor)、数字信号处理器(Digital Signal Processor,DSP)、可程序化控制器、特殊应用集成电路(Application Specific Integrated Circuits,ASIC)、可程序化逻辑装置(Programmable Logic Device,PLD)或其他类似电路元件,本发明并不限于此。
在一实施例中,存储控制器210还具有只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有开机码(boot code),并且当存储控制器210被致能时,处理器211会先执行此开机码来将存储于可复写式非易失性存储器模块220中的控制指令载入至存储控制器210的随机存取存储器中。之后,处理器211会运转此些控制指令以进行数据的写入、读取与抹除等运作。在另一实施例中,处理器211的控制指令也可以程序码型式存储于可复写式非易失性存储器模块220的特定区域,例如,可复写式非易失性存储器模块220中专用于存放系统数据的实体存储单元中。
在本实施例中,如上所述,存储控制器210还包括数据管理电路212与存储器接口控制电路213。应注意的是,存储控制器210各部件所执行的操作也可视为存储控制器210所执行的操作。
其中,数据管理电路212耦接至处理器211、存储器接口控制电路213与连接接口电路230。数据管理电路212用以接受处理器211的指示来进行数据的传输。例如,经由连接接口电路230从主机系统10(如,主机存储器120)读取数据,并且将所读取的数据经由存储器接口控制电路213写入至可复写式非易失性存储器模块220中(如,根据来自主机系统10的写入指令来进行写入操作)。又例如,经由存储器接口控制电路213从可复写式非易失性存储器模块220的一或多个实体单元中读取数据(数据可读取自一或多个实体单元中的一或多个存储单元),并且将所读取的数据经由连接接口电路230写入至主机系统10(如,主机存储器120)中(如,根据来自主机系统10的读取指令来进行读取操作)。在另一实施例中,数据管理电路212也可整合至处理器211中。
存储器接口控制电路213用以接受处理器211的指示,配合数据管理电路212来进行对于可复写式非易失性存储器模块220的写入(也称,程序化,Programming)操作、读取操作或抹除操作。
举例来说,处理器211可执行写入指令序列(或处理器211指示数据管理电路212发送写入指令序列至存储器接口控制电路213),以指示存储器接口控制电路213将数据写入至可复写式非易失性存储器模块220中;处理器211可执行读取指令序列(或处理器211指示数据管理电路212发送读取指令序列至存储器接口控制电路213),以指示存储器接口控制电路213从可复写式非易失性存储器模块220的对应读取指令的一或多个实体单元(也称,目标实体单元)中读取数据;处理器211可执行抹除指令序列(或处理器211指示数据管理电路212发送抹除指令序列至存储器接口控制电路213),以指示存储器接口控制电路213对可复写式非易失性存储器模块220进行抹除操作。写入指令序列、读取指令序列及抹除指令序列可各别包括一或多个程序码或指令码并且用以指示对可复写式非易失性存储器模块220执行相对应的写入、读取及抹除等操作。在一实施例中,处理器211还可以下达其他类型的指令序列给存储器接口控制电路213,以对可复写式非易失性存储器模块220执行相对应的操作。
此外,欲写入至可复写式非易失性存储器模块220的数据会经由存储器接口控制电路213转换为可复写式非易失性存储器模块220所能接受的格式。具体来说,若处理器211要存取可复写式非易失性存储器模块220,处理器211会传送对应的指令序列给存储器接口控制电路213以指示存储器接口控制电路213执行对应的操作。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示抹除数据的抹除指令序列、以及用以指示各种存储器操作(例如,改变预设读取电压组的多个预设读取电压值以进行读取操作,或执行垃圾回收程序等等)的相对应的指令序列。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或程序码。例如,在读取指令序列中,会包括读取的识别码、存储器地址等信息。
可复写式非易失性存储器模块220是耦接至存储控制器210(存储器接口控制电路213)并且用以存储主机系统10所写入的数据。可复写式非易失性存储器模块220可以是单阶存储单元(Single Level Cell,SLC)NAND型快闪存储器模块(即,一个存储单元中可存储1个比特的快闪存储器模块)、多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个比特的快闪存储器模块)、三阶存储单元(Triple LevelCell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储3个比特的快闪存储器模块)、三维NAND型快闪存储器模块(3D NAND flash memory module)或垂直NAND型快闪存储器模块(Vertical NAND flash memory module)等其他快闪存储器模块或其他具有相同特性的存储器模块。
存储控制器210会配置多个逻辑单元给可复写式非易失性存储器模块220。主机系统10是通过所配置的逻辑单元来存取存储在多个实体单元中的使用者数据。在此,每一个逻辑单元可以是由一或多个逻辑地址组成。例如,逻辑单元可以是逻辑区块(LogicalBlock)、逻辑页面(Logical Page)或是逻辑扇区(Logical Sector)。一个逻辑单元可以是映射至一或多个实体单元,其中实体单元可以是一或多个实体地址、一或多个实体扇、一或多个实体程序化单元或者一或多个实体抹除单元。在本实施例中,逻辑单元为逻辑区块,并且逻辑子单元为逻辑页面。每一逻辑单元具有多个逻辑子单元。在本实施例中,是以存储单元作为写入(程序化)数据的最小单位。实体单元(实体区块)为抹除的最小单位,即,每一实体区块含有最小数目之一并被抹除的存储单元。
在本实施例中,可复写式非易失性存储器模块220的多个存储单元会构成多个字线,并且此些字线会构成多个实体区块(也称,实体抹除单元或实体单元)。具体来说,同一条字线上的存储单元可划分为一或多个实体程序化单元。如此一来,可复写式非易失性存储器模块220的多个存储单元便可构成多个实体区块(实体单元)。
图2是根据本发明的一实施例所示出的三维的实体区块的多个字线的示意图。请参照图2,举例来说,假设可复写式非易失性存储器模块220的实体区块B1具有多个由多个存储单元所构成的256个字线(例如,W1到W256),并且每4个字线会分组为一个堆叠层。即,实体区块B1具有64个堆叠层(例如,L1到L64)。由于在存储器制程的形成实体区块B1的过程中,会在实体区块B1本身的有限空间中置入多个字线。因此,当其中一个堆叠层的字线被重复读取时会造成直接相邻的堆叠层的字线上的错误比特大幅增加。虽然图2是以一个堆叠层具有四个字线为例,但本发明并不以此为限。在其他实施例中,实体区块的一个堆叠层也可具有其他不同数量的字线。
在图2的范例中,不同堆叠层上在XY平面具有相同位置的存储单元可通过一条比特线彼此连接。举例来说,字线W1、W5、W9、…、W249及W253的第一个存储单元(或第N个存储单元)可通过一条比特线(bitline)彼此连接。因此,字线W5上的第一个存储单元会在比特线上直接相邻字线W1上的第一个存储单元与字线W9上的第一个存储单元。
表一为根据本发明一实施例的实体区块中的字线的结构的范例。
[表一]
在表一中,实体区块具有0到29共30个堆叠层。每个堆叠层具有12个字线。
表二为根据本发明一实施例在表一结构中读取特定字线而产生读取扰动的范例。
[表二]
在表二中,显示了TLC NAND型快闪存储器模块的实体区块,因此一个字线会包括下页面、中页面及上页面等三个页面。在表二中,下页面、中页面及上页面栏位中的数字代表了错误比特数。表二的实施例模拟了对堆叠层25进行三百万次的页面读取操作,并且记录堆叠层25及其他堆叠层的错误比特数。从表二可显示出堆叠层25及堆叠层23、27的错误比特数都相当低,但与堆叠层25直接相邻的堆叠层24、26则会有较高的错误比特数。特别是,堆叠层24、26的上页面都会有100以上的错误比特数。由表二可得知,在对堆叠层25的字线300到311(或称为字线群组)进行多次读取之后,堆叠层25与堆叠层23、27的错误比特数并不会明显升高,但与堆叠层25直接相邻的堆叠层24、26的错误比特数会明显升高。这代表了对特定堆叠层进行多次读取操作只会让与特定堆叠层直接相邻的堆叠层的错误比特数明显升高,而不会让特定堆叠层的错误比特数明显升高。
表三为根据本发明一实施例的字线群组读取计数、错误比特数及对字线群组施加的电压组的关系。
[表三]
在表三中,显示了对所有字线群组平均读取且总读取计数为低的范例。当所有字线群组的读取计数都为“低”时,所有字线群组的错误比特数也都为“低”。因此只需要对所有字线群组施加预设读取电压组V0来进行后续的读取操作。值得注意的是,预设电压组V0所包括的电压数量可根据可复写式非易失性存储器模块220的类型而有所不同。当可复写式非易失性存储器模块220为TLC NAND型快闪存储器时,预设电压组V0可包括七个不同电压以识别一个存储单元中的三个比特。当可复写式非易失性存储器模块220为MLC NAND型快闪存储器时,预设电压组V0可包括三个不同电压以识别一个存储单元中的两个比特。
表四为根据本发明另一实施例的字线群组读取计数、错误比特数及对字线群组施加的电压组的关系。
[表四]
在表四中,显示了对所有字线群组平均读取且总读取计数为高的范例。假设在表四中是对区块进行七百万次读取且七百万次读取是平均分散在字线群组0到6中。由于七百万次读取平均分散,因此所有字线群组的读取计数都为“中”,且施加电压组V0产生的错误比特数也为“中”。这时处理器211会指示施加最佳电压组V1来进行后续的读取操作,以减少错误比特数。
表五为根据本发明另一实施例的字线群组读取计数、错误比特数及对字线群组施加的电压组的关系。
[表五]
在表五中,显示了对单一字线群组3进行读取且总读取计数为高的范例。假设在表五中是对字线群组3进行七百万次读取,则字线群组3的读取计数为“高”但错误比特数为“低”。然而,虽然字线群组2、4的读取计数为“低”但因为字线群组2、4是直接相邻于字线群组3,字线群组2、4的错误比特数会是“高”。这时处理器211会指示施加最佳电压组V2到字线群组2、4来进行后续的读取操作,以减少错误比特数。
表六为根据本发明另一实施例的字线群组读取计数、错误比特数及对字线群组施加的电压组的关系。
[表六]
在表六中,显示了对两个字线群组3、4进行读取且总读取计数为高的范例。假设在表六中是对字线群组3、4分别进行七百万次读取,则字线群组3、4的读取计数为“高”。由于字线群组2、4会受到字线群组3的读取扰动,且字线群组3、5会受到字线群组4的读取扰动,因此字线群组2、3、4、5的错误比特数都会是“高”。这时处理器211会指示施加最佳电压组V3到字线群组2、3、4、5来进行后续的读取操作,以减少错误比特数。
表七为根据本发明另一实施例的字线群组读取计数、错误比特数及对字线群组施加的电压组的关系。
[表七]
在表七中,是基于表六而进一步列出读取的字线群组与产生的总错误比特数的关系。在“读取群组3”的栏位显示了在字线群组3进行读取“R”会在字线群组2、4产生错误比特“E”,而在“读取群组4”的栏位显示了在字线群组4进行读取“R”会在字线群组3、5产生错误比特“E”。综合上述,字线群组2、3、4、5都会具有“E”的总错误比特数。
表八为根据本发明另一实施例的字线群组读取计数、错误比特数及对字线群组施加的电压组的关系。
[表八]
在表八中,显示了对三个字线群组2、3、4进行读取且总读取计数为高的范例。假设在表八中是对字线群组2、3、4分别进行七百万次读取,则字线群组2、3、4的读取计数为“高”。由于字线群组1、3会受到字线群组2的读取扰动,字线群组2、4会受到字线群组3的读取扰动,字线群组3、5会受到字线群组4的读取扰动,因此字线群组1、2、4、5的错误比特数都会是“高”。另外,由于字线群组3会同时受到字线群组2、4的的读取扰动,因此字线群组3的错误比特数会是“极高(ultra high)”。同时可参考总错误比特数的栏位,字线群组1、2、4、5的总错误比特数都是“E”但字线群组3的总错误比特数是“2E”。因此,处理器211会指示施加最佳电压组V4到字线群组1、2、4、5来进行后续的读取操作以减少错误比特数时,处理器211还会指示施加最佳电压组V5到字线群组3来进行后续的读取操作以减少错误比特数。
表九为根据本发明另一实施例的字线群组读取计数、错误比特数及对字线群组施加的电压组的关系。
[表九]
表九与表八大致相同,差别之处只有新增了每个字线群组的特征值大小。当一个字线群组被读取时,与被读取的字线群组直接相邻的字线群组的特征值会被累加。因此字线群组2的读取计数为高会造成字线群组1、3的特征值为大。类似地,字线群组3的读取计数为高会造成字线群组2、4的特征值为大且字线群组4的读取计数为高会造成字线群组3、5的特征值为大。因为字线群组3的特征值会同时受到字线群组2、4的读取计数为高的影响,因此因为字线群组3的特征值会是极大。从表九也可得知,特征值与错误比特数(V0)会存在高度的正相关关系。
值得注意的是,最佳电压组V1到V5所包括的电压数量可根据可复写式非易失性存储器模块220的类型而有所不同,与最佳电压组V0类似。
图3为根据本发明一实施例的存储器管理方法的流程图。
请参照图3,在步骤S301中,通过存储控制器210将第一区块的字线分成多个字线群组,并为每个字线群组记录一特征值。具体来说,存储控制器210可将一个区块的字线根据堆叠层而分成多个字线群组并为每个字线群组记录一特征值。在此特征值代表了直接相邻的字线群组被读取的次数,同时特征值也会相关于字线群组的错误比特数。
在步骤S303中,当存储控制器210读取第一字线群组时,存储控制器210累加直接相邻于第一字线群组的第二字线群组及第三字线群组的特征值。具体来说,当一个字线群组被读取时,存储控制器210就会累加与此被读取的字线群组直接相邻的字线群组的特征值。
在步骤S305中,当第二字线群组的特征值大于第一门槛值时,存储控制器210指示以第一最佳读取电压组来读取第二字线群组,其中第一最佳读取电压组与对应第二字线群组的预设读取电压组不同。具体来说,当字线群组的特征值大于第一门槛值时,代表了此字线群组受到读取扰动而产生错误比特的机率变高。因此,存储控制器210不会再以预设读取电压组来读取此字线群组,而是以一最佳读取电压组来读取此字线群组。如此可减少此字线群组受到读取扰动而产生的错误比特数量。值得注意的是,当存储控制器210抹除一实体区块时,存储控制器210会将此实体区块的字线群组的特征值都设定为0。
在一实施例中,当第三字线群组的特征值大于一门槛值(例如,第二门槛值)时,存储控制器210指示以第二最佳读取电压组来读取第三字线群组,其中第二门槛值大于第一门槛值。也就是说,存储控制器210会随着字线群组的特征值的累加而使用不同的最佳读取电压组来读取字线群组,以降低错误比特数。
当一个区块中的字线群组读取次数太高,使得产生的错误比特数已经无法通过调整最佳读取电压组来降低时,存储控制器210就必须将一个区块的部分字线群组或整个区块的数据搬移到其他区块。
在一实施例中,当第一区块的第二字线群组的特征值大于一门槛值(例如,第三门槛值)或第一区块的第二字线群组的特征值减去此区块的所有字线群组的特征值的平均值大于另一门槛值(例如,第四门槛值)时,则存储控制器210将第二字线群组的数据搬移到另一区块。此外,存储控制器210还会重置第二字线群组的特征值,并将第二字线群组的数据设定为无效。举例来说,当一个字线群组被不断地重复读取时(例如,此字线群组存储了网络的热门影片或热门数据),会造成与此字线群组直接相邻的字线群组的特征值不断累加。因此,存储控制器210可将与存储热门数据的字线群组直接相邻的字线群组所存储的数据搬移到其他区块,从而减少大量读取存储热门数据的字线群组所产生的读取扰动而造成的错误比特数。
在另一实施例中,当第一区块的字线群组的特征值的平均值大于一门槛值(例如,第五门槛值)时,则存储控制器210将第一区块的数据搬移到另一区块。具体来说,当整个区块的多数字线群组都被不断地重复读取时,整个区块的字线群组都会受到读取扰动的影响而使得错误比特数升高。因此必须直接将整个区块的数据搬移到另一区块以降低读取扰动而造成的错误比特数。
综上所述,本发明的存储器管理方法与存储控制器会将一个区块的字线分成多个字线群组并为每个字线群组记录一个特征值。当其中一个字线群组被读取时,与被读取的字线群组直接相邻的字线群组的特征值会被垒加。当一个字线群组的特征值大于门槛值时,则存储控制器会指示以与预设读取电压组不同的最佳读取电压组来读取特征值大于门槛值的字线群组,以减少读取扰动产生的错误。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求所界定者为准。
Claims (16)
1.一种存储器管理方法,其特征在于,适用于控制配置有可复写式非易失性存储器模块的存储装置,所述存储装置通过存储控制器来控制,所述可复写式非易失性存储器模块包括多个区块,每一所述区块包括多个字线,每一所述字线由多个存储单元构成,所述多个区块包括第一区块,所述存储器管理方法包括:
通过所述存储控制器将所述第一区块的所述多个字线分成多个字线群组,并为每一所述字线群组记录特征值;
当所述存储控制器读取所述多个字线群组中的第一字线群组时,所述存储控制器累加所述多个字线群组中的第二字线群组及第三字线群组的所述特征值,其中所述第二字线群组及所述第三字线群组直接相邻于所述第一字线群组;以及
当所述第二字线群组的所述特征值大于第一门槛值时,所述存储控制器指示以第一最佳读取电压组来读取所述第二字线群组,其中所述第一最佳读取电压组与对应所述第二字线群组的预设读取电压组不同。
2.根据权利要求1所述的存储器管理方法,其中当所述第三字线群组的所述特征值大于第二门槛值时,所述存储控制器指示以第二最佳读取电压组来读取所述第三字线群组,其中所述第二门槛值大于所述第一门槛值。
3.根据权利要求1所述的存储器管理方法,其中所述第一字线群组、所述第二字线群组及所述第三字线群组分别属于所述第一区块的多个堆叠层中的第一层、第二层及第三层,其中所述第二层及所述第三层直接相邻于所述第一层。
4.根据权利要求3所述的存储器管理方法,其中所述第一字线群组包括第一存储单元,所述第二字线群组包括第二存储单元,所述第三字线群组包括第三存储单元,所述第二存储单元及所述第三存储单元分别对应所述第一层的所述第一存储单元设置于所述第二层及所述第三层的相对位置,所述第一存储单元、所述第二存储单元及所述第三存储单元设置于同一比特线上且所述第二存储单元及所述第三存储单元直接相邻于所述第一存储单元。
5.根据权利要求1所述的存储器管理方法,其中当所述存储控制器抹除所述第一区块时,所述存储控制器将所述第一区块的所述多个字线群组的所述特征值设定为0。
6.根据权利要求1所述的存储器管理方法,其中当所述第二字线群组的所述特征值大于第三门槛值或所述第二字线群组的所述特征值减去所述第一区块的所述多个字线群组的所述特征值的平均值大于第四门槛值时,则所述存储控制器将所述第二字线群组的数据搬移到另一区块。
7.根据权利要求6所述的存储器管理方法,其中所述存储控制器重置所述第二字线群组的所述特征值,并将所述第二字线群组的数据设定为无效。
8.根据权利要求1所述的存储器管理方法,其中当所述第一区块的所述多个字线群组的所述特征值的平均值大于第五门槛值时,则所述存储控制器将所述第一区块的数据搬移到另一区块。
9.一种存储控制器,其特征在于,适用于控制配置有可复写式非易失性存储器模块的存储装置,所述可复写式非易失性存储器模块包括多个区块,每一所述区块包括多个字线,每一所述字线由多个存储单元构成,所述多个区块包括第一区块,所述存储控制器包括:
连接接口电路,耦接到主机系统;
存储器接口控制电路,耦接到所述可复写式非易失性存储器模块;以及
处理器,耦接到所述连接接口电路及所述存储器接口控制电路,其中
所述处理器将所述第一区块的所述多个字线分成多个字线群组,并为每一所述字线群组记录特征值;
当所述处理器读取所述多个字线群组中的第一字线群组时,所述处理器累加所述多个字线群组中的第二字线群组及第三字线群组的所述特征值,其中所述第二字线群组及所述第三字线群组直接相邻于所述第一字线群组;以及
当所述第二字线群组的所述特征值大于第一门槛值时,所述处理器指示以第一最佳读取电压组来读取所述第二字线群组,其中所述第一最佳读取电压组与对应所述第二字线群组的预设读取电压组不同。
10.根据权利要求9所述的存储控制器,其中当所述第三字线群组的所述特征值大于第二门槛值时,所述处理器指示以第二最佳读取电压组来读取所述第三字线群组,其中所述第二门槛值大于所述第一门槛值。
11.根据权利要求9所述的存储控制器,其中所述第一字线群组、所述第二字线群组及所述第三字线群组分别属于所述第一区块的多个堆叠层中的第一层、第二层及第三层,其中所述第二层及所述第三层直接相邻于所述第一层。
12.根据权利要求11所述的存储控制器,其中所述第一字线群组包括第一存储单元,所述第二字线群组包括第二存储单元,所述第三字线群组包括第三存储单元,所述第二存储单元及所述第三存储单元分别对应所述第一层的所述第一存储单元设置于所述第二层及所述第三层的相对位置,所述第一存储单元、所述第二存储单元及所述第三存储单元设置于同一比特线上且所述第二存储单元及所述第三存储单元直接相邻于所述第一存储单元。
13.根据权利要求9所述的存储控制器,其中当所述处理器抹除所述第一区块时,所述处理器将所述第一区块的所述多个字线群组的所述特征值设定为0。
14.根据权利要求9所述的存储控制器,其中当所述第二字线群组的所述特征值大于第三门槛值或所述第二字线群组的所述特征值减去所述第一区块的所述多个字线群组的所述特征值的平均值大于第四门槛值时,则所述处理器将所述第二字线群组的数据搬移到另一区块。
15.根据权利要求14所述的存储控制器,其中所述处理器重置所述第二字线群组的所述特征值,并将所述第二字线群组的数据设定为无效。
16.根据权利要求9所述的存储控制器,其中当所述第一区块的所述多个字线群组的所述特征值的平均值大于第五门槛值时,则所述处理器将所述第一区块的数据搬移到另一区块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810263501.7A CN110322913B (zh) | 2018-03-28 | 2018-03-28 | 存储器管理方法与存储控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810263501.7A CN110322913B (zh) | 2018-03-28 | 2018-03-28 | 存储器管理方法与存储控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110322913A CN110322913A (zh) | 2019-10-11 |
CN110322913B true CN110322913B (zh) | 2021-05-25 |
Family
ID=68109762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810263501.7A Active CN110322913B (zh) | 2018-03-28 | 2018-03-28 | 存储器管理方法与存储控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110322913B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104036825A (zh) * | 2013-03-07 | 2014-09-10 | 三星电子株式会社 | 存储器控制器和包括存储器控制器的存储器系统 |
CN106981302A (zh) * | 2017-03-20 | 2017-07-25 | 记忆科技(深圳)有限公司 | 一种快速评估最优读电压的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8937838B2 (en) * | 2012-01-10 | 2015-01-20 | Sk Hynix Memory Solutions Inc. | Finding optimal read thresholds and related voltages for solid state memory |
-
2018
- 2018-03-28 CN CN201810263501.7A patent/CN110322913B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104036825A (zh) * | 2013-03-07 | 2014-09-10 | 三星电子株式会社 | 存储器控制器和包括存储器控制器的存储器系统 |
CN106981302A (zh) * | 2017-03-20 | 2017-07-25 | 记忆科技(深圳)有限公司 | 一种快速评估最优读电压的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110322913A (zh) | 2019-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10579537B2 (en) | Memory having a static cache and a dynamic cache | |
KR100878479B1 (ko) | 데이터 정보에 따라 프로그램 방식을 결정하는 메모리시스템 | |
CN110335635B (zh) | 用来管理一记忆装置的方法以及记忆装置与控制器 | |
US8417879B2 (en) | Method for suppressing errors, and associated memory device and controller thereof | |
US20190332331A1 (en) | Memory management method and storage controller | |
US9582224B2 (en) | Memory control circuit unit, memory storage apparatus and data accessing method | |
US9514042B2 (en) | Method for managing memory apparatus to perform writing control according to monitored data amount of received data, associated memory apparatus thereof and associated controller thereof | |
CN111158579B (zh) | 固态硬盘及其数据存取的方法 | |
US10503433B2 (en) | Memory management method, memory control circuit unit and memory storage device | |
US20190391914A1 (en) | Memory management method and storage controller | |
CN107544922B (zh) | 数据写入方法、存储器控制电路单元及存储器存储装置 | |
KR20090006920A (ko) | 캐시 메모리 장치 및 캐시 메모리 장치의 데이터 처리 방법 | |
US20150161042A1 (en) | Memory management method, memory controlling circuit unit, and memory storage device | |
TWI648739B (zh) | 記憶體管理方法與儲存控制器 | |
US10509583B1 (en) | Memory management method and storage controller | |
US11461238B2 (en) | Storage device, memory controller, and method for fetching write commands from submission queues to perform full page writes | |
US11586379B2 (en) | Memory system and method of operating the same | |
US11194708B2 (en) | Data relocation in memory having two portions of data | |
CN110322913B (zh) | 存储器管理方法与存储控制器 | |
US8713242B2 (en) | Control method and allocation structure for flash memory device | |
CN108091364B (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
US20190087106A1 (en) | Memory system and memory control method | |
CN112099727B (zh) | 数据写入方法、存储器控制电路单元及存储器存储装置 | |
CN112216329B (zh) | 数据抹除方法、存储器控制电路单元及存储器存储装置 | |
CN106326131B (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 |