CN101458961A - 非易失性存储设备中数据管理方法和映射表更新方法 - Google Patents
非易失性存储设备中数据管理方法和映射表更新方法 Download PDFInfo
- Publication number
- CN101458961A CN101458961A CNA200810189548XA CN200810189548A CN101458961A CN 101458961 A CN101458961 A CN 101458961A CN A200810189548X A CNA200810189548X A CN A200810189548XA CN 200810189548 A CN200810189548 A CN 200810189548A CN 101458961 A CN101458961 A CN 101458961A
- Authority
- CN
- China
- Prior art keywords
- mapping table
- data
- state
- effective status
- flag data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/02—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using elements whose operation depends upon chemical change
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- 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/5678—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 amorphous/crystalline phase transition storage elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0023—Address circuits or decoders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0059—Security or protection circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Semiconductor Memories (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
非易失性存储设备的数据管理方法包括写入数据和表示所述数据状态。该状态包括多种可能状态之一。多个可能状态中对应最终操作的状态确定为所述数据的有效状态。
Description
技术领域
本发明的实施例涉及非易失性存储设备,更具体地,涉及非易失性存储设备中的数据管理方法和映射表更新方法。
背景技术
相变随机存取存储器(PRAM)是下一代半导体存储器,其具有闪存所有的在断电时仍然保留所存储的信息的优点和动态随机存储器(DRAM)所有的处理速度快的优点。PRAM是一种无需擦除操作的类型的非易失性存储设备。通常,PRAM使用相变材料(例如,铬(Ge),锑(Sb),碲(Te))获得0和1的信号变化来进行信息处理。例如,信号响应于晶体状态,表示逻辑0,以及响应于非晶态表示逻辑1。
PRAM也可以被称为双向统一存储器(OUM)。OUM是由相变材料形成(例如,硫化物合金),当其被加热而后被冷却时,其能够保持两种状态之一,并且随后通过加热和冷却改变它的状态。所述两种状态包括晶体状态和非晶态。这种类型PRAM的例子揭露在由PARK等申请的美国专利US6487113和由PARK申请的美国专利US6480438中,在此引用其内容作为参考。
PRAM在晶体状态具有较低的电阻而在非晶态具有较高的电阻。从而所述逻辑值0或1可以基于电阻值。例如,晶体状态可以对应于置位或逻辑0,而非晶态可以对应于复位或逻辑1。为了让相变材料进入非晶态,可以将其加热至熔点,如经过电阻加热,然后迅速冷却。为了让相变材料进入晶体状态,可以使其低于熔点受热,然后冷却一预定时间。
发明内容
本发明的实施方式提供非易失性存储设备中的数据管理方法。所述方法包括写入数据和表现数据状态,其中所述状态包括多种可能状态中的一种。对应于最终操作的多种可能状态的一种被确定为数据的有效状态。
该非易失性存储设备可被重写。同时,所述可能状态可以包括晶体状态和非晶态,所述晶体状态是数据的有效状态而所述非晶态是数据的无效状态。所述数据的可能状态还可以包括未知有效状态和未知无效状态。
当表现所述数据状态时电源突然被切断,可以表示为所述未知有效状态或未知无效状态。
表示状态变化的终值的标志数据0x0000可被用作有效状态而标志数据0xFFFF可被用作无效状态。
所述数据可经过页面单元写入并且通过包括多个页面单元的逻辑页面进行管理。该非易失性存储设备可由映射表来管理。所述映射表可以识别页面以及表示页面数据状态的相应标志数据。
本发明实施方式提供了包括第一映射表和第二映射表的非易失性存储设备中映射表的更新方法。在对应于第一映射表中逻辑地址的当前物理地址不可写时,该方法包括通过映射对应逻辑地址的新的物理地址来更新具有无效状态的第二映射表,并且指示第二映射表为有效状态而第一映射表为无效状态。
该方法还包括当第一和第二映射表的每一个在写请求期间都处于无效状态时,选择第一和第二映射表之一作为用于写数据的映射表。
该非易失性存储设备可被重写。
数据可通过该非易失性存储设备中的多种状态来表示,多种状态中最终操作的状态可以被确定为第一和第二映射表的有效状态。
该第一和第二映射表可包括表示有效和无效状态的表标志数据。表标志数据0x0000可用作映射表的有效状态而表标志数据0xFFFF可用作映射表的无效状态。
该方法还包括在第一映射表指示无效状态期间电源突然切断,然后又恢复供电时,第一映射表的表标志数据可被指示为无效状态。
附图说明
所述附图用于提供进一步理解本发明,并且被并入和组成说明书的一部分。将参照附图说明本发明的实施方式,其中:
图1是描述相变存储设备的一个存储单元的电路图;
图2是描述述相变存储设备的另一存储单元的电路图;
图3是描述图1和图2的相变材料特征的曲线图;
图4是描述在PRAM的写操作期间一个位的变化图;
图5是按照本发明实施方式描述数据管理方法的示意图;
图6是按照本发明实施方式的标志数据的图;
图7是按照本发明实施方式的存储***模块图;
图8是按照本发明实施方式的描述PRAM页面的框图;
图9是按照本发明实施方式的描述PRAM页面的框图;
图10是按照本发明实施方式的PRAM的映射表;
图11是按照本发明实施方式描述PRAM映射表的图表;
图12是按照本发明实施方式描述映射表更新方法的图表;
图13是按照本发明实施方式描述映射表更新过程的流程图;并且
图14是按照本发明实施方式描述当恢复供电时映射表变为无效的过程的流程图。
具体实施方式
参照附图能够更完整地描述其中示出示例性实施方式的本发明。但是,本发明可以按许多不同方式表现,并且不能解释为仅限于示出的实施方式。更确切地说,这些实施方式被提供作为举例,来向本领域技术人员表达本发明的概念。因而,和本发明的一些实施方式相关的公知的方法,元件和技术没有描述。在所有附图和描述中,相同的数字将被用来表示相同或类似的元件。
如上所述,PRAM包括相变材料,例如硫化物。例如,该相变材料可包括铬(Ge),锑(Sb)和碲(Te)的合金(GST合金)。GST合金在存储设备中是有用的,因为它们能够通过受热或冷却迅速变成非晶态(复位或逻辑1)和/或晶体状态(置位或逻辑0)。
由硫化物构成的存储单元包括例如上电极,硫化物层,下电极接头(contact),下电极和存取晶体管。可编程单元的读操作可通过测量该硫化物的电阻来完成。比如,所述相变材料在非晶态具有高电阻(低反射率),而在晶体状态具有低电阻(高反射率)。
存储单元的编程操作导致其进入置位状态或复位状态之一从而具有一对应的预定逻辑值。例如,要在存储单元中写入数据,非晶态可以通过将上述硫化物加热至熔点之上然后迅速冷却来获得,而晶体状态可以通过使所述硫化物低于熔点受热预定时间然后冷却来获得。
图1是描述相变存储设备的一个存储单元的电路图。如图1,存储单元10包括存储元件11和选择元件12。存储元件11连接于位线BL和选择元件12之间,并且选择元件12连接在存储元件11和接地之间。
该存储元件11包括可根据温度改变电阻的相变材料,例如GST合金。该相变材料GST具有依赖于温度的晶体状态和非晶态(也即两种稳定状态)。该相变材料GST按照经由位线BL提供的电流来变成晶体状态或非晶态。该相变存储设备基于该相变材料GST的这些特性写入数据。
该选择元件12包括NMOS晶体管NT。字线WL连接至所述NMOS晶体管NT的栅极。当预定电压提供给字线WL时,所述NMOS晶体管NT就导通。当所述NMOS晶体管NT导通时,电流就经由位线BL提供给所述存储元件11。在不同结构中,存储元件11可被连接在位线BL和选择元件12之间,如图1所示,或者选择元件12可被连接在位线BL和存储元件11之间。
图2是描述述相变存储设备的另一存储单元的电路图。如图2,存储单元20包括存储元件21和选择元件22。存储元件21连接于位线BL和选择元件22之间,选择元件22连接在存储元件21和接地之间。存储元件21可与图1中的存储元件11相同。
选择元件22包括二极管D。存储元件21和字线WL分别连接至二极管D的阳极和阴极。当阳极和阴极间的电压差大于二极管D的阈值电压时,该二极管D就导通。当所述二极管D导通时,所述存储元件21经由位线BL接收电流。
图3是描述图1和图2的相变材料GST的特征的曲线图。曲线1显示相变材料GST进入非晶态的情况,曲线2显示相变材料GST进入晶体状态的情况。
如图3,相变材料GST在通过电流源加热至熔化温度Tm之上并在时间T1后冷却之后进入非晶态。所述非晶态一般可被称为复位状态和存储数据1。相变材料GST在受热高于结晶温度Tc并且低于熔化温度Tm并在时间T2(长于时间T1)之后慢慢冷却后进入晶体状态。所述非晶态一般被称为置位状态和存储数据0。所述电阻按照相变材料的非晶态的量改变。存储单元的电阻在非晶态高而在晶体状态低。
相变存储设备在写操作期间提供写电流至所选择的存储单元。该所选择的存储单元按照分别称为复位电流和置位电流的写电流变成复位状态或置位状态。也就是,复位电流使相变材料GST变成非晶态,置位电流使相变材料GST变成晶体状态。
如图3所示,为将相变材料GST变成非晶态,对应于高于Tm的温度的所述复位电流施加到存储单元持续时间T1。为将相变材料GST变成晶体状态,对应于处于Tc和Tm之间的温度的所述置位电流施加到存储元件持续时间T2。换言之,复位电流和置位电流具有适合于相变材料GST的各自状态改变的特定幅度和供应时间。一般,复位电流具有比置位电流更高的幅度,并且施加所述置位电流的时间长于复位电流。
相变存储设备的存储单元阵列包括多个存储单元。每一存储单元连接至字线和位线,从而多个存储单元都连接至每一字线和每一位线。行方向存储单元按照字线电压电平来选择。当每一存储单元包括例如图1中的NMOS晶体管NT时,行方向的存储单元可响应于字线电压的高电平而被选择。当每一存储单元包括图2中的二极管D时,所述行方向的存储单元响应于字线电压的低电平而被选择。
在不要求擦除操作的非易失性存储设备的数据管理方法中,按照本发明的实施方式,在写操作完成之后代表存储单元状态变化的最终状态的位值被标记。基于所述被标记的位值,确定数据状态是有效还是无效。不要求擦除操作的该非易失性存储设备包括例如PRAM,磁性RAM(MRAM)和铁电体(FeRAM)。为了便于说明,以下描述指的是PRAM非易失性存储器。由于无需擦除操作,重写操作是可行的,即使写操作在存储单元上已被预先执行。
图4是描述在PRAM的写操作期间位变化的图。如图4,随着时间流逝现有位被更新为新的位。在此,位1表示存储单元的非晶态而位0表示存储单元的晶体状态。当所述存储单元被编程为位1,写操作经过“任意”值从旧位前进到“1”(即非晶态)。另一方面,当所述存储单元被编程为位0,写操作经过“任意”值从旧位前进到“0”(即晶体状态)。
根据本发明的实施方式,所述表示晶体状态的位值被指示为在相变的最后操作中的有效数据。由于该操作的位值甚至在写操作期间切断电源时也是有效的,这有力地保证了数据的有效性。
图5是按照本发明示范实施方式描述数据管理方法的图。如图5,要被管理的数据可分为四种可能状态。所述四种状态包括无效状态A,有效状态B,未知有效状态C和未知无效状态D。该未知有效状态C是在从有效状态B向无效状态A变化期间当电源被切断时出现的一种数据状态,该未知无效状态D是在从无效状态A向有效状态B变化期间当电源被切断时出现的一种数据状态。
可设想PRAM通过字(如2字节或16位)来写入。因而,代表数据状态的标志数据被写入在字单元中。例如,代表PRAM的最终状态的位0是表示有效状态B的标志数据。也就是说,对应有效状态B的标志数据是0x0000。此外,指示无效状态A的标志数据是0xFFFF。对应于未知有效状态C的标志数据是除了0x000和0xFFFF之外的任何数据,对应未知无效状态D的标志数据是除了0x0000之外的任何数据。
在无效状态A和有效状态B之间进行更新是可能的。也就是说,所述无效状态A可更新为有效状态,反之亦然。另一方面,未知有效状态C可以是除了0x0000和0xFFFF之外的任何标志数据,因为它发生在从有效状态B向无效状态A变化期间电源被切断的时候。随后,当电源恢复供电,所述未知有效状态C可被恢复至无效状态A。
另外,所述未知无效D可具有除了0x0000之外的任何标志数据,因为它发生在从无效状态A向有效状态B变化期间电源被切断的时候。随后,当电源恢复供电,所述未知无效状态D可被恢复至无效状态A。
在PRAM的相变期间电源被切断时相应于数据的有效状态B的标志数据不出现。例如,相应于有效状态B的标志数据是代表PRAM最终操作的相变状态的0x0000。更详细地说,0x0000表示16个相变存储单元的晶体状态。另外,相应于无效状态A的标志数据以比标记其它数据状态相对快的速度被写入。比如,相应于无效状态A的标志数据是代表PRAM初始操作的相变状态的0xFFFF。更详细地说,0xFFFF代表16个相变存储单元的非晶态。
虽然上述关于所述数据管理方法的标志数据是字单元,可以理解的是本发明的实施方式不仅限于此。所述标志数据可基于写入方法而改变。
图6是按照本发明示例性实施方式的标志数据表。如图6,所述标志数据包括16位。另一方面,16位中的两位被选择用作被配置以两位写入数据的PRAM中的标志数据。
通过上述数据管理方法来控制的数据管理模块将是可行的。数据管理模块可以包括在PRAM中或在控制PRAM的控制器中,也可能在PRAM之外。
图7是按照本发明示范性实施方式的存储***100的模块图。如图7,存储***100包括PRAM 120和数据管理模块140。该PRAM 120可以是典型的相变存储设备。存储***100通过逻辑页面单元管理PRAM 120的数据,其中每一逻辑页面包括多个页面单元。
该PRAM 120的存储单元阵列122通常被分为元区124和用户区126。元区124包括用于驱动PRAM 120的信息。更明确地说,该元区124存储用于管理PRAM 120的数据的映射表信息。映射表信息包括标志数据。标志数据代表数据管理模块140要管理的页面状态。所述页面包括,例如,图8中所示连接在同一字线上的多个页面单元,页面单元0,...,页面单元m-1。另一方面,页面单元0,...,页面单元m-1通过各自不同的地址被激活。每一页面单元的大小就是一个字的大小。也就是,例如页面单元0,...,页面单元m-1中的每一个页面单元包括16个相变存储单元。
数据管理模块140管理PRAM 120的页面,以读取存储在PRAM 120的元区124中的映射表信息。也就是说,数据管理模块140通过页面单元来管理数据。该映射表信息包括代表多个页面单元,页面单元0,...,页面单元m-1的数据状态的标志数据。所述数据状态可以是如图5中描述的无效状态A,有效状态B,未知有效状态C和未知无效状态D。该标志数据和相应的数据状态在下表中总结。
标志数据 | 页面数据状态 |
0xFFFF | 无效状态 |
!(0x0000) | 未知无效状态 |
0x0000 | 有效状态 |
!(0xFFFF,0x0000) | 未知有效状态 |
一旦PRAM 120的用户区126中的写操作完成,所述数据管理模块140就更新元区124中的映射数据信息。该映射数据信息反映执行写操作的页面的数据状态。数据管理模块140的详细操作将结合图10至13在下面描述。
按照本发明实施方式的数据管理方法通过逻辑页面单元来管理PRAM120的数据。图8是按照本发明一个实施方式的描述连接至多个字线中一条字线的多页面单元的框图。逻辑页面不必对应于连接至一条字线的一个页面。更恰当的,按照本发明的一个实施例,页面单元的集合可被看作逻辑页面。更特别的,多个页面单元可组成一个扇区,或主机(未示出)的数据管理单元,然后该扇区就可被定义为逻辑页面。图9是按照本发明示例性实施方式的显示页面单元组的框图,该页面单元组例如包括预定数量的对应于逻辑页面的页面单元。
在准备更新期间由于电源被切断而写操作没有完成时,现有数据可能丢失。也就是说,在准备更新期间由于电源被切断时,用户数据和元数据可能被毁坏。因此,该PRAM就可以通过映射表来管理。
图10是按照本发明示例性实施方式的PRAM的映射表。如图10,所述映射表包括描述性的标志数据,其代表物理地址和逻辑地址之间的映射关系以及对应所述物理地址的页面的数据状态。例如,物理地址P0至Pn是对应图8和9中描述的每一逻辑页面的第一页面单元的地址。更确切地,参照图10中的映射表,物理地址P2对应逻辑地址L2,并且物理地址P2的页面数据状态是有效状态0x0000。
一旦PRAM的写操作完成,页面的有效状态需更被描述。为此,映射表需将被更新从而具有已写入数据的每一页面状态处于有效状态。然而,有可能的是在该映射表正在更新时电源突然断掉。此时,代表相应页面状态的标志数据可以为除了0x0000之外的任何位值。原因是即使电源被突然切断,用于相变的最终操作的标志数据0x0000没有出现。
另一方面,在用新信息更新现有的映射表信息时电源可能被切断。在此情况下,现有映射表信息有可能被丢失。因而,该映射表的备份信息就是必需的。
图11是按照本发明另一典型实施方式的PRAM映射表。如图11所示,数据管理方法包括第一映射表1和第二映射表2以便管理PRAM的数据。例如,第一映射表1包括有效表标志数据而第二映射表2包括无效表标志数据。所述表标志数据被用于图7的当前数据管理模块140来选择第一和第二映射表中的有效的一个。
如图11,第一映射表1被激活使用,而第二映射表2是第一映射表1的备份。也就是说,第一映射表1包括用于管理PRAM的数据的映射表信息。第二映射表2包括在第一映射表1更新之前包含在第一映射表1中的之前映射表信息。如图10所示,第一和第二映射表的每一个都包括物理地址,逻辑地址和对应的标志数据。
对应于第一映射表1和第二映射表2的第一映射表信息和第二映射表信息包括指示各自映射表有效和无效状态的表标志数据。也就是说,用于当前使用的映射表的映射表信息包括有效表标志数据,而用于备份(或之前使用的)映射表的映射表信息包括无效表标志数据。所述标志数据可实质等同于上述图10中代表页面数据状态的标志数据。
更特别地,当第一映射表1是当前使用的映射表并且第二映射表2是备份映射表时,对应的映射表信息分别包括表示有效状态的表标志数据0x0000和表示无效状态的表标志数据0xFFFF。
所述数据管理模块140管理表标志数据,从而第一和第二映射表信息没有同时进入有效状态0x0000。也就是说,当第一映射表1的表标志数据是0x0000,第二映射表2的表标志数据是0xFFFF或!(0x0000)。在此,当所述表标志数据是!(0x0000),其表示当表标志数据的更新电源被切断时的时间,或者表示初始表的状态。
在不同实施例的数据管理方法中,映射表根据磨损平衡(wear leveling)被更新以将对应一逻辑地址的物理地址改变为新的逻辑地址。
图12是按照本发明示例性实施方式描述映射表更新方法的框图,其中第二映射表2变为当前使用的映射表。如图12,映射表的更新过程如下。首先,第二映射表2被更新以将新物理地址新P0关联至逻辑地址L0。然后,第二映射表信息被更新为包括指示有效状态的0x0000的表标志数据。同时,第一映射表1的第一映射表信息被更新为包括指示无效状态的0xFFFF的表标志数据,完成所述更新操作。
因而,即使映射表更新过程中电源被切断,数据管理模块140中的现有映射表信息不会丢失。原因是该现有映射表信息仍然保留在其它映射表信息中(例如,第一映射表1的映射表信息)。然而,本发明的数据管理方法可以更安全地管理数据。
图13是按照本发明示例性实施方式描述映射表更新过程的流程图。参照图5、7、12和13,所述映射表更新过程如下。
假设对于PRAM 120请求写操作,要写入的数据和地址被传输至存储***100。另外,为了方便解释可假设每一地址是一逻辑地址L0。在给存储***100供电时,第一映射表信息和第二映射表信息通过数据管理模块140从PRAM 120的元区124读出。在步骤S110,处于无效状态的映射表通过采用所读取的第一和第二映射表信息来定位。例如,通过包括在第一和第二映射表信息中的所述表标志数据,确定所述第一和第二映射表信息是否有效,从而来定位无效的映射表。如下所述,PRAM 120的数据是响应于按照表标志数据选择的映射表信息来管理的。
具有处于无效状态的表标志数据的映射表被选中,并且所请求的数据被写入所选的映射表中。例如,在初始状态,第一和第二映射表信息都是无效的。因而,在步骤S120,判断数据管理模块140的第一和第二映射表是否都无效。若第一和第二映射表都无效,其任一个可在步骤S125被选中作为将要被写入数据的映射表。
当在步骤S120确定第一和第二映射表中仅有一个无效,具有指示无效状态的映射表信息的映射表被选中。对应逻辑地址L0的物理地址从所述指示无效的映射表信息或者在步骤S125中选中的第一和第二映射表之一来确定。在S130,数据管理模块140确定对应于逻辑地址L0的物理地址P0是否可写。所述物理地址P0是否可写是基于与磨损平衡相关的已存储次数来确定的。
基于确定的结果,当所述物理地址P0不可写时,数据管理模块140改变已选映射表(例如,第二映射表2)的映射表信息,从而在步骤S135使一个新的可写物理地址新P0与逻辑地址L0关联。同时,在步骤S135,所述改变的第二映射表信息在PRAM 120的元区124被更新。
在PRAM 120中,在步骤S140所请求的数据按照所述第二映射表信息被写入对应新物理地址新P0的页面。该写操作可为PRAM的典型写操作。
在所述写操作完成之后,在步骤S150中,第二映射表信息中的表标志数据被更新为0x0000,指示有效状态,并且另一(如第一)映射表信息中的表标志数据被更新为0xFFFF,指示无效状态。如上所述,该映射表在数据管理模块140中被更新。
当所述第一映射表在无效状态,该标志数据从0x0000变为0xFFFF,并且当所述第二映射表在有效状态,该标志数据从0xFFFF变为0x0000。因而,即使在第二映射表正在更新为有效状态0x0000时电源被切断,如前述,该第二映射表的标志数据也将具有除0xFFFF和0x0000之外的值。但是,由于第一映射表包含在先的映射表信息,该在先数据仍然可被恢复。即使当第二映射表的所述标志数据具有0xFFFF(指示无效状态),映射表的完整性仍可保证。
另一方面,在当前映射表(如第一映射表)被更新至无效状态(如0xFFFF)时,电源可以被切断。此时,该第一映射表可以具有除0x0000或0xFFFF之外的任意值。当电源恢复时,该表标志数据从任意值变为0xFFFF。因而,具有任意值的第一映射表可表现为无效状态(即0xFFFF)。
图14是按照本发明实施方式描述当恢复供电时映射表变为无效的过程的流程图。如图5、7和14,当恢复供电时,表现映射表无效状态的过程如下所述。
在步骤S210中,所述数据管理模块140从所读取的映射表信息中扫描所有表标志数据。在步骤S220中,该数据管理模块140确定所述被扫描的表标志数据是否包括除0xFFFF和0x0000之外的任意值。当所述被扫描的表标志数据包括除0xFFFF和0x0000之外的任意值时,在步骤S225中,相应映射表的表标志数据用0xFFFF来更新,并且对应映射表的无效过程也被完成。
当所述被扫描的表标志数据包括0xFFFF或0x0000时,可假定在步骤S230中,映射表的更新已完成。该数据管理模块140接着在步骤S240确定所述映射表是否为最后的映射表。当没有其它映射表时,所述无效过程就完成。但是,当存在请求无效过程的另一映射表时,所述无效过程就转至步骤S210来处理所述另一映射表。
又如图5,按照本发明的实施例,代表映射表的状态的表标志数据按照如下进行管理。表示PRAM的最终状态的位0被用作代表映射表的有效状态B的表标志数据,使得对应有效状态B的表标志数据是0x0000。对应无效状态A的表标志数据是0xFFFF,对应未知有效状态C的表标志数据是除0x0000和0xFFFF外的值。此外,对应未知无效状态D的表标志数据是除0x0000之外的值。
在第一和/或第二映射表更新的时候,从无效状态A到有效状态B或从有效状态B到无效状态A的改变发生。特别的,从无效状态A变为有效状态B是当在所需数据被写入之后对应映射表变为有效时发生的。未知有效状态D变为无效状态A发生在电源恢复之后使未知有效状态D的当前映射表无效之时。从有效状态B变为未知有效状态C发生在映射表被无效并且所需数据被写入之后,在当前映射表无效期间电源突然断掉之时。从未知有效状态C变为无效状态A发生在电源恢复之后使未知有效状态C的当前映射表无效之时。
如上所述,无需擦除操作的非易失性存储设备的数据管理方法通过扫描标志数据来确定相应页面是有效还是无效。
虽然在此结合典型实施例示出并阐述了本发明,但是本领域的技术人员显然可以在不脱离由附加的权利要求定义的本发明的精神和范围下作出各种改变。
优先权声明
要求于2007年10月31日在韩国知识产权局申请的韩国专利申请号为NO.10-2007-0110337的优先权,在此一并引用其主题。
Claims (15)
1、一种非易失性存储设备的数据管理方法,该方法包括:
写入数据;并且
表示该数据的状态,所述状态包括多个可能状态中的一个,
其中多种可能状态中对应最终操作的状态被确定为数据的有效状态。
2、如权利要求1的方法,其中所述非易失性存储设备为可重写的。
3、如权利要求2的方法,其中所述多个可能状态包括晶体状态和非晶态,所述晶体状态是数据的有效状态而所述非晶态是数据的无效状态。
4、如权利要求3的方法,其中所述数据的多个可能状态还包括未知有效状态和未知无效状态。
5、如权利要求4的方法,其中当表示所述数据状态时电源突然被切断,表示所述未知有效状态或未知无效状态。
6、如权利要求1的方法,其中表示状态变化的终值的标志数据0x0000被用作有效状态,而标志数据0xFFFF被用作无效状态。
7、如权利要求1的方法,其中所述数据按页面单元写入并且按包括多个页面单元的逻辑页面进行管理。
8、如权利要求7的方法,其中该非易失性存储设备通过映射表来管理,所述映射表识别页面以及相应的标志数据,所述标志数据表示页面的数据状态。
9、一种包括第一映射表和第二映射表的非易失性存储设备的更新映射表的方法,该方法包括:
当在第一映射表中对应于逻辑地址的当前物理地址不可写时,通过映射对应于逻辑地址的新物理地址来更新具有无效状态的第二映射表;并且
指明第二映射表为有效状态而第一映射表为无效状态。
10、如权利要求9的方法,进一步包括:
当在写请求期间第一和第二映射表的每一个都处于无效状态时,选择第一和第二映射表之一作为用于写数据的映射表。
11、如权利要求9的方法,其中所述非易失性存储设备为可重写的。
12、如权利要求11的方法,其中数据通过该非易失性存储设备中的多种状态来表示,多种状态中的最终操作的状态被确定为第一和第二映射表的有效状态。
13、如权利要求12的方法,其中该第一和第二映射表包括表示有效和无效状态的表标志数据。
14、如权利要求13的方法,其中表标志数据0x0000被用作映射表的有效状态,而表标志数据0xFFFF被用作映射表的无效状态。
15、如权利要求9的方法,还包括:
当第一映射表被指示处于无效状态期间电源被切断,然后又恢复供电时,第一映射表的表标志数据被指示为无效状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR110337/07 | 2007-10-31 | ||
KR10-2007-0110337 | 2007-10-31 | ||
KR1020070110337A KR101437397B1 (ko) | 2007-10-31 | 2007-10-31 | 비휘발성 메모리 장치의 데이터 관리 방법 및 맵핑 테이블업데이트 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101458961A true CN101458961A (zh) | 2009-06-17 |
CN101458961B CN101458961B (zh) | 2014-06-18 |
Family
ID=40582642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810189548.XA Active CN101458961B (zh) | 2007-10-31 | 2008-10-31 | 非易失性存储设备中数据管理方法和映射表更新方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7907441B2 (zh) |
KR (1) | KR101437397B1 (zh) |
CN (1) | CN101458961B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375779A (zh) * | 2010-08-16 | 2012-03-14 | 深圳市朗科科技股份有限公司 | 一种数据处理方法以及数据处理模块 |
CN102483714A (zh) * | 2009-07-24 | 2012-05-30 | 苹果公司 | 恢复索引页 |
CN104182362A (zh) * | 2013-05-24 | 2014-12-03 | 联想(北京)有限公司 | 一种数据使用控制方法及移动存储设备 |
CN104636414A (zh) * | 2013-11-08 | 2015-05-20 | 三星电子株式会社 | 提供对更新后的文件的访问的方法和执行该方法的计算机 |
KR20160146506A (ko) * | 2015-06-12 | 2016-12-21 | 삼성전자주식회사 | 파일 액세스 방법, 컴퓨터, 및 컴퓨터-읽기 가능한 매체에 실행 가능한 소프트웨어 제품 |
CN107025185A (zh) * | 2016-02-01 | 2017-08-08 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN107102951A (zh) * | 2016-02-19 | 2017-08-29 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器储存装置 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8154904B2 (en) * | 2009-06-19 | 2012-04-10 | Sandisk 3D Llc | Programming reversible resistance switching elements |
KR101795417B1 (ko) * | 2010-11-08 | 2017-11-10 | 삼성전자주식회사 | 비휘발성 메모리 셀 어레이 및 비휘발성 메모리 장치 |
US8806171B2 (en) * | 2011-05-24 | 2014-08-12 | Georgia Tech Research Corporation | Systems and methods providing wear leveling using dynamic randomization for non-volatile memory |
TWI486767B (zh) * | 2012-06-22 | 2015-06-01 | Phison Electronics Corp | 資料儲存方法、記憶體控制器與記憶體儲存裝置 |
KR101993704B1 (ko) | 2012-08-24 | 2019-06-27 | 삼성전자주식회사 | 플래시 메모리를 기반으로 하는 저장 장치 및 플래시 메모리를 제어하는 메모리 컨트롤러의 쓰기 메모리 블록 할당 방법 |
US9489294B2 (en) | 2013-06-19 | 2016-11-08 | Sandisk Technologies Llc | Data encoding for non-volatile memory |
US9489300B2 (en) * | 2013-06-19 | 2016-11-08 | Sandisk Technologies Llc | Data encoding for non-volatile memory |
US9489299B2 (en) | 2013-06-19 | 2016-11-08 | Sandisk Technologies Llc | Data encoding for non-volatile memory |
US9684658B2 (en) * | 2013-11-08 | 2017-06-20 | Samsung Electronics Co., Ltd. | SWAT command and API for atomic swap and trim of logical pages |
US9390008B2 (en) | 2013-12-11 | 2016-07-12 | Sandisk Technologies Llc | Data encoding for non-volatile memory |
US10169125B2 (en) * | 2015-05-29 | 2019-01-01 | International Business Machines Corporation | Re-encoding data in a dispersed storage network |
CN106776362B (zh) * | 2015-11-24 | 2019-12-03 | 中芯国际集成电路制造(上海)有限公司 | 存储器的控制方法及装置 |
US10147501B1 (en) * | 2017-05-30 | 2018-12-04 | Seagate Technology Llc | Data storage device with rewriteable in-place memory |
KR20200024615A (ko) | 2018-08-28 | 2020-03-09 | 정경양 | 휴대용 난방배관 세척장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6513095B1 (en) * | 1999-05-31 | 2003-01-28 | Sharp Kabushiki Kaisha | File system with assured integrity incorporating semiconductor memory device |
CN1487530A (zh) * | 2002-08-27 | 2004-04-07 | ������������ʽ���� | 非易失性存储装置 |
US20070143531A1 (en) * | 2005-12-15 | 2007-06-21 | Atri Sunil R | Power loss recovery for bit alterable memory |
CN101038789A (zh) * | 2006-03-16 | 2007-09-19 | 三星电子株式会社 | 非易失性相变存储设备和相关的编程-挂起-读取操作 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3858538B2 (ja) | 1999-11-19 | 2006-12-13 | セイコーエプソン株式会社 | フラッシュメモリのデータ管理装置 |
US6834331B1 (en) | 2000-10-24 | 2004-12-21 | Starfish Software, Inc. | System and method for improving flash memory data integrity |
US6480438B1 (en) | 2001-06-12 | 2002-11-12 | Ovonyx, Inc. | Providing equal cell programming conditions across a large and high density array of phase-change memory cells |
US6487113B1 (en) | 2001-06-29 | 2002-11-26 | Ovonyx, Inc. | Programming a phase-change memory with slow quench time |
US6813177B2 (en) * | 2002-12-13 | 2004-11-02 | Ovoynx, Inc. | Method and system to store information |
US7117326B2 (en) | 2003-06-26 | 2006-10-03 | Intel Corporation | Tracking modifications to a memory |
US7606111B2 (en) * | 2007-04-26 | 2009-10-20 | Super Talent Electronics, Inc. | Synchronous page-mode phase-change memory with ECC and RAM cache |
-
2007
- 2007-10-31 KR KR1020070110337A patent/KR101437397B1/ko active IP Right Grant
-
2008
- 2008-10-31 US US12/262,292 patent/US7907441B2/en active Active
- 2008-10-31 CN CN200810189548.XA patent/CN101458961B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6513095B1 (en) * | 1999-05-31 | 2003-01-28 | Sharp Kabushiki Kaisha | File system with assured integrity incorporating semiconductor memory device |
CN1487530A (zh) * | 2002-08-27 | 2004-04-07 | ������������ʽ���� | 非易失性存储装置 |
US20070143531A1 (en) * | 2005-12-15 | 2007-06-21 | Atri Sunil R | Power loss recovery for bit alterable memory |
CN101038789A (zh) * | 2006-03-16 | 2007-09-19 | 三星电子株式会社 | 非易失性相变存储设备和相关的编程-挂起-读取操作 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102483714A (zh) * | 2009-07-24 | 2012-05-30 | 苹果公司 | 恢复索引页 |
CN102483714B (zh) * | 2009-07-24 | 2015-06-10 | 苹果公司 | 恢复闪存存储器设备中的索引页的***及方法 |
CN102375779A (zh) * | 2010-08-16 | 2012-03-14 | 深圳市朗科科技股份有限公司 | 一种数据处理方法以及数据处理模块 |
CN102375779B (zh) * | 2010-08-16 | 2015-08-19 | 深圳市朗科科技股份有限公司 | 一种数据处理方法以及数据处理模块 |
CN104182362B (zh) * | 2013-05-24 | 2019-07-26 | 联想(北京)有限公司 | 一种数据使用控制方法及移动存储设备 |
CN104182362A (zh) * | 2013-05-24 | 2014-12-03 | 联想(北京)有限公司 | 一种数据使用控制方法及移动存储设备 |
CN104636414A (zh) * | 2013-11-08 | 2015-05-20 | 三星电子株式会社 | 提供对更新后的文件的访问的方法和执行该方法的计算机 |
CN104636414B (zh) * | 2013-11-08 | 2019-11-05 | 三星电子株式会社 | 提供对更新后的文件的访问的方法和执行该方法的计算机 |
KR20160146506A (ko) * | 2015-06-12 | 2016-12-21 | 삼성전자주식회사 | 파일 액세스 방법, 컴퓨터, 및 컴퓨터-읽기 가능한 매체에 실행 가능한 소프트웨어 제품 |
KR102316198B1 (ko) | 2015-06-12 | 2021-10-25 | 삼성전자주식회사 | 파일 액세스 방법, 컴퓨터, 및 컴퓨터-읽기 가능한 매체에 실행 가능한 소프트웨어 제품 |
CN107025185A (zh) * | 2016-02-01 | 2017-08-08 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN107025185B (zh) * | 2016-02-01 | 2020-09-11 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN107102951A (zh) * | 2016-02-19 | 2017-08-29 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器储存装置 |
CN107102951B (zh) * | 2016-02-19 | 2019-08-06 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器储存装置 |
Also Published As
Publication number | Publication date |
---|---|
US7907441B2 (en) | 2011-03-15 |
KR20090044296A (ko) | 2009-05-07 |
KR101437397B1 (ko) | 2014-09-05 |
US20090109788A1 (en) | 2009-04-30 |
CN101458961B (zh) | 2014-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101458961B (zh) | 非易失性存储设备中数据管理方法和映射表更新方法 | |
CN101887350B (zh) | 用于存储总线接口的pcm存储器 | |
CN101828234B (zh) | 信息处理*** | |
CN105183379B (zh) | 一种混合内存的数据备份***及方法 | |
US8601202B1 (en) | Full chip wear leveling in memory device | |
CN108874302B (zh) | 数据存储装置及其操作方法 | |
US7969806B2 (en) | Systems and methods for writing to a memory | |
CN103106149B (zh) | 半导体器件 | |
CN108121680B (zh) | 存储装置、电子***以及操作电子装置的方法 | |
US20150261668A1 (en) | Semiconductor Device and Method of Controlling Non-Volatile Memory Device | |
KR102549173B1 (ko) | 메모리 장치 | |
CN107886987B (zh) | 存储***及其操作方法 | |
CN101681313A (zh) | 存储器*** | |
US10170181B2 (en) | Variable resistance memory device including bidirectional switch, memory system including the same, and operating method thereof | |
KR20150017449A (ko) | 가변 저항 메모리 장치 및 그것을 포함하는 가변 저항 메모리 시스템 | |
WO2010038736A1 (ja) | 半導体装置 | |
US11636895B2 (en) | Non-volatile resistive memory device including a plurality of write modes | |
KR101365683B1 (ko) | 가변 저항 메모리 장치, 그것의 플렉서블 프로그램 방법,그리고 그것을 포함하는 메모리 시스템 | |
US8250289B2 (en) | Phase-change random access memory and method of setting boot block therein | |
US11645004B2 (en) | Real-time update method for a differential memory, differential memory and electronic system | |
CN110245092A (zh) | 存储器***、其操作方法以及电子装置 | |
US20120117344A1 (en) | Computing system and hibernation method thereof | |
US20200285573A1 (en) | Memory device and method of operating the same | |
CN114822654A (zh) | 使用多种类型的写入操作清除存储器块 | |
JP2006040168A (ja) | フラッシュメモリシステム及びフラッシュメモリの制御方法 |
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 |