CN111581120B - 电子设备和管理闪存的读取电平的方法 - Google Patents
电子设备和管理闪存的读取电平的方法 Download PDFInfo
- Publication number
- CN111581120B CN111581120B CN202010380600.0A CN202010380600A CN111581120B CN 111581120 B CN111581120 B CN 111581120B CN 202010380600 A CN202010380600 A CN 202010380600A CN 111581120 B CN111581120 B CN 111581120B
- Authority
- CN
- China
- Prior art keywords
- flash memory
- read
- data
- recently programmed
- microcontroller
- 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
- 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
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- 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
- 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/5628—Programming or writing circuits; Data input circuits
-
- 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
-
- 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/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
Abstract
提供了一种包括闪存和闪存控制器的电子设备。闪存控制器耦合到闪存,并用于管理对闪存的数据存取。闪存控制器包括定时器、存储器和耦合到定时器和存储器的微控制器。定时器用于产生时钟中断。存储器用于在预定时间段内保持被编程到闪存中的数据的条目列表。在每个时钟中断时,微控制器用于写入被编程到闪存中的数据的条目以更新条目列表。
Description
本申请是申请日为2019年4月30日,名称为“电子设备和管理闪存的读取电平的方法”,申请号为201980000771.1的发明专利申请的分案申请。
技术领域
本发明涉及半导体存储器,并且具体涉及管理闪存的读取电平的电子设备和方法。
背景技术
闪存被广泛用于移动设备和消费电子产品中的非易失性数据存储。闪存通过将存储器单元编程到不同的阈值电压电平来将数据存储在存储器单元的阵列中。在单级单元(SLC,single level cell)闪存中,存储器单元具有两个可能的标称阈值电压电平,并且在2位多级单元(MLC,multi-level cell)闪存中,存储器单元具有四个可能的标称阈值电压电平。闪存可以采用对应于不同阈值电压电平的若干读取电平来从存储器单元读取数据。
闪存可以通过浮栅技术或电荷捕获技术来实现。浮栅闪存可以将电荷存储在隔离的多晶硅导电层中,并且电荷捕获闪存可以将电荷保持俘获在非导电氮化硅绝缘层中。在过去几年中,由于降低了制造成本并提高了写入耐久性,电荷捕获闪存已经越过浮栅闪存得到普及。然而,电荷捕获闪存存在快速的初始电荷损失问题,其中浅捕获电荷在编程后几秒内从闪存单元中逸出,导致电荷随时间泄漏。因此,使用默认读取电平可能无法准确读取闪存单元中的数据,导致渐进的保持损失和读取性能的逐渐降低。
因此,需要一种具有可靠读取性能和简单电路结构的闪存器件。
发明内容
在本发明的一个实施例中,提供了一种包括闪存和闪存控制器的电子设备。闪存控制器耦合到闪存,并用于管理对闪存的数据存取。闪存控制器包括定时器、存储器和耦合到定时器和存储器的微控制器。定时器用于产生时钟中断。存储器用于在预定时间段内保持被编程到闪存中的数据的条目列表。在每个时钟中断时,微控制器用于写入被编程到闪存中的数据的条目以更新条目列表。
在本发明的另一个实施例中,公开了一种管理闪存的读取电平的方法。该方法由包括闪存和与闪存耦合的闪存控制器的电子设备采用。闪存控制器包括定时器、存储器和微控制器。该方法包括定时器产生时钟中断,存储器在预定的时间段内保持被编程到闪存中的数据的条目列表,并且在每个时钟中断时,微控制器写入被编程到闪存中的数据的条目以更新条目列表。
在阅读了在各个图和图示中示出的优选实施例的以下详细描述之后,对本领域技术人员来说,本发明的这些和其他目的无疑将变得显而易见。
附图说明
结合在此并形成申请文件的部分的附图示出了本公开的实施例,并且与说明书一起进一步用于解释本公开的原理并使得相关领域的技术人员能够实现和使用本公开。
图1示出了初始保持时段中的存储器单元组的阈值电压分布。
图2示出了在初始保持时段之后的存储器单元组的阈值电压分布。
图3是根据本发明的实施例的电子设备的框图。
图4示出了图3中的电子设备采用的正常读取操作的时序图。
图5示出了图3中的电子设备采用的最近编程的读取操作的时序图。
图6是并入于图3中的闪存中的多路复用器的示意图。
图7示出了图3中的最近编程的页面池的示例性数据结构。
图8是并入于图3中的电子设备中的程序顺序标签管理(program order tagmanagement)过程的流程图。
图9是图3中的电子设备采用的读取电平管理方法的流程图。
具体实施方式
在本发明中,在存储器单元被编程之后的不同时间段,使用不同的读取电平来从存储器单元读取数据,从而解决快速初始电荷损失问题并提供可靠的读取操作。
图1和2描绘了根据本发明的实施例的管理闪存器件中的存储器单元组的读取电平的原理。特别地,图1示出了用于在编程之后的初始保持时段中使用的阈值电压分布10n和10(n+1)以及最近编程的读取电平Vrdn和Vrd(n+1),阈值电压分布10n和10(n+1)分别表示在状态n和(n+1)下存储器单元组的阈值电压Vt的分布,并且最近编程的读取电平Vrdn和Vrd(n+1)分别表示用于读取存储器单元组的状态n和(n+1)的读取电平。同样,图2示出了用于初始保持时间段之后的阈值电压分布12n和12(n+1)以及默认读取电平Vrdn'和Vrd(n+1)',阈值电压分布12n和12(n+1)分别表示在状态n和(n+1)下存储器单元组的阈值电压Vt的分布,并且默认读取电平Vrdn'和Vrd(n+1)'分别表示用于读取存储器单元组的状态n和(n+1)的读取电平。
由于存储器单元的特性的差异,诸如硅结构中的缺陷或杂质浓度的变化,存储器单元组表现出阈值电压分布10n、10(n+1)、12n、12(n+1)。最近编程的读取电平Vrdn和Vrd(n+1)被设定为在阈值电压分布10n和10(n+1)之间进行区分,并且类似地,默认读取电平Vrdn'和Vrd(n+1)'被设定为在阈值电压分布12n和12(n+1)之间进行区分。数据检索是通过将读取电平Vrdn、Vrd(n+1)、Vrdn'或Vrd(n+1)'施加到存储器单元组来实现。例如,当最近编程的读取电平Vrd(n+1)被施加到存储器单元组时,状态n中的存储器单元将产生源电流,因为最近编程的读取电平Vrd(n+1)超过阈值电压分布10n中的阈值电压Vt,并且状态(n+1)中的存储器单元将不产生源电流,因为最近编程的读取电平Vrd(n+1)小于阈值电压分布10(n+1)中的阈值电压Vt。结果,通过感测源电流,可以将存储器单元中保持的数据识别为处于状态n或状态(n+1)中。
图1和2示出了阈值电压分布随时间的漂移。在初始保持时段消逝之后,阈值电压分布10n和10(n+1)向左漂移以产生阈值电压分布12n和12(n+1)。相应地,读取电平适于补偿阈值电压分布的漂移。具体地,默认读取电平Vrdn'或Vrd(n+1)'分别被设定为比最近编程的读取电平Vrdn和Vrd(n+1)低。因此,在初始保持时段期间,可以采用较高的最近编程的读取电平Vrdn和Vrd(n+1)来读取数据,并且在初始保持时段过去之后,可以采用较低的默认读取电平Vrdn'或Vrd(n+1)'来读取数据,从而保证了用于存储器单元的充分时间的数据保持。
可以通过图3中的电子设备3来实现如图1和2中描画的随时间的读取电平适应。电子设备3包括闪存控制器30、物理层收发器32和闪存34。闪存控制器30经由物理层收发器32耦合到闪存34。闪存34包括多个页面340至34n,并且每个页面340至34n包含多个存储器单元,该多个存储器单元布置成阵列用于数据存储。存储器单元可以是单级单元(SLC)或多级单元(MLC)。闪存控制器30可以控制对闪存34的数据存取并管理用于从闪存34读取数据的读取电平。物理层收发器32可以对闪存控制器30和闪存34之间的数据传输进行对接。闪存控制器30包括定时器300、微控制器302、直接存储器存取(DMA)304和存储器306。定时器300顺序地耦合到微控制器302、DMA 304,然后耦合到存储器306。
定时器300可以产生时钟中断并将其发送到微控制器302以执行需要周期性地处理的任务。例如,定时器300可以每秒产生时钟中断。存储器306可以在预定时间段内保持被编程到闪存34中的数据的条目列表3060,在一些实施例中,条目列表3060被称为最近编程的页面(RPP)池。在每个时钟中断时,微控制器302可以写入正被编程到闪存34中的数据的条目以更新条目列表3060。DMA 304可以在微控制器302和存储器306之间传递数据的条目。
微控制器302可以检查条目列表3060以确定要读取的数据是否处于初始保持时段中,并相应地设定对应的读取电平。在一些实施例中,微控制器302可以采用设定(SET)特征来飞行(on the fly)设定闪存34处的读取电平,并指示闪存34使用设定的读取电平来读取数据。在其他实施例中,最近编程的读取电平3400和默认读取电平3402可以被预设定并存储在诸如闪存34中的页面340的预定页面中,并且微控制器302可以指示存储器34使用最近编程的读取电平3400和默认读取电平3402中的一个来读取数据。通常,预设读取电平方法在时间上比飞行设定方法(the set on the fly method)更有效,并将在下面的部分中更详细介绍。具体地,在从闪存34读取数据之前,微控制器302可以从存储器306读取条目列表3060。当数据与条目列表3060中的条目匹配时,微控制器302可以将指示正被读取的数据是最近编程的数据的最近编程的读取命令发送到闪存34并指示闪存34执行最近编程的读取操作,并且当数据不匹配条目列表3060中的条目时,微控制器302可以指示闪存34执行正常读取操作。最近编程的数据被定义为编程之后的初始保持时段中的数据。最近编程的读取操作是采用最近编程的读取电平3400的读取操作,并且正常读取操作是采用默认读取电平3402的读取操作。最近编程的读取电平3400可以超过默认读取电平3402。
闪存34可以是NAND闪存或NOR闪存,并且闪存控制器30可以是NAND闪存控制器或NOR闪存控制器。此外,尽管在电子设备3中仅使用两个读取电平,但是对于本领域技术人员来说显而易见的是,电子设备3可以采用两个以上的读取电平来应对阈值电压随时间的漂移。
图4和5分别示出了电子设备3采用的正常读取操作和最近编程的读取操作的时序图,并且每个时序图包括数据类型信号Styp、数据信号DQ[7:0]和就绪/忙碌信号R/B_n。对于正常读取操作,就绪/忙碌信号R/B_n被设定为就绪,并且由一系列地址跟随的读取命令被从微控制器302发送到闪存34。当接收到读取命令而不是最近编程的读取命令时,闪存34可以使用默认读取电平3402来获取其中的数据。通过在数据类型信号Styp中发送命令CMD并在数据信号DQ[7:0]中发送数据00h来发送读取命令。通过在数据类型信号Styp中发送命令CMD并在数据信号DQ[7:0]中发送数据2Bh来发送最近编程的读取命令。地址的序列指定在闪存34中的数据的位置。在逻辑高状态时,就绪/忙碌信号R/B_n被设定为就绪。对于最近编程的读取操作,就绪/忙碌信号R/B_n被设定为就绪,并且地址序列和由读取命令跟随的最近编程的读取命令被从微控制器302发送到闪存34,当接收到读取命令和最近编程的读取命令时,闪存34可以使用最近编程的读取电平3400来获取其中的数据。
图6是结合在闪存34中的多路复用器6的示意图。多路复用器6耦合到闪存34的页面340,以根据来自微处理器302的最近编程的读取命令在最近编程的读取电平3400和默认读取电平3402之间进行选择。当接收到最近编程的读取命令时,多路复用器6可以选择最近编程的读取电平3400作为用于从指定地址读取数据的读取电平lrd。当未接收到最近编程的读取命令时,多路复用器6可以选择默认读取电平3402作为用于从指定地址读取数据的读取电平lrd。
图7示出了图3中的条目列表3060的示例性数据结构。在一些实施例中,条目列表3060可以包含预定数量的条目,诸如10个条目,并且微控制器302可以每秒更新条目列表3060。也就是说,条目列表3060中的每个条目具有预定寿命,例如10秒。此外,每个条目可以由程序顺序标签(POT)索引,并且根据在时钟中断之间被编程到闪存34中的数据量,包含任何数量的子条目。图4示出了由POT(i+1)、POT(i)和POT(i-1)索引的3个条目,条目POT(i+1)是最新的条目,并且条目POT(i-1)是最早的条目。当在时钟中断之间没有编程数据时,微处理器304可以通过不输入条目和移除在条目列表3060的底部的过期条目POTxpr来更新条目列表3060,并且当在时钟中断之间编程两条数据时,微处理器304可以通过将包含两个子条目的最新条目POT(i+1)添加到条目列表3060的顶部并且移除在条目列表3060的底部的过期条目POTxpr来更新条目列表3060。过期条目POTxpr是已经保持在条目列表3060中达预定的过期时段(例如10秒)的条目。每个子条目可以包括与闪存34中的一条数据相对应的逻辑单元号(LUN)地址和/或块地址72、起始页面地址74‘’结束页面地址76和数据状态70。数据状态指示子条目的数据有效性,并且LUN地址和/或块地址72、起始页面地址74和结束页面地址76用于寻址闪存34中的对应条数据。
图8是微控制器302采用的程序顺序标签(POT)管理方法8的流程图。POT管理方法8用于产生条目列表3060。任何合理的步骤改变或调整都在本公开的范围内。POT管理方法8包括如下步骤S800至S806:
步骤S800:闪存控制器30通电;
步骤S802:微控制器302重置POT;
步骤S804:微控制器302确定POT是否小于目标保持计数Ct,如果是,则转到步骤S806,并且如果否,转到步骤S802;
步骤S806:微控制器302在每个时钟中断时递增POT。
在闪存控制器30通电时(S800),微控制器320将POT重置为预定义值,例如0(S802),并确定POT是否小于目标保持计数Ct,例如9(S804)。当POT小于目标保持计数Ct时,微控制器302将POT与正被编程的数据的条目相关联,并将该条目保存到条目列表3060中,并在每个时钟中断时递增POT(S806)。当POT等于目标保持计数时,微控制器302将POT与正被编程的数据的条目相关联,并将该条目保存到条目列表3060中并在时钟中断时重置POT(S802)。
图9是电子设备3采用的读取电平管理方法9的流程图。读取电平管理方法9用于管理用于在初始保持时段中和初始保持时段之后读取数据的读取电平,并包括步骤S900至S908,其中步骤S900至S904用于创建最近编程的数据的条目列表3060,并且步骤S906和S908用于产生最近编程的读取命令,以便管理用于从闪存34读取数据的读取电平。任何合理的步骤改变或调整都在本公开的范围内。读取电平管理方法9概述如下:
步骤S900:定时器300产生时钟中断;
步骤S902:存储器306在预定时间段内保持被编程到闪存34中的数据的条目列表3060;
步骤S904:在每个时钟中断时,微控制器302写入正被编程到闪存34中的数据的条目以更新条目列表3060;
步骤S906:微控制器302在从闪存34读取数据之前从存储器306读取条目列表3060;
步骤S908:当数据与条目列表3060中的条目匹配时,微控制器302向闪存34发送最近编程的读取命令。
步骤S900至S908的说明在前面的段落中提供,并且为简洁起见,这里将省略。
如前面段落中所讨论的,电子设备3和读取电平管理方法9使用简单的电路结构和控制机构提供可靠的读取性能。
本领域技术人员将容易地观察到,可以在保持本发明的教导的同时对装置和方法进行多种修改和更改。因此,上述公开应被解释为仅受所附权利要求的范围和界限的限制。
Claims (16)
1.一种电子设备,包括:
闪存;以及
耦合到所述闪存的闪存控制器,被配置为管理对所述闪存的数据存取,并且包括:
定时器,被配置为产生时钟中断;
存储器,被配置为在预定时间段内保持被编程到所述闪存中的数据的条目列表;以及
微控制器,耦合到所述定时器和所述存储器,并且被配置为在每个时钟中断时写入正被编程到所述闪存中的数据的条目以更新所述条目列表,
其中,所述微控制器被配置为指示所述闪存执行读取操作,所述读取操作是在编程之后的初始保持时段中进行的最近编程的读取操作或在所述初始保持时段之后进行的正常读取操作,其中,执行所述最近编程的读取操作的读取电平超过执行所述正常读取操作的读取电平,
其中,所述微控制器还被配置为在从所述闪存读取数据之前从所述存储器读取所述条目列表,并且当所述数据与所述条目列表中的条目匹配时,将指示正被读取的数据是最近编程的数据的最近编程的读取命令发送到所述闪存并指示所述闪存执行所述最近编程的读取操作,并且当所述数据与所述条目列表中的所述条目不匹配时,将指示所述闪存执行所述正常读取操作,所述最近编程的数据被定义为编程之后的所述初始保持时段中的数据,所述最近编程的读取操作是采用最近编程的读取电平的读取操作,并且所述正常读取操作是采用默认读取电平的读取操作,所述最近编程的读取电平超过所述默认读取电平。
2.如权利要求1所述的电子设备,其中,在读取命令之前发送所述最近编程的读取命令,并且所述读取命令用于指示所述闪存获取其中的数据。
3.如权利要求2所述的电子设备,其中,所述闪存被配置为:存储所述最近编程的读取电平和所述默认读取电平;当接收到所述读取命令和所述最近编程的读取命令时,使用所述最近编程的读取电平来读取数据;并在接收到所述读取命令而不是所述最近编程的读取命令时,使用所述默认读取电平来读取数据。
4.如权利要求3所述的电子设备,其中,所述闪存包括耦合到所述闪存控制器的多路复用器,并且被配置为根据所述最近编程的读取命令在所述最近编程的读取电平和所述默认读取电平之间进行选择。
5.如权利要求1所述的电子设备,其中,所述微控制器还被配置为重置程序顺序标签,并且当所述程序顺序标签小于目标保持计数时,将所述程序顺序标签与所述条目相关联并在每个时钟中断时递增所述程序顺序标签。
6.如权利要求5所述的电子设备,其中,当所述程序顺序标签等于所述目标保持计数时,所述微控制器还被配置为将所述程序顺序标签与所述条目相关联,并在时钟中断时重置所述程序顺序标签。
7.如权利要求1所述的电子设备,其中,所述条目列表中的每个条目包括与所述闪存中的一条数据相对应的逻辑单元号地址、块地址、起始页面地址和结束页面地址。
8.如权利要求1所述的电子设备,其中,所述闪存控制器还包括直接存储器存取(DMA)控制器,所述直接存储器存取(DMA)控制器耦合在所述微控制器和所述存储器之间,并被配置为在所述微控制器和所述存储器之间传递数据的条目。
9.一种管理闪存的读取电平的方法,由包括所述闪存和耦合到所述闪存的闪存控制器的电子设备采用,所述闪存控制器包括定时器、存储器和微控制器,所述方法包括:
所述定时器产生时钟中断;
所述存储器在预定时间段内保持被编程到所述闪存中的数据的条目列表;以及
在每个时钟中断时,所述微控制器写入正被编程到所述闪存中的数据的条目以更新所述条目列表,
其中,所述微控制器被配置为指示所述闪存执行读取操作,所述读取操作是在编程之后的初始保持时段中进行的最近编程的读取操作或在所述初始保持时段之后进行的正常读取操作,其中,执行所述最近编程的读取操作的读取电平超过执行所述正常读取操作的读取电平,
其中,在从所述闪存读取数据之前,所述微控制器从所述存储器读取所述条目列表,以及当所述数据与所述条目列表中的条目匹配时,所述微控制器向所述闪存发送指示正被读取的数据是最近编程的数据的最近编程的读取命令并指示所述闪存执行所述最近编程的读取操作,并且当所述数据与所述条目列表中的所述条目不匹配时,将指示所述闪存执行所述正常读取操作,所述最近编程的数据被定义为编程之后的所述初始保持时段中的数据,所述最近编程的读取操作是采用最近编程的读取电平的读取操作,并且所述正常读取操作是采用默认读取电平的读取操作,所述最近编程的读取电平超过所述默认读取电平。
10.如权利要求9所述的方法,其中,在读取命令之前发送所述最近编程的读取命令,并且所述读取命令用于指示所述闪存获取其中的数据。
11.如权利要求10所述的方法,还包括:
所述闪存存储所述最近编程的读取电平和所述默认读取电平;
在接收到所述读取命令和所述最近编程的读取命令时,所述闪存使用所述最近编程的读取电平读取数据;以及
在接收到所述读取命令而不是所述最近编程的读取命令时,所述闪存使用所述默认读取电平读取数据。
12.如权利要求11所述的方法,其中,所述闪存包括耦合到所述闪存控制器的多路复用器,并且所述方法还包括所述多路复用器根据所述最近编程的读取命令在所述最近编程的读取电平和所述默认读取电平之间进行选择。
13.如权利要求9所述的方法,还包括:
所述微控制器重置程序顺序标签;以及
当所述程序顺序标签小于目标保持计数时,所述微控制器将所述程序顺序标签与所述条目相关联,并在每个时钟中断时递增所述程序顺序标签。
14.如权利要求13所述的方法,还包括:
当所述程序顺序标签等于所述目标保持计数时,所述微控制器将所述程序顺序标签与所述条目相关联,并在时钟中断时重置所述程序顺序标签。
15.如权利要求9所述的方法,其中,所述条目列表中的每个条目包括所述闪存中的对应数据的逻辑单元号地址、起始页面地址和结束页面地址。
16.如权利要求9所述的方法,其中,所述闪存控制器还包括耦合在所述微控制器和所述存储器之间的直接存储器存取(DMA)控制器,并且所述方法还包括所述DMA控制器在所述微控制器和所述存储器之间传递所述列表中的数据的条目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010380600.0A CN111581120B (zh) | 2019-04-30 | 2019-04-30 | 电子设备和管理闪存的读取电平的方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/085141 WO2020220246A1 (en) | 2019-04-30 | 2019-04-30 | Electronic apparatus and method of managing read levels of flash memory |
CN202010380600.0A CN111581120B (zh) | 2019-04-30 | 2019-04-30 | 电子设备和管理闪存的读取电平的方法 |
CN201980000771.1A CN110235111B (zh) | 2019-04-30 | 2019-04-30 | 电子设备和管理闪存的读取电平的方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980000771.1A Division CN110235111B (zh) | 2019-04-30 | 2019-04-30 | 电子设备和管理闪存的读取电平的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111581120A CN111581120A (zh) | 2020-08-25 |
CN111581120B true CN111581120B (zh) | 2021-08-17 |
Family
ID=67855283
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980000771.1A Active CN110235111B (zh) | 2019-04-30 | 2019-04-30 | 电子设备和管理闪存的读取电平的方法 |
CN202010380600.0A Active CN111581120B (zh) | 2019-04-30 | 2019-04-30 | 电子设备和管理闪存的读取电平的方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980000771.1A Active CN110235111B (zh) | 2019-04-30 | 2019-04-30 | 电子设备和管理闪存的读取电平的方法 |
Country Status (7)
Country | Link |
---|---|
US (2) | US11016705B2 (zh) |
EP (1) | EP3891614B1 (zh) |
JP (1) | JP2022522437A (zh) |
KR (1) | KR20210118453A (zh) |
CN (2) | CN110235111B (zh) |
TW (1) | TWI693601B (zh) |
WO (1) | WO2020220246A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022522437A (ja) * | 2019-04-30 | 2022-04-19 | 長江存儲科技有限責任公司 | コントローラ、機器および方法 |
CN112802527B (zh) * | 2021-04-14 | 2021-07-02 | 上海灵动微电子股份有限公司 | 嵌入式闪存高速编程的实现方法、嵌入式闪存的编程系统 |
TWI751093B (zh) * | 2021-07-30 | 2021-12-21 | 十銓科技股份有限公司 | 記憶體分級方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101884033A (zh) * | 2007-08-31 | 2010-11-10 | 提琴存储器公司 | 存储器功率管理 |
CN108595124A (zh) * | 2018-04-27 | 2018-09-28 | 江苏华存电子科技有限公司 | 一种提升多颗闪存平行写入校能的管理方法 |
CN108701088A (zh) * | 2016-04-01 | 2018-10-23 | 英特尔公司 | 用于延迟低开销同步页表更新的设备和方法 |
Family Cites Families (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6279153B1 (en) * | 1995-10-16 | 2001-08-21 | Nec Corporation | Multi-user flash ROM update |
DE19544571A1 (de) * | 1995-11-30 | 1997-06-05 | Sel Alcatel Ag | Verfahren und Vorrichtung zum Programmieren eines Flash-EEProms |
US5956743A (en) * | 1997-08-25 | 1999-09-21 | Bit Microsystems, Inc. | Transparent management at host interface of flash-memory overhead-bytes using flash-specific DMA having programmable processor-interrupt of high-level operations |
US6032248A (en) * | 1998-04-29 | 2000-02-29 | Atmel Corporation | Microcontroller including a single memory module having a data memory sector and a code memory sector and supporting simultaneous read/write access to both sectors |
US7599753B2 (en) * | 2000-09-23 | 2009-10-06 | Microsoft Corporation | Systems and methods for running priority-based application threads on a realtime component |
US6349056B1 (en) * | 2000-12-28 | 2002-02-19 | Sandisk Corporation | Method and structure for efficient data verification operation for non-volatile memories |
US7139864B2 (en) | 2003-12-30 | 2006-11-21 | Sandisk Corporation | Non-volatile memory and method with block management system |
US20070150881A1 (en) * | 2005-12-22 | 2007-06-28 | Motorola, Inc. | Method and system for run-time cache logging |
JP4896605B2 (ja) * | 2006-07-04 | 2012-03-14 | 株式会社東芝 | 不揮発性半導体記憶システム |
US7646636B2 (en) | 2007-02-16 | 2010-01-12 | Mosaid Technologies Incorporated | Non-volatile memory with dynamic multi-mode operation |
US8127199B2 (en) * | 2007-04-13 | 2012-02-28 | Rgb Networks, Inc. | SDRAM convolutional interleaver with two paths |
JP5165980B2 (ja) * | 2007-09-25 | 2013-03-21 | シチズン時計株式会社 | 読み出し電圧発生装置 |
JP4951493B2 (ja) * | 2007-12-21 | 2012-06-13 | 株式会社日立製作所 | ディスクアレイ装置 |
JP2009230425A (ja) * | 2008-03-21 | 2009-10-08 | Toyota Motor Corp | 情報処理装置 |
US8205037B2 (en) * | 2009-04-08 | 2012-06-19 | Google Inc. | Data storage device capable of recognizing and controlling multiple types of memory chips operating at different voltages |
US8200857B2 (en) * | 2009-11-30 | 2012-06-12 | Lsi Corporation | Coalescing multiple contexts into a single data transfer in a media controller architecture |
JP5556405B2 (ja) * | 2009-10-19 | 2014-07-23 | 株式会社リコー | 電源制御装置、画像形成装置および電源制御方法 |
EP2339476B1 (en) * | 2009-12-07 | 2012-08-15 | STMicroelectronics (Research & Development) Limited | Interface connecting dies in an IC package |
WO2011097592A1 (en) * | 2010-02-07 | 2011-08-11 | Zeno Semiconductor , Inc. | Semiconductor memory device having electrically floating body transistor, and having both volatile and non-volatile functionality and method |
WO2012001917A1 (ja) * | 2010-06-29 | 2012-01-05 | パナソニック株式会社 | 不揮発性記憶システム、メモリシステム用の電源回路、フラッシュメモリ、フラッシュメモリコントローラ、および不揮発性半導体記憶装置 |
CN103221927A (zh) * | 2010-11-24 | 2013-07-24 | 索尼爱立信移动通讯有限公司 | 用于电子设备的可动态配置的嵌入式闪存 |
WO2012082792A2 (en) * | 2010-12-13 | 2012-06-21 | Fusion-Io, Inc. | Apparatus, system, and method for auto-commit memory |
EP2549482B1 (en) * | 2011-07-22 | 2018-05-23 | SanDisk Technologies LLC | Apparatus, system and method for determining a configuration parameter for solid-state storage media |
US9588883B2 (en) * | 2011-09-23 | 2017-03-07 | Conversant Intellectual Property Management Inc. | Flash memory system |
US9645177B2 (en) * | 2012-05-04 | 2017-05-09 | Seagate Technology Llc | Retention-drift-history-based non-volatile memory read threshold optimization |
US9575884B2 (en) * | 2013-05-13 | 2017-02-21 | Qualcomm Incorporated | System and method for high performance and low cost flash translation layer |
US10475523B2 (en) * | 2013-05-31 | 2019-11-12 | Western Digital Technologies, Inc. | Updating read voltages triggered by the rate of temperature change |
KR102187643B1 (ko) * | 2013-12-04 | 2020-12-08 | 삼성전자주식회사 | 메모리 시스템 및 그것을 포함하는 유저 장치 |
US9633740B1 (en) * | 2016-02-11 | 2017-04-25 | Seagate Technology Llc | Read retry operations where likelihood value assignments change sign at different read voltages for each read retry |
US9952987B2 (en) * | 2014-11-25 | 2018-04-24 | Intel Corporation | Posted interrupt architecture |
US10002102B2 (en) * | 2015-03-13 | 2018-06-19 | Microchip Technology Incorporated | Low-pin microcontroller device with multiple independent microcontrollers |
CN115100016A (zh) * | 2015-06-10 | 2022-09-23 | 无比视视觉技术有限公司 | 用于处理图像的图像处理器和方法 |
US20170123796A1 (en) * | 2015-10-29 | 2017-05-04 | Intel Corporation | Instruction and logic to prefetch information from a persistent memory |
TWI604308B (zh) * | 2015-11-18 | 2017-11-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料維護方法 |
US9983833B2 (en) * | 2015-12-23 | 2018-05-29 | Toshiba Memory Corporation | Solid state drive with holding file for atomic updates |
US10248186B2 (en) | 2016-06-10 | 2019-04-02 | Microsoft Technology Licensing, Llc | Processor device voltage characterization |
US10324872B2 (en) * | 2016-09-20 | 2019-06-18 | Intel IP Corporation | Interrupt-vector translation lookaside buffer |
CN107506309B (zh) * | 2017-06-30 | 2020-05-19 | 深圳市硅格半导体有限公司 | 终端及闪存数据写入方法和计算机可读存储介质 |
US10922220B2 (en) | 2017-07-01 | 2021-02-16 | Intel Corporation | Read and program operations in a memory device |
CN107391392A (zh) * | 2017-07-21 | 2017-11-24 | 重庆大学 | 一种基于闪存存储设备并行特征的垃圾回收优化方法 |
KR102244921B1 (ko) * | 2017-09-07 | 2021-04-27 | 삼성전자주식회사 | 저장 장치 및 그 리프레쉬 방법 |
JP2019149219A (ja) * | 2018-02-28 | 2019-09-05 | 東芝メモリ株式会社 | メモリシステム |
US11003587B2 (en) * | 2018-05-03 | 2021-05-11 | SK Hynix Inc. | Memory system with configurable NAND to DRAM ratio and method of configuring and using such memory system |
CN109101437A (zh) * | 2018-07-20 | 2018-12-28 | 浪潮电子信息产业股份有限公司 | 一种数据存储方法与终端 |
CN109313608B (zh) * | 2018-09-19 | 2023-05-02 | 深圳市汇顶科技股份有限公司 | 图像校验系数的读取方法、闪存控制器、系统及存储介质 |
JP2022522437A (ja) * | 2019-04-30 | 2022-04-19 | 長江存儲科技有限責任公司 | コントローラ、機器および方法 |
-
2019
- 2019-04-30 JP JP2021549868A patent/JP2022522437A/ja active Pending
- 2019-04-30 KR KR1020217027071A patent/KR20210118453A/ko not_active Application Discontinuation
- 2019-04-30 CN CN201980000771.1A patent/CN110235111B/zh active Active
- 2019-04-30 EP EP19926875.6A patent/EP3891614B1/en active Active
- 2019-04-30 WO PCT/CN2019/085141 patent/WO2020220246A1/en unknown
- 2019-04-30 CN CN202010380600.0A patent/CN111581120B/zh active Active
- 2019-06-10 TW TW108119993A patent/TWI693601B/zh active
- 2019-06-11 US US16/438,386 patent/US11016705B2/en active Active
-
2021
- 2021-04-21 US US17/235,935 patent/US11567701B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101884033A (zh) * | 2007-08-31 | 2010-11-10 | 提琴存储器公司 | 存储器功率管理 |
CN108701088A (zh) * | 2016-04-01 | 2018-10-23 | 英特尔公司 | 用于延迟低开销同步页表更新的设备和方法 |
CN108595124A (zh) * | 2018-04-27 | 2018-09-28 | 江苏华存电子科技有限公司 | 一种提升多颗闪存平行写入校能的管理方法 |
Also Published As
Publication number | Publication date |
---|---|
US11567701B2 (en) | 2023-01-31 |
US11016705B2 (en) | 2021-05-25 |
TW202042238A (zh) | 2020-11-16 |
CN110235111A (zh) | 2019-09-13 |
TWI693601B (zh) | 2020-05-11 |
WO2020220246A1 (en) | 2020-11-05 |
CN110235111B (zh) | 2020-06-26 |
KR20210118453A (ko) | 2021-09-30 |
EP3891614A4 (en) | 2022-07-27 |
CN111581120A (zh) | 2020-08-25 |
EP3891614B1 (en) | 2023-06-21 |
US20200348885A1 (en) | 2020-11-05 |
EP3891614A1 (en) | 2021-10-13 |
JP2022522437A (ja) | 2022-04-19 |
US20210240397A1 (en) | 2021-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10109357B2 (en) | Memory refresh methods and apparatuses | |
US11567701B2 (en) | Electronic apparatus and method of managing read levels of flash memory | |
TWI413125B (zh) | 使用初期資料之非揮發性記憶體之管線式程式化 | |
US8111554B2 (en) | Starting program voltage shift with cycling of non-volatile memory | |
US11915759B2 (en) | Memory system for restraining threshold variation to improve data reading | |
US20150160857A1 (en) | Lower Page Only Host Burst Writes | |
US9384839B2 (en) | Write sequence providing write abort protection | |
US20050174850A1 (en) | Method for erasing an NROM cell | |
KR101668340B1 (ko) | Nand형 플래시 메모리 및 그의 프로그래밍 방법 | |
US9262315B2 (en) | Uneven wear leveling in analog memory devices |
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 |