CN101866692A - 用于写入和擦除非易失性存储器的方法 - Google Patents

用于写入和擦除非易失性存储器的方法 Download PDF

Info

Publication number
CN101866692A
CN101866692A CN201010148434A CN201010148434A CN101866692A CN 101866692 A CN101866692 A CN 101866692A CN 201010148434 A CN201010148434 A CN 201010148434A CN 201010148434 A CN201010148434 A CN 201010148434A CN 101866692 A CN101866692 A CN 101866692A
Authority
CN
China
Prior art keywords
time cycle
write operation
milliseconds
nonvolatile memory
approximately
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
Application number
CN201010148434A
Other languages
English (en)
Other versions
CN101866692B (zh
Inventor
J·鲁德利克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NUMONYX BV
Micron Technology Inc
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CN101866692A publication Critical patent/CN101866692A/zh
Application granted granted Critical
Publication of CN101866692B publication Critical patent/CN101866692B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Storage Device Security (AREA)

Abstract

描述了用于写入和擦除非易失性存储器的方法。所述方法包括确定所述非易失性存储器的n个写操作中所使用的命令窗的大小,每个写操作具有相同的时间周期。用因子n来分割长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期。该方法还包括对非易失性存储器执行n个命令,每个命令由n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成。一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于命令窗的大小。

Description

用于写入和擦除非易失性存储器的方法
技术领域
本发明的实施方式属于非易失性存储器领域,特别地,属于用于写入和擦除非易失性存储器的计算机实施方法。
背景技术
若干非易失性存储器应用(诸如高密度用户识别模块(HD-SIM)卡),具有严格程度明显低于典型闪存设备(例如,“或非”(NOR)设备)的时序的命令时序的擦除操作。另外,在一些应用中,在闪存命令之间移除了对相关闪存设备的供电,从而几乎没有机会执行如同许多应用所通常执行的操作那样的后台擦除操作。已经尝试降低NOR擦除时间来使得NOR存储器更适用于诸如HD-SIM卡这样的应用。然而,在写入和擦除非易失性存储器(诸如NOR闪存存储器)的方法的演进中需要其他的改进。
发明内容
本文公开的是用于写入和擦除非易失性存储器的计算机实施方法。在一个实施方式中,该方法包括确定非易失性存储器的n个写操作中所使用的命令窗的大小,每个写操作具有相同的时间周期。可用因子n来分割长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期。该方法还包括对非易失性存储器执行n个命令,每个命令由n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成。一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于命令窗的大小。在另一实施方式中,用于写入和擦除非易失性存储器的计算机实施方法包括动态地确定非易失性存储器的n个写操作中所使用的命令窗的大小。每个写操作具有相同的时间周期并且所述动态地确定是以动态的等待时间擦除命令为基础的。用因子n来分割动态长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期。所述动态长的等待时间擦除命令基于非易失性存储器的实际状态。该方法还包括对非易失性存储器执行n个命令,每个命令由n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成。一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于命令窗的大小。
根据本发明的一个实施方式,用于写入和擦除非易失性存储器的计算机实施方法在较短的读写操作中隐藏或替换长的等待时间擦除操作。在一个实施方式中,通过将擦除操作分成时间片来克服擦除操作的等待时间,可将时间片添加进多个写命令中以在常规写命令的时序封装中进行匹配。在一个实施方式中,写命令将因所添加的擦除时间而花费较长的时间,但实际上仍将花费比典型的严格命令更少时间。这样,多个写命令之后才会完成一次完整的擦除操作,从而提供了丢弃(drop)潜伏擦除命令的能力。
在一种实施方式中,通过应用擦除分割方法,NOR闪存可被用于除非采用其它方法否则因传统长擦除时间而不能被接受的应用中。例如,NOR和少数的“与非”(NAND)擦除时间通常要比写时间长得多。会存在着不能处理如此的擦除等待时间的应用。在传统的方法中,在后台进行擦除并允许其运行直到结束。然而,这种方法可能需要设备被加电并处于空闲状态。根据本发明的实施方式,通过使用擦除分割的方法,可将NOR闪存用于既不提供空闲后台时间也在空闲阶段不提供电源的应用中。在其他实施方式中,通过使用擦除分割的方法,可将特定的闪存存储器配置应用在对命令超时有严格时序限制的系统中,所述命令超时不支持传统擦除循环的等待时间。在一个实施方式中,可将NOR闪存实施在积极地控制电源和命令时序否则传统操控的闪存将不被接受的应用中。
附图说明
图1示出了根据本发明实施方式的表示用于写入和擦除非易失性存储器的计算机实施方法中的操作的流程图;
图2以框图形式概念性地示出了根据本发明实施方式的用于写入和擦除非易失性存储器的计算机实施方法;
图3示出了根据本发明实施方式的表示用于动态地写入和擦除非易失性存储器的计算机实施方法中的操作的流程图;
图4以框图形式概念性地示出了根据本发明实施方式的用于动态地写入和擦除非易失性存储器的计算机实施方法;
图5示出了根据本发明实施方式的被配置为用于写入和擦除非易失性存储器或者用于动态地写入和擦除非易失性存储器的计算机系统的示例的框图。
具体实施方式
本文描述了用于写入和擦除非易失性存储器的方法。在下面的描述中,呈现了若干诸如具体的擦除片时间这样的具体细节,以便提供对本发明实施方式的全面理解。显然地,对本领域技术人员而言,在没有这些具体细节的情况下也可以实践本发明的实施方式。在其他实例中,为了避免不必要地使本发明的实施方式变得模糊,所以并未详细地描述已知的处理操作,诸如确定非易失性存储器中的干净与脏空间。此外,应当理解,附图中示出的各种实施方式是说明性的描述,所以不必按照尺寸进行绘制。
可执行计算机实施方法以写入和擦除非易失性存储器。图1示出了根据本发明实施方式的表示用于写入和擦除非易失性存储器的计算机实施方法中的操作的流程图100。
参照流程图100的操作102,用于写入和擦除非易失性存储器的计算机实施方法包括确定非易失性存储器的n个写操作中所使用的命令窗的大小。在一个实施方式中,每个写操作具有相同的时间周期。根据本发明的一个实施方式,非易失性存储器是NOR闪存存储器。
参照流程图100的操作104,该方法包括用因子n来分割长的等待时间擦除命令,以提供多个擦除片。在一个实施方式中,每个擦除片具有相同的时间周期。
参照流程图100的操作106,该方法包括对非易失性存储器执行n个命令,每个命令由n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成。在一个实施方式中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于命令窗的大小。在一个实施方式中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于命令窗的大小。根据本发明的一个实施方式,n等于10,命令窗的大小大约为72毫秒,一个擦除片的时间周期大约为70毫秒,以及一个写操作的时间周期大约为2毫秒。然而,应该理解的是,分割方法并不限于这些具体参数。另外,还应该理解的是,所述命令并不限于写操作,而是可替代地可将擦除片添加到例如读命令中。
可参照时间线来将擦除窗分割方法形象化。图2以框图形式概念性地示出了根据本发明实施方式的用于写入和擦除非易失性存储器的计算机实施方法。
参照图2,框图时间线200包括线性时间线202,线性时间线202表示用于传统复制命令204和随后的传统潜伏(latent)擦除命令206的近似相对绝对时间。在一个实施方式中,传统潜伏擦除命令是用于回收(reclaim)的长等待时间操作,并通常在其它后台空闲时间中执行。然而,根据本发明的一个实施方式,擦除分割方法被实施,擦除分割采用传统潜伏擦除命令206的长等待时间回收操作,并将其分割到多个多写(编程)操作208上。因此,在一个实施方式中,通过将擦除时间分割成擦除片(这些擦除片之后被添加到写操作中)来执行用于消除长等待时间擦除命令206的方法。在一个实施方式中,写(编程)命令窗为例如100毫秒,因此例如700毫秒的传统擦除命令将不适于应用到单个写(编程)命令窗中。因此,在一个实施方式中,将700毫秒的擦除时间分成10个片,每个片都具有70毫秒。在该实施方式中,如图2所示,每个70毫秒的擦除片可被增加进10个相应的2毫秒写(编程)时间周期中,从而使得每个命令的总时间为72毫秒。每个写(编程)命令的72毫秒的总时间适于用到100毫秒的命令窗中。
如上所述,存在着不能处理与例如NOR闪存相关联的长等待时间擦除时间的一些系统。作为一个示例,使用NOR的HD-SIM卡可能需要使用上述擦除分割方法以允许与HD-SIM型应用相兼容。在一个实施方式中,擦除分割将长等待时间擦除操作分成被添加到写命令的多个段。在该实施方式中,擦除时间有效地消失了。然而,应当注意的是,到目前为止所描述的擦除分割集中在固定大小的擦除分割上。在这样的实施方式中,将相同的擦除时间持续时间添加到每个写命令中。在本发明的其他实施方式中,如下面所述,可实施改变擦除时间片大小以匹配擦除积压时间的方法。在一个实施方式中,这种动态方法更适于响应系统的特定实际状态,是一种用于擦除时间分割的实时方法。
根据本发明的一个实施方式,当脏空间(需要擦除的空间)增加时,可通过增加分配给擦除片的擦除时间来实施动态擦除分割。在一个实施方式中,该动态方法增加了特定系统的性能,该特定系统合并了被配置为执行动态擦除时间分割的非易失性存储器。在一个实施方式中,动态方法是基于用于改变擦除时间片大小的技术,这些技术诸如但不限于当条件允许时允许主机增加分配给擦除的时间、当擦除积压增加时自动地增加擦除时间、或者当擦除积压增加时建议主机增加擦除时间。在一个实施方式中,上述固定大小擦除分割被配置为将相同的擦除时间添加到所有的写命令中。然而,在动态方法下,如下面将更加详细描述的那样,当擦除积压增加或者减少时,使主机增加或减少或者自动地增加或减少擦除片的时间周期的大小。
在一个实施方式中,当相对于非易失性存储器中被管理区域的密度而言空闲空间大量存在时,系统可减少分配给擦除片大小的时间,以改善写命令的直观性能。相反地,在另一实施方式中,当相对于非易失性存储器中被管理区域的密度而言空闲空间很小时,系统可增加分配给擦除片大小的时间,以帮助避免闪存满的情况。因此,在一个实施方式中,不同于上述固定擦除时间分割,动态擦除时间分割允许系统对例如NOR闪存存储器这样的非易失性存储器的实际状态做出响应。在一个实施方式中,动态擦除分割允许基于闪存存储器的状态来增加或减少擦除片时间。在具体实施方式中,如果闪存存储器的状态有很大的空闲空间,那么可减少擦除时间片以改善系统的性能。相反地,在可选的具体实施方式中,如果闪存存储器的状态有很多的脏空间,那么可增加擦除时间片以允许更多的擦除时间。在一个实施方式中,在例如具有非常严格的命令操作窗的HD-SIM卡的应用中,实施动态擦除时间分割可帮助避免擦除操作引起错误。在一个实施方式中,通过帮助避免与擦除操作的长等待时间相关联的错误,可将NOR闪存应用于用其他方法其所不适用的应用中。
因此,可执行计算机实施方法以动态地写入和擦除非易失性存储器。图3示出了根据本发明实施方式的表示用于动态地写入和擦除非易失存储器的计算机实施方法中的操作的流程图300。
参照流程图300的操作302,用于写入和擦除非易失性存储器的计算机实施方法包括动态地确定非易失性存储器的n个写操作中所使用的命令窗的大小。在一个实施方式中,每个写操作都具有相同的时间周期并且所述动态地确定是基于动态的等待时间擦除命令的。根据本发明的一个实施方式,非易失性存储器是NOR闪存存储器。
参照流程图300的操作304,该方法包括用因子n来分割动态长的等待时间擦除命令,以提供多个擦除片。在一个实施方式中,每个擦除片都具有相同的时间周期,并且动态长的等待时间擦除命令是基于非易失性存储器的实际状态的。根据本发明的一个实施方式,非易失性存储器的实际状态由小的擦除积压组成,并且动态的等待时间擦除命令大约为500毫秒。根据本发明的另一实施方式,非易失性存储器的实际状态由大的擦除积压组成,并且动态的等待时间擦除命令大约为1500毫秒。在一个实施方式中,使用接入阵列来确定非易失性存储器的哪个扇区是脏的,并因此被实施以确定非易失性存储器的实际状态。在具体实施方式中,所述接入阵列在存储于相关随机存取存储器(RAM)中的表格中提供。然而,在另一具体实施方式中,所述接入阵列在存储于相关设备或区域而不是相关RAM的表格中提供。
参照流程图300的操作306,该方法包括对非易失性存储器执行n个命令,每个命令由这n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成。在一个实施方式中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或者等于命令窗的大小。在一个实施方式中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于命令窗的大小。根据本发明的实施方式,n等于10,命令窗的大小大约为52毫秒,一个擦除片的时间周期大约为50毫秒,以及一个写操作的时间周期大约为2毫秒。在另一实施方式中,n等于10,命令窗的大小大约为152毫秒,一个擦除片的时间周期大约为150毫秒,以及一个写操作的时间周期大约为2毫秒。然而,应该理解的是,分割方法并不限于在任一实施方式中所提供的这些具体参数。另外,还应该理解的是,所述命令并不限于写操作,而是可替代地可将擦除片添加到例如读命令中。
参照时间线,可将动态擦除窗分割方法形象化。图4以框图形式概念性地示出了根据本发明实施方式的用于动态地写入和擦除非易失性存储器的计算机实施方法。
参照图4,框图时间线400包括线性时间线402,线性时间线402表示用于两个不同的动态分割实施方式410和420的近似相对绝对时间。回想图2,在本发明的一个实施方式中,擦除分割方法采用传统潜伏擦除命令的长等待时间回收操作,并将其在多个多写(编程)操作之间进行分割。在本实施方式中,片的大小是根据非易失性存储器的实际状态(例如,脏空间的数量)而动态地确定的,并将随不同情况而不同。然而,在任何这种实施方式中,仍然可通过将擦除时间分割成擦除片(这些擦除片之后被添加到写操作中)来执行用于消除长等待时间擦除命令的方法。
在一个实施方式中,将500毫秒的擦除时间(较脏的非易失性存储器)分成10个片,每个片具有50毫秒。在该实施方式中,如同图4的多个命令窗410中所绘示的那样,每个50毫秒的擦除片可被添加进10个相应的2毫秒写(编程)时间周期,从而使得每个命令的总时间为52毫秒。在不同的实施方式中,将1500毫秒的擦除时间(更脏的非易失性存储器)分成10个片,每个片具有150毫秒。在该实施方式中,如同图4的多个命令窗420中所绘示的那样,每个150毫秒的擦除片可被添加进10个相应的2毫秒写(编程)时间周期,从而使得每个命令的总时间为152毫秒。因此,根据本发明的一个实施方式,可基于非易失性存储器的实际状态来动态地确定多个编程窗中每个编程窗的大小,多个编程命令被施加于该非易失性存储器。例如,在一个实施方式中,存在着小的擦除积压,从而可减少片时间,以提供对编程命令性能的可察觉的改善。在另一实施方式中,存在着大的擦除积压,从而可增加片时间,以减小前台擦除事件发生的机会。
在一个实施方式中,将本发明作为包含具有存储于其上的指令的机器可读介质的计算机程序产品或者软件产品而提供,这些指令被用于编程计算机系统(或其他电子设备)以执行根据本发明实施方式的处理。机器可读介质可以包括用于以机器(例如,计算机)可读的方式来存储或传输信息的任何机制。例如,在一个实施方式中,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储媒体、光存储媒体、闪存存储设备等)、机器(例如,计算机)可读传输介质(电、光、声或其他形式的传播信号(例如,载波、红外信号、数字信号等))等。在一个实施方式中,术语“计算机实施”的使用在这里意味着处理器实施。在一个实施方式中,本文描述的方法之一可在诸如蜂窝电话这样的便携式设备中实施,所述便携式设备本质上没有计算机但具有处理器。
图5示出了计算机系统500形式的机器图示,在计算机系统500中执行用于使所述机器执行本文探讨的任何一个或多个方法的一组指令。例如,根据本发明的一个实施方式,图5示出了计算机系统的示例的框图,该计算机系统被配置为用于写入和擦除非易失性存储器或者用于动态地写入和擦除非易失性存储器。在可替换的实施方式中,所述机器连接(例如,联网)到局域网(LAN)、内联网、外联网或因特网中的其它机器。在一个实施方式中,所述机器以客户端-服务器网络环境中的服务器或客户端机器的身份运行,或者作为对等(或分布式)网络环境中的对等机器来运行。在一个实施方式中,所述机器为个人计算机(PC)、平板型PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、网络设备、服务器、网络路由器、开关或桥、或能够执行指定那个机器所采取的动作的指令集(序列或其它)的任何机器。另外,虽然仅示出了单个机器,但是术语“机器”也将包括独立地或联合地执行一组指令(或多组指令)以执行本文探讨的任何一个或多个方法的任何的机器集合(例如,计算机或处理器)。
计算机系统500的示例包括处理器502、主存储器504(例如,只读存储器(ROM)、闪存存储器、诸如同步(SDRAM)或Rambus DRAM(RDRAM)这样的动态随机存取存储器DRAM等)、静态存储器506(例如,闪存存储器、静态随机存取存储器(SRAM)等)以及辅助存储器518(例如,数据存储设备),它们通过总线530相互通信。
处理器502代表诸如微处理器、中央处理器等这样的一个或多个通用处理设备。特别地,在一个实施方式中,处理器502为复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器、执行其它指令集的处理器、或者执行指令集组合的处理器。在一个实施方式中,处理器502为一个或多个专用处理设备,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等。处理器502执行用于执行本文探讨的操作的处理逻辑526。
在一个实施方式中,计算机系统500还包括网络接口设备508。在一个实施方式中,计算机系统500还包括视频显示单元510(例如,液晶显示器(LCD)或阴极射线管(CRT))、字母数字输入设备512(例如,键盘)、光标控制设备514(例如,鼠标)以及信号产生设备516(例如,扬声器)。
在一个实施方式中,辅助存储器518包括其上存储有一个或多个指令集(例如,软件522)的机器可访问存储介质(或更具体为计算机可读存储介质)531,所述指令集体现了本文描述的任何一个或多个方法或功能。在一个实施方式中,软件522在它们被计算机系统500执行期间全部或至少部分地驻留在主存储器504中或驻留在处理器502中,主存储器504和处理器502还组成机器可读存储媒体。在一个实施方式中,还经由网络接口设备508在网络520上传送或接收软件522。
虽然在一个实施方式中示出的机器可访问存储介质531为单个介质,但是术语“机器可读存储介质”应当包括存储所述一个或多个指令集的单个介质或多个媒体(例如,集中式或分布式数据库、或者相关的高速缓冲存储器和服务器)。术语“机器可读存储介质”还应当包括能够存储或编码指令集的任何介质,所述指令集由所述机器执行并使所述机器执行本发明实施方式的任何一个或多个方法。术语“机器可读存储介质”将相应地包括但不限于固态存储器、光媒体和磁媒体。
根据本发明的一个实施方式,软件层管理写命令并向每个写命令添加擦除片。在一个实施方式中,软件层还跟踪擦除状态和进程。因此,在一个实施方式中,本文描述的任何方法通过向写命令中添加擦除片并然后跟踪擦除状态和进程来运作。在该实施方式中,所述方法通过将长的等待时间擦除时间分割成可被管理并添加进写操作的片来消除长的等待时间擦除时间。在与动态擦除分割相关的实施方式中,实施软件层以管理被分配给擦除时间片的时间。在一个实施方式中,软件层允许增加或较小擦除时间。在具体实施方式中,软件层基于空闲与脏空间的当前闪存状态来自动地增加或减少擦除片。在该实施方式中,软件层指示闪存中的空闲与脏空间,并产生用于设置擦除片时间的建议。在一个实施方式中,将分割指令存储于应用分割的闪存存储器中,并且在该闪存存储器中执行分割指令。在另一实施方式中,将分割指令存储于应用分割的闪存存储器中,并且在与该闪存存储器相关联的主机处理器的RAM中执行分割指令。
根据本发明的一个实施方式,机器可访问存储介质具有存储于其上的指令,这些指令使数据处理系统执行用于写入和擦除非易失性存储器的方法。在一个实施方式中,所述方法包括确定非易失性存储器的n个写操作中使用的命令窗的大小,每个写操作具有相同的时间周期。所述方法还包括用因子n来分割长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期。然后,所述方法包括对非易失性存储器执行n个命令,每个命令由n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成,其中一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或者等于命令窗的大小。
在机器可访问存储介质的实施方式中,一个擦除片的总时间周期加上一个写操作的时间周期的总时间小于命令窗的大小。在机器可访问存储介质的实施方式中,相关的非易失性存储器为NOR闪存存储器。在机器可访问存储介质的实施方式中,n等于10,命令窗的大小大约为72毫秒,一个擦除片的时间周期大约为70毫秒,以及一个写操作的时间周期大约为2毫秒。在机器可访问存储介质的实施方式中,确定命令窗的大小是动态执行的并基于动态的等待时间擦除命令的,以及分割长的等待时间擦除命令包括分割动态长的等待时间擦除命令,该动态长的等待时间擦除命令基于非易失性存储器的实际状态。在包含动态的等待时间擦除命令的这种实施方式中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于命令窗的大小。在包含动态的等待时间擦除命令的另一种实施方式中,非易失性存储器是NOR闪存存储器。在一个实施方式中,n等于10,命令窗的大小大约为52毫秒,一个擦除片的时间周期大约为50毫秒,以及一个写操作的时间周期大约为2毫秒。在另一实施方式中,n等于10,命令窗的大小大约为152毫秒,一个擦除片的时间周期大约为150毫秒,以及一个写操作的时间周期大约为2毫秒。因此,根据本发明的一个实施方式,可基于非易失性存储器的实际状态来动态地确定多个编程窗中每个编程窗的大小,多个编程命令被施加在该非易失性存储器上。例如,在一个实施方式中,存在着小的擦除积压,从而可减少片时间,以提供对编程命令性能的可察觉的改善。在另一实施方式中,存在着大的擦除积压,从而可增加片时间,以减小前台擦除事件发生的机会。
根据本发明的一个实施方式,本文描述的方法或方式可结合诸如NOR闪存这样的非易失性存储器来实施,以消除擦除命令的长等待时间。在一个实施方式中,被配置为采用擦除分割来运行的NOR闪存使得这样的闪存存储器能够应用于具有小的命令窗、积极的电源管理或者有限的或没有后台操作时间的应用中。在一个实施方式中,实施固定时间片。然而,在另一实施方式中,实施动态分割,动态分割能够将擦除时间片与闪存存储器的状态进行匹配。在该实施方式中,可按需增加或减少擦除时间片的大小(绝对时间)。在一个实施方式中,增加擦除时间片为擦除分配更多的时间并允许系统清除比固定时间片更多的空间。在另一实施方式中,减少时间片允许系统比固定时间片更能响应系统。
因此,已经公开了用于写入和擦除非易失性存储器的计算机实施方法。根据本发明的一个实施方式,所述方法包括确定非易失性存储器的n个写操作中使用的命令窗的大小,每个写操作具有相同的时间周期。用因子n来分割长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期。该方法还包括对非易失性存储器执行n个命令,每个命令由n个写操作中的其中一个写操作和所述擦除片中一个擦除片的组合构成。一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于命令窗的大小。在一个实施方式中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于命令窗的大小。在一个实施方式中,非易失性存储器是NOR闪存存储器。

Claims (20)

1.一种用于写入和擦除非易失性存储器的计算机实施方法,该方法包括:
确定所述非易失性存储器的n个写操作中所使用的命令窗的大小,每个写操作具有相同的时间周期;
用因子n来分割长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期;以及
对所述非易失性存储器执行n个命令,每个命令由所述n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成,其中一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于所述命令窗的大小。
2.根据权利要求1所述的计算机实施方法,其中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于所述命令窗的大小。
3.根据权利要求1所述的计算机实施方法,其中,所述非易失性存储器是或非闪存存储器。
4.根据权利要求1所述的计算机实施方法,其中,n等于10,所述命令窗的大小大约为72毫秒,一个擦除片的时间周期大约为70毫秒,以及一个写操作的时间周期大约为2毫秒。
5.一种用于写入和擦除非易失性存储器的计算机实施方法,该方法包括:
动态地确定所述非易失性存储器的n个写操作中所使用的命令窗的大小,每个写操作具有相同的时间周期,所述动态地确定基于动态的等待时间擦除命令;
用因子n来分割动态长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期,所述动态长的等待时间擦除命令基于所述非易失性存储器的实际状态;以及
对所述非易失性存储器执行n个命令,每个命令由所述n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成,其中一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于所述命令窗的大小。
6.根据权利要求5所述的计算机实施方法,其中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于所述命令窗的大小。
7.根据权利要求5所述的计算机实施方法,其中,所述非易失性存储器是或非闪存存储器。
8.根据权利要求5所述的计算机实施方法,其中,n等于10,所述命令窗的大小大约为52毫秒,一个擦除片的时间周期大约为50毫秒,以及一个写操作的时间周期大约为2毫秒。
9.根据权利要求5所述的计算机实施方法,其中,n等于10,所述命令窗的大小大约为152毫秒,一个擦除片的时间周期大约为150毫秒,以及一个写操作的时间周期大约为2毫秒。
10.根据权利要求5所述的计算机实施方法,其中,所述非易失性存储器的实际状态包括小的擦除积压,以及其中所述动态的等待时间擦除命令大约为500毫秒。
11.根据权利要求5所述的计算机实施方法,其中,所述非易失性存储器的实际状态包括大的擦除积压,以及其中所述动态的等待时间擦除命令大约为1500毫秒。
12.一种机器可访问存储介质,该机器可访问存储介质具有存储于该机器可访问存储介质上的指令,所述指令使数据处理系统执行用于写入和擦除非易失性存储器的方法,该方法包括:
确定所述非易失性存储器的n个写操作中所使用的命令窗的大小,每个写操作具有相同的时间周期;
用因子n来分割长的等待时间擦除命令,以提供多个擦除片,每个擦除片具有相同的时间周期;以及
对所述非易失性存储器执行n个命令,每个命令由所述n个写操作中的其中一个写操作和所述擦除片中的一个擦除片的组合构成,其中一个擦除片的时间周期加上一个写操作的时间周期的总时间小于或等于所述命令窗的大小。
13.根据权利要求12所述的机器可访问存储介质,其中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于所述命令窗的大小。
14.根据权利要求12所述的机器可访问存储介质,其中,所述非易失性存储器是或非闪存存储器。
15.根据权利要求12所述的机器可访问存储介质,其中,n等于10,所述命令窗的大小大约为72毫秒,一个擦除片的时间周期大约为70毫秒,以及一个写操作的时间周期大约为2毫秒。
16.根据权利要求12所述的机器可访问存储介质,其中,确定所述命令窗的大小是动态执行的并基于动态的等待时间擦除命令,其中分割所述长的等待时间擦除命令包括分割动态长的等待时间擦除命令,该动态长的等待时间擦除命令基于所述非易失性存储器的实际状态。
17.根据权利要求16所述的机器可访问存储介质,其中,一个擦除片的时间周期加上一个写操作的时间周期的总时间小于所述命令窗的大小。
18.根据权利要求16所述的机器可访问存储介质,其中,所述非易失性存储器是或非闪存存储器。
19.根据权利要求16所述的机器可访问存储介质,其中,n等于10,所述命令窗的大小大约为52毫秒,一个擦除片的时间周期大约为50毫秒,以及一个写操作的时间周期大约为2毫秒。
20.根据权利要求16所述的机器可访问存储介质,其中,n等于10,所述命令窗的大小大约为152毫秒,一个擦除片的时间周期大约为150毫秒,以及一个写操作的时间周期大约为2毫秒。
CN201010148434.8A 2009-04-14 2010-04-14 用于写入和擦除非易失性存储器的方法 Active CN101866692B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/423,226 US8078796B2 (en) 2009-04-14 2009-04-14 Method for writing to and erasing a non-volatile memory
US12/423,226 2009-04-14

Publications (2)

Publication Number Publication Date
CN101866692A true CN101866692A (zh) 2010-10-20
CN101866692B CN101866692B (zh) 2014-11-26

Family

ID=42932604

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010148434.8A Active CN101866692B (zh) 2009-04-14 2010-04-14 用于写入和擦除非易失性存储器的方法

Country Status (6)

Country Link
US (1) US8078796B2 (zh)
JP (1) JP5624797B2 (zh)
KR (1) KR101575369B1 (zh)
CN (1) CN101866692B (zh)
DE (1) DE102010014781A1 (zh)
SG (1) SG166068A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102013031A (zh) * 2010-12-17 2011-04-13 苏州国芯科技有限公司 一种小容量sd卡
CN110780807A (zh) * 2018-07-31 2020-02-11 马维尔国际贸易有限公司 控制固态驱动器的性能

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9612773B2 (en) * 2013-11-21 2017-04-04 Samsung Electronics Co., Ltd. User device having a host flash translation layer (FTL), a method for transferring an erase count thereof, a method for transferring reprogram information thereof, and a method for transferring a page offset of an open block thereof
US10230948B2 (en) * 2016-02-03 2019-03-12 Mediatek Inc. Video transmitting system with on-the-fly encoding and on-the-fly delivering and associated video receiving system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6973530B2 (en) * 2000-06-30 2005-12-06 Robert Bosch Gmbh Method for writing and erasing a non-volatile memory area
JP2008146742A (ja) * 2006-12-08 2008-06-26 Sharp Corp 不揮発性半導体記憶装置及びその処理方法
JP2008146341A (ja) * 2006-12-08 2008-06-26 Sharp Corp 不揮発性半導体記憶装置及びその処理方法
CN101241751A (zh) * 2007-02-08 2008-08-13 恩益禧电子股份有限公司 半导体器件和测试半导体器件的方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0663083B1 (en) * 1992-09-29 2000-12-20 Seiko Epson Corporation System and method for handling load and/or store operations in a superscalar microprocessor
JP2010079758A (ja) * 2008-09-29 2010-04-08 Panasonic Corp 不揮発性メモリの自動書き換え中断方法と不揮発性メモリおよびマイクロコンピュータ
JP2010182216A (ja) * 2009-02-09 2010-08-19 Panasonic Corp メモリコントローラ、不揮発性記憶装置、不揮発性記憶システムおよびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6973530B2 (en) * 2000-06-30 2005-12-06 Robert Bosch Gmbh Method for writing and erasing a non-volatile memory area
JP2008146742A (ja) * 2006-12-08 2008-06-26 Sharp Corp 不揮発性半導体記憶装置及びその処理方法
JP2008146341A (ja) * 2006-12-08 2008-06-26 Sharp Corp 不揮発性半導体記憶装置及びその処理方法
CN101241751A (zh) * 2007-02-08 2008-08-13 恩益禧电子股份有限公司 半导体器件和测试半导体器件的方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102013031A (zh) * 2010-12-17 2011-04-13 苏州国芯科技有限公司 一种小容量sd卡
CN102013031B (zh) * 2010-12-17 2014-05-28 苏州国芯科技有限公司 一种小容量sd卡的读写方法
CN110780807A (zh) * 2018-07-31 2020-02-11 马维尔国际贸易有限公司 控制固态驱动器的性能

Also Published As

Publication number Publication date
US8078796B2 (en) 2011-12-13
SG166068A1 (en) 2010-11-29
US20100262756A1 (en) 2010-10-14
KR101575369B1 (ko) 2015-12-09
DE102010014781A1 (de) 2010-11-11
JP5624797B2 (ja) 2014-11-12
KR20100113994A (ko) 2010-10-22
JP2010250932A (ja) 2010-11-04
CN101866692B (zh) 2014-11-26

Similar Documents

Publication Publication Date Title
CN100464307C (zh) 一种实现数据备份和恢复的方法及系统
US20080195833A1 (en) Systems, methods and computer program products for operating a data processing system in which a file system's unit of memory allocation is coordinated with a storage system's read/write operation unit
CN102713824A (zh) 基于未来使用估计的分配存储器
US8751727B2 (en) Storage apparatus and storage system
CN103180852A (zh) 分布式数据处理方法及装置
CN105190567A (zh) 用于管理存储系统快照的系统和方法
CN102308274B (zh) 一种访问关机硬盘的方法、网卡和硬盘卡
CN102770841A (zh) 用于产生最小引导映像的方法和装置
JP2010134522A (ja) データベース管理方法、データベース管理プログラム、および、データベース管理装置
EP2927779A1 (en) Disk writing method for disk arrays and disk writing device for disk arrays
CN101911010B (zh) Javascript网格中的异步多级撤消支持
CN101866692B (zh) 用于写入和擦除非易失性存储器的方法
CN111124270B (zh) 缓存管理的方法、设备和计算机程序产品
CN103324533A (zh) 分布式数据处理方法、装置及系统
CN101315613A (zh) 处理非易失性存储器的数据的设备和方法
US20160313914A1 (en) Systems and methods for improved access to flash memory devices
CN103885717A (zh) 一种数据复制方法及装置
CN101667458B (zh) 一种固态硬盘全盘擦除的方法和相应的设备
CN102521085B (zh) 基于iptv的媒资数据的备份及还原方法和系统
WO2024027140A1 (zh) 一种数据处理方法、装置、设备、系统及可读存储介质
US10254965B2 (en) Method and apparatus for scheduling block device input/output requests
CN108255424B (zh) 一种NVMe固态硬盘IO响应延迟的保障方法
CN101572123B (zh) 非易失性存储器控制装置、其数据调度方法及系统
CN112148203B (zh) 存储器管理方法、装置、电子设备及存储介质
CN115427917A (zh) 用于分配给存储器裸片的峰值电力的量化

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: HENGYI COMPANY

Free format text: FORMER OWNER: JOHN RUDELIC

Effective date: 20150414

Owner name: MICRON TECHNOLOGY, INC.

Free format text: FORMER OWNER: HENGYI COMPANY

Effective date: 20150414

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150414

Address after: Idaho

Patentee after: Micron Technology, Inc.

Address before: Swiss Rolle

Patentee before: NUMONYX B.V.

Effective date of registration: 20150414

Address after: Swiss Rolle

Patentee after: NUMONYX B.V.

Address before: California, USA

Patentee before: J. Rudlick