CN113495801A - 存取闪存模块的方法及相关的闪存控制器与电子装置 - Google Patents
存取闪存模块的方法及相关的闪存控制器与电子装置 Download PDFInfo
- Publication number
- CN113495801A CN113495801A CN202010399485.1A CN202010399485A CN113495801A CN 113495801 A CN113495801 A CN 113495801A CN 202010399485 A CN202010399485 A CN 202010399485A CN 113495801 A CN113495801 A CN 113495801A
- Authority
- CN
- China
- Prior art keywords
- read
- flash memory
- reading
- memory module
- microprocessor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 101100255266 Arabidopsis thaliana RSL4 gene Proteins 0.000 description 11
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 239000010410 layer Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101100255265 Arabidopsis thaliana RSL2 gene Proteins 0.000 description 1
- 101150002757 RSL1 gene Proteins 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- QYYXITIZXRMPSZ-UHFFFAOYSA-N n'-tert-butyl-n'-(3,5-dimethylbenzoyl)-2-ethyl-3-methoxybenzohydrazide Chemical compound CCC1=C(OC)C=CC=C1C(=O)NN(C(C)(C)C)C(=O)C1=CC(C)=CC(C)=C1 QYYXITIZXRMPSZ-UHFFFAOYSA-N 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1072—Adding 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 multilevel memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/076—Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/1096—Parity calculation or recalculation after configuration or reconfiguration of the system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种存取一闪存模块的方法,其中所述闪存模块包括了至少一闪存芯片,每一个闪存芯片包括了多个区块,每一个区块包括多个数据页,且所述方法包括有:提供一读取重试表,其中所述读取重试表记录了多个读取档位,每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压;建立一读取成功记录表,其记录了先前曾经被用来成功读取所述闪存模块的至少一特定读取档位;以及当需要读取所述闪存模块时,使用所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。本发明建立并更新读取成功纪录表,闪存控制器可快速找到适合的读取档位,因此改善系统效能。
Description
技术领域
本发明关于闪存,尤指一种存取闪存模块的方法及相关的闪存控制器与电子装置。
背景技术
随着低密度奇偶检查码(Low-density parity-check code,LDPC)的发展,闪存控制器中的错误更正码(Error Correction Code,ECC)电路可以对具有更高位错误量/位错误率的数据进行错误更正,以成功地对数据进行解码操作。然而,虽然错误更正码电路的解码能力提升了,但是当位错误量/位错误率高于一临界值时,错误更正码电路的处理速度会大幅下降,例如降低到约每秒20百万字节(20MB/s),因而严重影响到系统效能。
为了解决上述位错误量/位错误率过高而导致系统效能下降或是甚至无法成功解码的问题,闪存模块会提供多个读取档位,以使用不同的读取电压来读取闪存模块,以得到适合的数据(也就是说,可以成功解码的数据或是具有较低位错误量/位错误率的数据)。然而,上述的读取档位随着技术的发展变得越来越多,例如有50个读取档位,而若是依序尝试这50个读取档位则会浪费许多读取时间。在一例子中,在闪存模块处于严苛环境下(例如高温或低温),闪存模块中的记忆单元的临界电压会具有较大的偏移量,因此闪存控制器往往需要试到第40~50个读取档位才能够读取到适合的数据,而使用之前40几个读取档位来进行读取操作的时间便都浪费掉了。
发明内容
因此,本发明的目的之一在于提出一种存取闪存模块的方法及相关的闪存控制器与电子装置,其可以快速地找到适合的读取档位,以避免现有技术中浪费许多时间在找寻适合读取档位的情形。
在本发明的一个实施例中,公开了一种闪存控制器,其中所述闪存控制器是用来存取一闪存模块,所述闪存模块包括了至少一闪存芯片,每一个闪存芯片包括了多个区块,每一个区块包括多个数据页,且所述闪存控制器包括有一只读存储器、一微处理器以及一缓冲存储器。所述只读存储器是用来存储一程序代码;所述微处理器用来执行所述程序代码以控制对所述闪存模块的存取;所述缓冲存储器是用以存储了一读取重试表以及一读取成功记录表,其中所述读取重试表记录了多个读取档位,每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压;以及所述读取成功记录表记录了先前曾经被用来成功读取所述闪存模块的至少一个特定读取档位;以及当所述微处理器需要读取所述闪存模块时,所述微处理器根据所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。
在本发明的一个实施例中,公开一种存取一闪存模块的方法,其中所述闪存模块包括了至少一闪存芯片,每一个闪存芯片包括了多个区块,每一个区块包括多个数据页,且所述方法包括有:提供一读取重试表,其中所述读取重试表记录了多个读取档位,每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压;建立一读取成功记录表,其记录了先前曾经被用来成功读取所述闪存模块的至少一特定读取档位;以及当需要读取所述闪存模块时,使用所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。
在本发明的另一个实施例中,公开了一种电子装置,其包括了一闪存模块以及一闪存控制器,其中所述闪存控制器用来存取所述闪存模块,其中所述闪存控制器存储了一读取重试表,所述读取重试表记录了多个读取档位,每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压。在所述电子装置的操作中,所述闪存控制器另建立一读取成功记录表,其中所述读取成功记录表记录了先前曾经被用来成功读取所述闪存模块的至少一个特定读取档位;以及当所述闪存控制器需要读取所述闪存模块时,所述闪存控制器根据所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。
附图说明
图1为依据本发明一实施例的一种记忆装置的示意图。
图2为依据本发明一实施例的闪存中一区块的示意图。
图3为数据页中多个写入电压位准以及多个临界电压的示意图。
图4为根据本发明一实施例的存取闪存模块的方法的流程图。
图5为根据本发明另一实施例的存取闪存模块的方法的流程图。
图6为根据本发明另一实施例的存取闪存模块的方法的流程图。
其中,附图标记说明如下:
100 记忆装置
110 闪存控制器
112 微处理器
112C 程序代码
112M 只读存储器
114 控制逻辑
116 缓冲存储器
118 接口逻辑
120 闪存模块
130 主装置
132 编码器
134 解码器
142 读取重试表
144 读取成功纪录表
200 区块
202 浮闸晶体管
400~420,500~522,600~624 步骤
BL1,BL2,BL3 位线
WL0~WL2,WL4~WL6 字线
L1~L8 写入电压位准
Vt1~Vt7 读取电压
具体实施方式
图1为依据本发明一实施例的一种记忆装置100的示意图。记忆装置100包括有一闪存(Flash Memory)模块120以及一闪存控制器110,且闪存控制器110用来存取闪存模块120。依据本实施例,闪存控制器110包括一微处理器112、一只读存储器(Read OnlyMemory,ROM)112M、一控制逻辑114、一缓冲存储器116、与一接口逻辑118。只读存储器112M是用来存储一程序代码112C,而微处理器112则用来执行程序代码112C以控制对闪存模块120的存取(Access)。控制逻辑114包括了一编码器132以及一解码器134,其中编码器132用来对写入到闪存模块120中的数据进行编码以产生对应的校验码(或称,错误更正码(ErrorCorrection Code),ECC),而解码器134用来将从闪存模块120所读出的数据进行解码。
于典型状况下,闪存模块120包括了多个闪存芯片,而每一个闪存芯片包括多个区块(block),而闪存控制器110对闪存模块120进行抹除数据运作是以区块为单位来进行。另外,一区块可记录特定数量的数据页(page),其中闪存控制器110对闪存模块120进行写入数据的运作是以数据页为单位来进行写入。在本实施例中,闪存模块120为一立体NAND型闪存(3D NAND-type flash)模块。
实作上,通过微处理器112执行程序代码112C的闪存控制器110可利用其本身内部的组件来进行诸多控制运作,例如:利用控制逻辑114来控制闪存模块120的存取运作(尤其是对至少一区块或至少一数据页的存取运作)、利用缓冲存储器116进行所需的缓冲处理、以及利用接口逻辑118来与一主装置(Host Device)130沟通。缓冲存储器116是以随机存取存储器(Random Access Memory,RAM)来实施。例如,缓冲存储器116可以是静态随机存取存储器(Static RAM,SRAM),但本发明不限于此。
在一实施例中,记忆装置100可以是可携式记忆装置(例如:符合SD/MMC、CF、MS、XD标准的记忆卡),且主装置130为一可与记忆装置连接的电子装置,例如手机、笔记本电脑、桌面计算机…等等。而在另一实施例中,记忆装置100可以是固态硬盘或符合通用闪存存储(Universal Flash Storage,UFS)或嵌入式多媒体记忆卡(Embedded Multi Media Card,EMMC)规格的嵌入式存储装置,以设置在一电子装置中,例如设置在手机、笔记本电脑、桌面计算机的中,而此时主装置130可以是所述电子装置的一处理器。
图2为依据本发明一实施例的闪存模块120中一区块200的示意图,其中闪存模块120为立体NAND型闪存。如图2所示,区块200包括了多个记忆单元(例如图标的浮闸晶体管202或是其他的电荷捕捉(charge trap)组件),其通过多条位线(图示仅绘示了BL1~BL3)及多条字线(例如图示WL0~WL2、WL4~WL6)来构成立体NAND型闪存架构。在图2中,以最上面的一个平面为例,字线WL0上的所有浮闸晶体管构成了至少一数据页,字线WL1上的所有浮闸晶体管构成了另至少一数据页,而字线WL2的所有浮闸晶体管构成了再另至少一数据页…以此类堆。此外,根据闪存写入方式的不同,字线WL0与数据页(逻辑数据页)之间的定义也会有所不同,详细来说,当使用单层式存储(Single-Level Cell,SLC)的方式写入时,字线WL0上的所有浮闸晶体管仅对应到单一逻辑数据页;当使用双层式存储(Multi-LevelCell,MLC)的方式写入时,字线WL0上的所有浮闸晶体管对应到两个逻辑数据页;当使用三层式存储(Triple-Level Cell,TLC)的方式写入时,字线WL0上的所有浮闸晶体管对应到三个逻辑数据页;以及当使用四层式存储(Quad-Level Cell,QLC)的方式写入时,字线WL0上的所有浮闸晶体管对应到四个逻辑数据页。由于本技术领域中具有通常知识者应能了解立体NAND型闪存的结构以及字线及数据页之间的关系,故相关的细节在此不予赘述。
图3为使用三层式存储区块来作为区块200时多个写入电压位准L1~L8以及多个读取电压Vt1~Vt7的示意图,其中读取电压Vt1~Vt7在本领域中也可被称为临界电压。如图3所示,每个浮闸晶体管202可以被程序化(programmed(为具有电压位准L1(也就是说,(MSB,CSB,LSB)=(1,1,1))、电压位准L2(也就是说,(MSB,CSB,LSB)=(1,1,0)、电压位准L3(也就是说,(MSB,CSB,LSB)=(1,0,0))、电压位准L4(也就是说,(MSB,CSB,LSB)=(0,0,0))、电压位准L5(也就是说,(MSB,CSB,LSB)=(0,1,0))、电压位准L6(也就是说,(MSB,CSB,LSB)=(0,1,1))、电压位准L7(也就是说,(MSB,CSB,LSB)=(0,0,1))或是电压位准L8(也就是说,(MSB,CSB,LSB)=(1,0,1))。当闪存控制器110需要读取浮闸晶体管202中的最低有效位(LSB)时,闪存控制器110会使用读取电压Vt1、Vt5去读取浮闸晶体管202,并根据浮闸晶体管202的导通状态(是否有电流产生)来产生“1”或是“0”,类似地,当闪存控制器110需要读取浮闸晶体管202中的中间有效位(CSB)时,闪存控制器110会使用读取电压Vt2、Vt4与Vt6去读取浮闸晶体管202,并根据浮闸晶体管202的导通状态(是否有电流产生)来产生“1”或是“0”,以供解码器134进行解码。类似地,当闪存控制器110需要读取浮闸晶体管202中的最高有效位(MSB)时,闪存控制器110会使用读取电压Vt3与Vt7去读取浮闸晶体管202,并根据浮闸晶体管202的导通状态(是否有电流产生)来判断最高有效位是“1”或是“0”,以供解码器134进行解码。在本实施例中,当浮闸晶体管202具有电压位准L1时可以被称为具有抹除状态(erase state),而当浮闸晶体管202具有电压位准L2~L8的任一时可以被称为具有写入状态(program state)。
需注意的是,图3所示的范例仅是用来说明闪存控制器读取浮闸晶体管202的过程,而其实施方式并非是本发明的限制,具体来说,上述最低有效位、中间有效位以及最高有效位可以具有不同的编码方式,且闪存控制器可以另外使用额外的辅助电压来读取浮闸晶体管202以提供更多的信息给解码器134进行解码。此外,由于本领域具有通常知识者应可在阅读过上述图3的相关内容的后了解到如何将上述实施例应用在单层式存储区块、双层式存储区块以及四层式存储区块,相关细节在此不再赘述。
由于闪存模块120可能会因为数据保存(data retention)、写入状态、环境因素…等等而造成写入电压位准L1~L8飘移,而使得原本的读取电压Vt1~Vt7无法正确地读取闪存模块120,因此,闪存模块120的制造厂商通常会提供一个读取重试表(read retrytable)142,其中读取重试表142记录了多个读取配置文件位(read setting level,以下简称读取档位),每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压,而闪存控制器110可以在开机时将读取重试表142加载到缓冲存储器116中,以控制闪存模块120使用不同的读取电压Vt1~Vt7来读取闪存模块120,以得到质量较佳且可以成功解码的数据。详细来说,以图3所示的范例中来进行说明,由于三层式存储区块的每一个字线包括了三个逻辑数据页,而这三个逻辑数据页一般被称为最低有效位数据页(Least Significant Bit(LSB)page)、中间有效位数据页(Middle Significant Bit(MSB)page)以及最高有效位数据页(Most Significant Bit(MSB)page),因此,读取重试表142可以包括三个子表(Sub-table),其中第一子表包括了对应到最低有效位数据页的多个读取档位、第二子表包括了对应到中间有效位数据页的多个读取档位、且第三子表包括了对应到最高有效位数据页的多个读取档位。以第一子表为例来说明,第一读取档位可以是读取电压Vt1、Vt5、第二读取档位可以是读取电压Vt1+Δ、Vt5+Δ、第三读取档位可以是读取电压Vt1-Δ、Vt5-Δ、第四读取档位可以是读取电压Vt1+2*Δ、Vt5+2*Δ、第五读取档位可以是读取电压Vt1-2*Δ、Vt5-2*Δ、…、以此类推,其中Δ可以是任何远小于两个读取电压间距的数值。
如现有技术中所述,由于读取重试表142包括了很多个读取档位,因此,在闪存模块处于严苛环境下(例如高温或低温)或其他因素而造成写入电压位准L1~L8飘移的情形下,若是采用现有技术中依序使用多个读取档位来读取闪存模阻120,则往往需要尝试多个无效的读取档位才能够读取到适合的数据。此外,发明人通过在各种不同环境下使用多个读取档位来读取闪存模阻120所产生的多笔数据,统计并归纳出很多读取档位事实上并无法产生具有较低位错误量/位错误率的适合数据,因此,本发明特别提出了在缓冲存储器116内建立一个读取成功记录表144,其记录了先前曾经被用来成功读取所述闪存模块的至少一个特定读取档位。而闪存控制器110在需要改变读取档位来读取闪存模块120时可以优先使用读取成功记录表144内所记录的特定读取档位来进行,以使得闪存控制器110可以快速地找到适合的读取档位,以增进系统效能。
图4为根据本发明一实施例的存取闪存模块120的方法的流程图。在步骤400中,流程开始。在步骤402中,闪存控制器110自主装置130接收到一读取命令,以要求自闪存模块120中读取至少一数据页中的数据。在以下的说明中,为了方便解释本实施例的技术内容,是假设所述读取命令是要求读取闪存模块120中一区块的一特定数据页(逻辑数据页)。在步骤404,微处理器112判断所述特定数据页的型式,以三层式存储区块来做为说明,微处理器112判断所述特定数据页是属于最低有效位数据页、中间有效位数据页以及最高有效位数据页中的哪一者。在步骤406中,微处理器112自读取成功纪录表144中取得一特定读取档位。具体来说,微处理器112先根据所述特定数据页的型式以取得读取成功纪录表144的一子表,并选择所述子表内具有最高优先级的特定读取档位。举例来说,假设读取成功纪录表144具有优先级由高至低的四个字段,且每一个字段都已经记录了先前曾经被用来成功读取闪存模块120的特定读取档位,且读取成功纪录表144的四个字段分别记录了第四读取档位RSL4、第八读取档位RSL8、第十读取档位RSL10、第十三读取档位RSL13。读取成功纪录表144的范例如以下表一:
第一字段 | 第二字段 | 第三字段 | 第四字段 |
RSL4 | RSL8 | RSL10 | RSL13 |
表一
在步骤408中,微处理器112使用具有最高优先顺率的第四读取档位RSL4来读取闪存模块120中的所述特定数据页,而若是读取成功(也就是说,解码器134可以成功地对所读取的数据完成解码操作),则流程进入到步骤420;而若是读取失败(也就是说,解码器134因为所读取的数据的位错误量太多而无法对所读取的数据完成解码操作),则流程进入到步骤410。在步骤410中,微处理器112根据读取成功纪录表144(例如表一)以依序使用第八读取档位RSL8、第十读取档位RSL10、或第十三读取档位RSL13来读取闪存模块120中的所述特定数据页,并在步骤412中判断是否可以成功读取所述特定数据页。若是微处理器112可以使用第八读取档位RSL8、第十读取档位RSL10、第十三读取档位RSL13中的任一者成功读取所述特定数据页,则流程进入到步骤414;而若是微处理器112无法使用第八读取档位RSL8、第十读取档位RSL10、第十三读取档位RSL13中的任一者成功读取所述特定数据页,则流程进入到步骤416。
在步骤414中,微处理器112根据成功读取所述特定数据页的特定读取档位来更新读取成功纪录表144,以使得成功读取所述特定数据页的特定读取档位排列到第一字段(也就是说,最高优先级)。举例来说,假设微处理器112使用第八读取档位RSL8来成功读取到所述特定数据页,则读取成功纪录表144更新如以下的表二:
第一字段 | 第二字段 | 第三字段 | 第四字段 |
RSL8 | RSL4 | RSL10 | RSL13 |
表二
假设微处理器112使用第十读取档位RSL10来成功读取到所述特定数据页,则读取成功纪录表144更新如以下的表三:
第一字段 | 第二字段 | 第三字段 | 第四字段 |
RSL10 | RSL4 | RSL8 | RSL13 |
表三
假设微处理器112使用第十三读取档位RSL13来成功读取到所述特定数据页,则读取成功纪录表144更新如以下的表四:
第一字段 | 第二字段 | 第三字段 | 第四字段 |
RSL13 | RSL4 | RSL8 | RSL10 |
表四
在步骤416中,微处理器112依序使用读取重试表142所记录的多个读取档位来读取所述特定数据页,且一旦微处理器112成功读取所述特定数据页时便停止继续使用剩余的读取档位来读取所述特定数据页。举例来说,假设读取重试表142内具有50个读取档位RSL1~RSL50,则微处理器112可以依序使用、第一读取档位RSL1、第二读取档位RSL2、…、来读取所述特定数据页,直到可以成功读取所述特定数据页为止。在步骤418,微处理器112根据成功读取所述特定数据页的读取档位来更新读取成功纪录表144,以使得成功读取所述特定数据页的读取档位排列到第一字段(也就是说,最高优先级)。举例来说,假设微处理器112使用第三十读取档位RSL30来成功读取到所述特定数据页(第三十一读取档位RSL31与的后的读取档位没有被使用),则读取成功纪录表144更新如以下的表五(删除最早记录的第十三读取档位RSL13):
第一字段 | 第二字段 | 第三字段 | 第四字段 |
RSL30 | RSL4 | RSL8 | RSL10 |
表五
在步骤420,微处理器112将成功自所述特定数据页所读取的数据传送到主装置130,并结束读取操作。
在图4所示的实施例中,通过直接使用读取成功纪录表144内所记录的特定读取档位,可以让微处理器112由读取成功可能性最高的读取档位开始尝试起,而不需由读取重试表142内的所有读取档位依序开始尝试,因此可以有效快速地找寻到可以成功读取的读取档位,以加速闪存模块120的读取速度。此外,由于读取成功纪录表144会使用最近被用来成功读取闪存模块120的读取档位来进行更新,因此可以适应最新的变化(也就是说,环境变化或是电子装置100的状态变化)。
图5为根据本发明另一实施例的存取闪存模块120的方法的流程图。在步骤500中,流程开始。在步骤502中,闪存控制器110自主装置130接收到一读取命令,以要求自闪存模块120中读取至少一数据页中的数据。在以下的说明中,为了方便解释本实施例的技术内容,是假设所述读取命令是要求读取闪存模块120中一区块的一特定数据页(逻辑数据页)。在步骤504,微处理器112判断所述特定数据页的型式,以三层式存储区块来做为说明,微处理器112判断所述特定数据页是属于最低有效位数据页、中间有效位数据页以及最高有效位数据页中的哪一者。在步骤506中,微处理器112使用一预设读取档位,其中所述预设读取档位可以是先前所决定的对应到最低或较低位错误量/位错误率的读取档位,且所述预设读取档位可以随着电子装置100的操作而跟着改变。在步骤508中,微处理器112使用所述预设读取档位来读取闪存模块120中的所述特定数据页,而若是读取成功(也就是说,解码器134可以成功地对所读取的数据完成解码操作),则流程进入到步骤522;而若是读取失败(也就是说,解码器134因为所读取的数据的位错误量太多而无法对所读取的数据完成解码操作),则流程进入到步骤510。在步骤510中,微处理器112根据读取成功纪录表144(例如,表一)以依序使用第四读取档位RSL4、第八读取档位RSL8、第十读取档位RSL10、或第十三读取档位RSL13来读取闪存模块120中的所述特定数据页,并在步骤512中判断是否可以成功读取所述特定数据页。若是微处理器112可以使用第四读取档位RSL4、第八读取档位RSL8、第十读取档位RSL10、第十三读取档位RSL13中的任一者成功读取所述特定数据页,则流程进入到步骤514;而若是微处理器112无法使用第四读取档位RSL4、第八读取档位RSL8、第十读取档位RSL10、第十三读取档位RSL13中的任一者成功读取所述特定数据页,则流程进入到步骤516。
在步骤514,微处理器112根据成功读取所述特定数据页的特定读取档位来更新读取成功纪录表144,以使得成功读取所述特定数据页的特定读取档位排列到第一字段(也就是说,最高优先级)。举例来说,假设微处理器112使用第四读取档位RSL4来成功读取到所述特定数据页,则读取成功纪录表144维持表一的内容而不需要进行更新;而假设微处理器112使用第八读取档位RSL8、第十读取档位RSL10或是第十三读取档位RSL13来成功读取到所述特定数据页,则更新后的读取成功纪录表144可以参考以上的表二~表四。在步骤516中,微处理器112依序使用读取重试表142所记录的多个读取档位来读取所述特定数据页,且一旦微处理器112成功读取所述特定数据页时便停止继续使用剩余的读取档位来读取所述特定数据页。在步骤518,微处理器112根据成功读取所述特定数据页的读取档位来更新读取成功纪录表144,以使得成功读取所述特定数据页的读取档位排列到第一字段(也就是说,最高优先级),例如以上所述的表五。
在步骤520中,微处理器112重新分别使用读取重试表142中多个读取档位来读取闪存模块120以得到多笔数据,解码器134对所述多笔数据进行解码以决定出每一个数据的位错误量,且微处理器112将具有最低位错误量的所述笔数据所对应到的读取档位设为所述预设读取档位,以供下一次读取操作时使用。具体来说,假设读取重试表142内有50个读取档位RSL1~RSL50,则微处理器112依序使用读取档位RSL1~RSL50来读取所述特定数据页的至少一部分数据内容而分别得到50笔数据,而假设使用读取档位RSL40来读取所述特定数据页时所得到的数据具有最低的位错误量/位错误率,则微处理器112可以将读取档位RSL40设为所述预设读取档位。当下一次闪存控制器110接收到来自主装置130的读取命令时,便可以在步骤506中直接使用读取档位RSL40来读取闪存模块120。
在步骤522,微处理器112将成功自所述特定数据页所读取的数据传送到主装置130,并结束读取操作。
在图5所示的实施例中,通过优先使用之前对应到最低位错误量/位错误率的所述预设读取档位来读取闪存模块120,可以使得所读取的数据有较高的可能性会具有很低的位错误量/位错误率,以避免解码器134中LDPC电路的处理速度因为位错误量/位错误率过高而变慢。此外,通过使用读取成功纪录表144内所记录的特定读取档位,可以让微处理器112由读取成功可能性较高的读取档位开始尝试起,而不需由读取重试表142内的所有读取档位依序开始尝试,因此可以有效快速地找寻到可以成功读取的读取档位,以加速闪存模块120的读取速度。此外,由于读取成功纪录表144会使用最近被用来成功读取闪存模块120的读取档位来进行更新,因此可以适应电子装置100最新的变化。
图6为根据本发明另一实施例的存取闪存模块120的方法的流程图。参考图6,由于步骤600~618的内容分别相同于图5所示的步骤500~518,故以下叙述由步骤620开始。在步骤620中,在微处理器112成功读取闪存模块120的后,微处理器112判断成功读取闪存模块120时所读取数据的位错误量/位错误率是否高于一临界值,若是位错误量/位错误率高于所述临界值,流程进入步骤622;而若是位错误量/位错误率不高于于所述临界值,流程进入步骤624。步骤622类似图5所示的步骤520,也就是说,微处理器112重新分别使用读取重试表142中多个读取档位来读取闪存模块120以得到多笔数据,解码器134对所述多笔数据进行解码以决定出每一个数据的位错误量,且微处理器112将具有最低位错误量的所述笔数据所对应到的读取档位设为所述预设读取档位,以供下一次读取操作时使用。在步骤624,微处理器112将成功自所述特定数据页所读取的数据传送到主装置130,并结束读取操作。
在图6中,由于步骤622中依序使用读取重试表142中所有读取档位来读取闪存模块120会耗费较多的时间,因此,本实施例在步骤620提供了一个判断机制以使得步骤622只有在位错误量/位错误率过高的情形下才会执行,以避免运行时间过长。
简要归纳本发明,在本发明的存取闪存模块的方法及相关的闪存控制器与电子装置中,通过建立读取成功纪录表,并随着电子装置的操作而不断更新读取成功纪录表,可以让闪存控制器快速地找到适合的读取档位,以避免现有技术中浪费许多时间在找寻适合读取档位的情形,且因此也改善了系统效能。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种闪存控制器,其中所述闪存控制器是用来存取一闪存模块,所述闪存模块包括了至少一闪存芯片,每一个闪存芯片包括了多个区块,每一个区块包括多个数据页,且所述闪存控制器的特征在于,包括有:
一只读存储器,用来存储一程序代码;以及
一微处理器,用来执行所述程序代码以控制对所述闪存模块的存取;
一缓冲存储器,用以存储了一读取重试表以及一读取成功记录表,其中所述读取重试表记录了多个读取档位,每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压;以及所述读取成功记录表记录了先前曾经被用来成功读取所述闪存模块的至少一个特定读取档位;
其中当所述微处理器需要读取所述闪存模块时,所述微处理器根据所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。
2.如权利要求1所述的闪存控制器,其特征在于,所述读取成功记录表记录了多个先前曾经被用来成功读取所述闪存模块的多个特定读取档位;以及当所述微处理器需要读取所述闪存模块时,所述微处理器先直接使用所述多个特定读取档位中的一第一特定读取档位来读取所述闪存模块,且若是所述微处理器使用所述第一特定读取档位来读取所述闪存模块时遭遇读取失败,则所述微处理器直接使用所述多个特定读取档位中的一第二特定读取档位来读取所述闪存模块。
3.如权利要求2所述的闪存控制器,其特征在于,若是所述微处理器使用所述第二特定读取档位时成功读取了所述闪存模块,则所述微处理器调整所述读取成功记录表所记录的所述多个特定读取档位的优先级,以使得所述第二特定读取档位优先于所述第一特定读取档位。
4.如权利要求3所述的闪存控制器,其特征在于,若是所述微处理器使用所述第二特定读取档位时成功读取了所述闪存模块,则所述微处理器调整所述读取成功记录表以使得所述第二特定读取档位具有最高的优先级;以及当所述微处理器需要再次读取所述闪存模块时,所述微处理器先直接使用所述第二特定读取档位来读取所述闪存模块。
5.如权利要求1、2、3或4所述的闪存控制器,其特征在于,当所述微处理器在使用所述至少一个特定读取档位的任一者都无法成功读取所述闪存模块时,所述微处理器依序使用所述读取重试表所记录的所述多个读取档位的至少一部份来读取所述闪存模块;以及当所述微处理器成功读取所述闪存模块时,所述微处理器更新所述读取成功记录表以将目前所使用的所述读取档位记录在所述读取成功记录表中。
6.如权利要求5所述的闪存控制器,其特征在于,所述当所述微处理器在使用所述至少一个特定读取档位的任一者都无法成功读取所述闪存模块时,所述微处理器依序使用所述读取重试表所记录的所述多个读取档位来读取所述闪存模块,且一旦微处理器成功读取所述闪存模块时便停止继续使用剩余的读取档位来读取所述闪存模块。
7.如权利要求5所述的闪存控制器,其特征在于,当所述微处理器成功读取所述闪存模块时,所述微处理器更新所述读取成功记录表以删除最早记录的所述特定读取档位,并将目前所使用的所述读取档位记录在所述读取成功记录表中,以作为最新的特定读取档位。
8.如权利要求1所述的闪存控制器,其特征在于,当所述微处理器需要读取所述闪存模块时,所述微处理器先使用一预设读取档位来读取所述闪存模块,以及当所述微处理器使用所述预设读取档位读取所述闪存模块遭遇失败时,所述微处理器直接根据所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。
9.如权利要求8所述的闪存控制器,其特征在于,当所述微处理器在使用所述至少一个特定读取档位的任一者都无法成功读取所述闪存模块时,所述微处理器依序使用所述读取重试表所记录的所述多个读取档位的至少一部份来读取所述闪存模块;以及当所述微处理器成功读取所述闪存模块时,所述微处理器更新所述读取成功记录表以将目前所使用的所述读取档位记录在所述读取成功记录表中。
10.如权利要求9所述的闪存控制器,其特征在于,所述当所述微处理器在使用所述至少一个特定读取档位的任一者都无法成功读取所述闪存模块时,所述微处理器依序使用所述读取重试表所记录的所述多个读取档位来读取所述闪存模块,且一旦微处理器成功读取所述闪存模块时便停止继续使用剩余的读取档位来读取所述闪存模块。
11.如权利要求9所述的闪存控制器,其特征在于,当所述微处理器成功读取所述闪存模块时,所述微处理器更新所述读取成功记录表以删除最早记录的所述特定读取档位,并将目前所使用的所述读取档位记录在所述读取成功记录表中,以作为最新的特定读取档位。
12.如权利要求8、9、10或11所述的闪存控制器,其特征在于,在所述微处理器成功读取所述闪存模块的后,所述微处理器重新分别使用所述读取重试表中所述多个读取档位来读取所述闪存模块以得到多笔数据,并对所述多笔数据进行解码,并决定出每一个数据的位错误量;以及所述微处理器将具有最低位错误量的所述笔数据所对应到的所述读取档位设为所述预设读取档位。
13.如权利要求8、9、10或11所述的闪存控制器,其特征在于,在所述微处理器成功读取所述闪存模块的后,所述微处理器判断成功读取所述闪存模块时所读取数据的位错误量或是位错误率是否高于一临界值;若是所述位错误量或是位错误率高于所述临界值,所述微处理器重新分别使用所述读取重试表中所述多个读取档位来读取所述闪存模块以得到多笔数据,并对所述多笔数据进行解码,并决定出每一个数据的位错误量;以及所述微处理器将具有最低位错误量的所述笔数据所对应到的所述读取档位设为所述预设读取档位。
14.如权利要求1所述的闪存控制器,其特征在于,所述读取成功记录表包括了多个子表、且每一个子表对应到不同型式的区块以及不同的逻辑数据页,且每一个子表均记录了至少一个特定读取档位。
15.一种存取一闪存模块的方法,其中所述闪存模块包括了至少一闪存芯片,每一个闪存芯片包括了多个区块,每一个区块包括多个数据页,且所述方法的特征在于,包括有:
提供一读取重试表,其中所述读取重试表记录了多个读取档位,每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压;
建立一读取成功记录表,其记录了先前曾经被用来成功读取所述闪存模块的至少一个特定读取档位;以及
当需要读取所述闪存模块时,使用所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。
16.如权利要求15所述的方法,其特征在于,所述读取成功记录表记录了多个先前曾经被用来成功读取所述闪存模块的多个特定读取档位,且所述方法包括有:
当需要读取所述闪存模块时,先直接使用所述多个特定读取档位中的一第一特定读取档位来读取所述闪存模块;以及
若是使用所述第一特定读取档位来读取所述闪存模块时遭遇读取失败,则直接使用所述多个特定读取档位中的一第二特定读取档位来读取所述闪存模块。
17.如权利要求15所述的方法,其特征在于,还包括有:
当使用所述至少一个特定读取档位的任一者都无法成功读取所述闪存模块时,依序使用所述读取重试表所记录的所述多个读取档位的至少一部份来读取所述闪存模块;以及
当成功读取所述闪存模块时,更新所述读取成功记录表以将目前所使用的所述读取档位记录在所述读取成功记录表中。
18.一种电子装置,其特征在于,包括有:
一闪存模块;以及
一闪存控制器,用来存取所述闪存模块,其中所述闪存控制器存储了一读取重试表,所述读取重试表记录了多个读取档位,每一个读取档位对应到至少一读取电压、且任两个读取档位不具有完全相同的读取电压;
其中所述闪存控制器另建立一读取成功记录表,其中所述读取成功记录表记录了先前曾经被用来成功读取所述闪存模块的至少一个特定读取档位;以及当所述闪存控制器需要读取所述闪存模块时,所述闪存控制器根据所述读取成功记录表所记录的所述至少一个特定读取档位来读取所述闪存模块。
19.如权利要求18所述的电子装置,其特征在于,所述读取成功记录表记录了多个先前曾经被用来成功读取所述闪存模块的多个特定读取档位;以及当所述闪存控制器需要读取所述闪存模块时,所述闪存控制器先直接使用所述多个特定读取档位中的一第一特定读取档位来读取所述闪存模块,且若是所述闪存控制器使用所述第一特定读取档位来读取所述闪存模块时遭遇读取失败,则所述闪存控制器直接使用所述多个特定读取档位中的一第二特定读取档位来读取所述闪存模块。
20.如权利要求18所述的电子装置,其特征在于,当所述闪存控制器在使用所述至少一个特定读取档位的任一者都无法成功读取所述闪存模块时,所述闪存控制器依序使用所述读取重试表所记录的所述多个读取档位的至少一部份来读取所述闪存模块;以及当所述闪存控制器成功读取所述闪存模块时,所述闪存控制器更新所述读取成功记录表以将目前所使用的所述读取档位记录在所述读取成功记录表中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109109455A TWI720852B (zh) | 2020-03-20 | 2020-03-20 | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 |
TW109109455 | 2020-03-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113495801A true CN113495801A (zh) | 2021-10-12 |
Family
ID=76035860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010399485.1A Pending CN113495801A (zh) | 2020-03-20 | 2020-05-12 | 存取闪存模块的方法及相关的闪存控制器与电子装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11249685B2 (zh) |
CN (1) | CN113495801A (zh) |
TW (1) | TWI720852B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114049910A (zh) * | 2022-01-13 | 2022-02-15 | 深圳华电通讯有限公司 | 一种nand重读档位的换挡方法、系统及相关组件 |
CN115312104A (zh) * | 2022-09-30 | 2022-11-08 | 芯天下技术股份有限公司 | 闪存芯片配置信息读取方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140047269A1 (en) * | 2012-08-07 | 2014-02-13 | Samsung Electronics Co., Ltd. | Operating method for memory system including nonvolatile ram and nand flash memory |
TW201528274A (zh) * | 2013-09-24 | 2015-07-16 | Sandisk Technologies Inc | 更新讀取電壓 |
CN106653087A (zh) * | 2015-10-28 | 2017-05-10 | 光宝电子(广州)有限公司 | 固态存储装置及其相关读取控制方法 |
US20170168894A1 (en) * | 2015-12-09 | 2017-06-15 | SK Hynix Inc. | Data storage device and operating method thereof |
CN108363544A (zh) * | 2017-01-26 | 2018-08-03 | 光宝电子(广州)有限公司 | 固态储存装置及其读取重试方法 |
US20190066802A1 (en) * | 2017-08-29 | 2019-02-28 | Ashutosh Malshe | Read voltage calibration based on host io operations |
US20190108091A1 (en) * | 2017-10-05 | 2019-04-11 | Western Digital Technologies, Inc. | Self-prioritizing adaptive retry threshold adjustment |
CN110502185A (zh) * | 2018-05-17 | 2019-11-26 | 慧荣科技股份有限公司 | 重读页面数据方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9563502B1 (en) * | 2013-12-20 | 2017-02-07 | Seagate Technology Llc | Read retry operations with read reference voltages ranked for different page populations of a memory |
US10102920B2 (en) * | 2016-08-15 | 2018-10-16 | Sandisk Technologies Llc | Memory system with a weighted read retry table |
TWI692771B (zh) * | 2017-11-14 | 2020-05-01 | 慧榮科技股份有限公司 | 用來控制一記憶裝置的運作之方法、記憶裝置及其控制器以及電子裝置 |
KR102070307B1 (ko) * | 2018-05-28 | 2020-01-23 | 에센코어 리미티드 | 저장 장치의 구동 방법 |
-
2020
- 2020-03-20 TW TW109109455A patent/TWI720852B/zh active
- 2020-05-12 CN CN202010399485.1A patent/CN113495801A/zh active Pending
- 2020-06-01 US US16/888,863 patent/US11249685B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140047269A1 (en) * | 2012-08-07 | 2014-02-13 | Samsung Electronics Co., Ltd. | Operating method for memory system including nonvolatile ram and nand flash memory |
TW201528274A (zh) * | 2013-09-24 | 2015-07-16 | Sandisk Technologies Inc | 更新讀取電壓 |
CN106653087A (zh) * | 2015-10-28 | 2017-05-10 | 光宝电子(广州)有限公司 | 固态存储装置及其相关读取控制方法 |
US20170168894A1 (en) * | 2015-12-09 | 2017-06-15 | SK Hynix Inc. | Data storage device and operating method thereof |
CN108363544A (zh) * | 2017-01-26 | 2018-08-03 | 光宝电子(广州)有限公司 | 固态储存装置及其读取重试方法 |
US20190066802A1 (en) * | 2017-08-29 | 2019-02-28 | Ashutosh Malshe | Read voltage calibration based on host io operations |
US20190108091A1 (en) * | 2017-10-05 | 2019-04-11 | Western Digital Technologies, Inc. | Self-prioritizing adaptive retry threshold adjustment |
CN110502185A (zh) * | 2018-05-17 | 2019-11-26 | 慧荣科技股份有限公司 | 重读页面数据方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114049910A (zh) * | 2022-01-13 | 2022-02-15 | 深圳华电通讯有限公司 | 一种nand重读档位的换挡方法、系统及相关组件 |
CN114049910B (zh) * | 2022-01-13 | 2022-04-22 | 深圳华电通讯有限公司 | 一种nand重读档位的换档方法、系统及相关组件 |
CN115312104A (zh) * | 2022-09-30 | 2022-11-08 | 芯天下技术股份有限公司 | 闪存芯片配置信息读取方法、装置、电子设备及存储介质 |
CN115312104B (zh) * | 2022-09-30 | 2022-12-13 | 芯天下技术股份有限公司 | 闪存芯片配置信息读取方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW202137215A (zh) | 2021-10-01 |
US20210294524A1 (en) | 2021-09-23 |
US11249685B2 (en) | 2022-02-15 |
TWI720852B (zh) | 2021-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10997065B2 (en) | Memory system and operating method thereof | |
CN110874187B (zh) | 数据储存装置与数据处理方法 | |
CN110837340B (zh) | 闪存控制器、管理闪存模块的方法及相关的电子装置 | |
CN108241473B (zh) | 存取闪存的方法及相关的控制器 | |
CN109390027B (zh) | 解码方法及相关的闪存控制器与电子装置 | |
CN115658556A (zh) | 管理闪存模块的方法及相关的闪存控制器与电子装置 | |
US11068201B2 (en) | Flash memory controller, method for managing flash memory module and associated electronic device | |
CN113495801A (zh) | 存取闪存模块的方法及相关的闪存控制器与电子装置 | |
US10809943B2 (en) | Data processing method for improving utilization rate and program time after sudden power off event and associated data storage device | |
CN111159069B (zh) | 闪存控制器、管理闪存模块的方法及相关的电子装置 | |
CN111488118B (zh) | 管理闪存模块的方法及相关的闪存控制器与电子装置 | |
CN113903383A (zh) | 存储装置、快闪存储器控制器及其存取方法 | |
CN113886279A (zh) | 电子装置、快闪存储器控制器及模块进行垃圾收集操作的方法 | |
US11487655B2 (en) | Method for managing flash memory module and associated flash memory controller and electronic device based on timing of dummy read operations | |
US11687290B1 (en) | Method for improve read disturbance phenomenon of flash memory module and associated flash memory controller and electronic device | |
TWI781886B (zh) | 管理快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
US11249676B2 (en) | Electronic device, flash memory controller and associated control method | |
TWI769100B (zh) | 管理快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
EP4369184A1 (en) | Storage device and method thereof | |
CN116737059A (zh) | 快闪存储器控制器的控制方法、快闪存储器控制器以及电子装置 | |
CN115701638A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20211012 |
|
WD01 | Invention patent application deemed withdrawn after publication |