CN107590031A - 存储器管理系统及其方法 - Google Patents

存储器管理系统及其方法 Download PDF

Info

Publication number
CN107590031A
CN107590031A CN201710552316.5A CN201710552316A CN107590031A CN 107590031 A CN107590031 A CN 107590031A CN 201710552316 A CN201710552316 A CN 201710552316A CN 107590031 A CN107590031 A CN 107590031A
Authority
CN
China
Prior art keywords
region
row
virtual
virtual region
mistake
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
CN201710552316.5A
Other languages
English (en)
Other versions
CN107590031B (zh
Inventor
金善郁
金熩权
全渽永
崔圭铉
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.)
Industry Academy Collaboration Foundation of Korea University
Original Assignee
Industry Academy Collaboration Foundation of Korea University
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 Industry Academy Collaboration Foundation of Korea University filed Critical Industry Academy Collaboration Foundation of Korea University
Publication of CN107590031A publication Critical patent/CN107590031A/zh
Application granted granted Critical
Publication of CN107590031B publication Critical patent/CN107590031B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/808Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Hardware Redundancy (AREA)

Abstract

公开了一种存储器管理系统及其方法。亦即,根据本发明将有限的备用存储单元最优地分布(或分配)到系统中的物理区域和虚拟区域以便修复存储器的错误,从而增加存储器芯片的产率。

Description

存储器管理系统及其方法
技术领域
本解决方案涉及一种存储器管理系统及其方法,并且更特别地涉及一种存 储器管理系统及其方法,其将有限的备用单元最优地分布(或分配)成系统中 的物理区域和虚拟区域以便修复存储器的错误,并且在分布时根据备用存储单 元(spare cell)的分配结果在由相应存储介质中的物理区域和虚拟区域管理的错 误地址存储空间中存储K位的位置信息、M+N-K位的位置信息以及错误地址。
背景技术
在由多个子阵列构成的存储器系统中,可以以子阵列为单位使用备用行、 备用列等中的一个或多个来执行错误修复。
在此系统中,当在特定子阵列中产生大量错误时,将在其中存储关于错误 位置的信息的存储空间是不足的,使得不能用存储备用存储单元映射信息的常 规结构来修复错误。
此外,当一个存储器芯片由具有较小尺寸的多个子阵列构成时,以子阵列 为单位在其中产生错误的芯片上执行修复。
当在某些子阵列中产生大量错误而在其它子阵列中产生较少错误时,如果 通过使用备用存储单元来恢复错误,则芯片的修复概率由于在其中产生大量错 误的子阵列而降低。相反地,在其中产生较少错误的子阵列中保留用于错误信 息的存储空间。
[相关技术文献]
发明内容
本解决方案的目的是提供一种存储器管理系统及其方法,其将有限的备用 存储单元分布(或分配)成系统中的物理区域和虚拟区域中的一个或多个以便 修复存储器的错误中的一个或多个。
本解决方案的另一目的是提供一种其中子阵列是作为单元区域的物理区域 的存储器管理系统及其控制方法,该控制方法将通过将物理区域重组而获得的 虚拟区域最优地分布成单独备用存储单元以优化错误修复。
本解决方案的另一目的是提供一种存储器管理系统及其方法,其提供备用 存储单元的分配,该分配同时地不仅满足虚拟区域的设计目标值,而且满足物 理区域的设计目标值,并且在分配时根据备用存储单元的分配结果在由相应存 储介质中的物理区域和虚拟区域管理的错误地址存储空间中存储K位的位置信 息、M+N-K位的位置信息以及错误地址。
本解决方案的另一目的是提供一种存储器管理系统及其方法,其对由快速 列优先算法(fast column-first algorthm)和快速行优选算法(fast column-first algorthm)使用列或行选择的虚拟区域重复地执行修复,并且然后对下一虚拟区 域执行修复。
根据本解决方案的一方面,提供了一种存储器管理方法,其借助于分析装 置使用不同的备用存储单元来修复物理区域和虚拟区域中的错误。本方法包括: 借助于分析装置,通过用物理区域中的备用行的地址替换错误地址来修复错误; 以及借助于分析装置,通过用虚拟区域中的备用列的地址替换错误地址来修复 错误。
根据本解决方案的另一方面,提供了一种存储器管理方法,包括借助于分 析装置优先地修复虚拟区域中的错误。
在某些情形中,优先地修复虚拟区域中的错误包括:借助于分析装置,生 成与物理区域和虚拟区域相关的错误信息管理表;借助于分析装置,选择虚拟 区域VQ,在该虚拟区域VQ中作为包括在错误信息管理表中的每个虚拟区域中 的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟 区域中可用的备用列的数目的CY之间的差具有最大值;借助于分析装置,检查 作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ是否等于或小于作 为选定虚拟区域VQ中的可用备用列的数目的CQ;以及作为检查结果,当在选 定虚拟区域VQ中AQ大于CQ时确定仅由备用列不能实现修复,并且为了使用备 用行来执行修复,借助于分析装置确定在虚拟区域VQ中是否存在大于0的RX, RX是每个物理区域中可用的备用行的数目,并且被针对所有物理区域PX预先设 定,其中,Q是其中具有错误的列的数目与备用列的数目之间的差具有最大值 的虚拟区域的值。
在那些及其它情形中,错误信息管理表表示用于物理区域PX和虚拟区域 VY的(fX,Y)、RX、CY和AY的关系,(fX,Y)是存储在由物理区域PX和虚拟区 域VY定义的存储单元(cell)中的未修复错误的数目,RX是每个虚拟区域中的备 用列的数目且AY是每个虚拟区域中的具有未修复错误的列的数目,并且X表示 物理区域且Y表示虚拟区域。
在那些及其它情形中,所述方法还可以包括:作为检查结果,当作为选定 虚拟区域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区 域VQ中的可用备用列的数目的CQ时,借助于分析装置确定错误修复已成功地 完成,在错误修复完成时根据备用存储单元的分配结果在由对应于虚拟区域的 存储介质中的物理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域 相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地 址,并且结束整个过程,其中,K位的位置信息的值和M+N-K的位置信息的值 被配置为向量,并且位的位置由对应于虚拟基本区域的键值的“0”和对应于虚拟子区域的键值的“1”配置,并且M、N和K是自然数且K等于或小于M+N。
在那些及其它情形中,所述方法还可以包括:当作为确定结果对于所有物 理区域PX而言不存在预先设定的大于0的RX(其为每个物理区域中可用的备用 行的数目)时,借助于分析装置确定错误修复失败并结束整个过程。
在那些及其它情形中,所述方法还可以包括:当不存在可用的备用行且虚 拟区域VQ的AY的值大于虚拟区域VQ的CY的值时,借助于分析装置确定错误 修复失败并结束整个过程,AY是每个虚拟区域中的具有未修复错误的列的数目, CY是每个虚拟区域中可用的备用列的数目,并且VQ是其中AY与CY之间的差 具有最大值的虚拟区域。
在那些及其它情形中,所述方法还可以包括:当作为确定结果对于虚拟区 域VQ的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备 用行的数目并被预先设定)时,借助于分析装置,选择其中(PX,VQ)具有错 误且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA, PA是物理区域PX中的一个且(PA,VQ)表示错误信息管理表的由PX和VQ定义 的存储单元;借助于分析装置,检查其中作为选定虚拟区域VQ中的具有未修复 错误的列的数目的AQ在对应于选定物理区域PA的(PA,VQ)中被减小最多的 行,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元;借助于分 析装置,将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的值减小如被备用 行修复的错误的数目一样多,(PA,VQ)表示错误信息管理表的由PA和VQ定 义的存储单元,并且(fA,Q)是存储在由PA和VQ定义的存储单元中的未修复错 误的数目;借助于分析装置,将作为对应于选定物理区域PA的未被修复且具有 错误的列的数目的AQ减小如被备用行修复的列的数目一样多,使得不需要错 误修复;借助于分析装置,将作为可用备用行的数目的RA减小如所使用备用行 的数目一样多;以及借助于分析装置,返回至选择其中作为包括在错误信息管 理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误 信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值 的虚拟区域VQ的过程,以重复地执行分配备用行的过程,直至作为选定虚拟区 域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ为止。
在那些及其它情形中,优先地修复虚拟区域中的错误包括:借助于分析装 置,生成与物理区域和虚拟区域有关的错误信息管理表;借助于分析装置,计 算差值AY﹣CY,该差值是作为包括在错误信息管理表中的每个虚拟区域中的具 有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域 中可用的备用列的数目的CY之间的差;借助于分析装置,基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应于差值AY﹣CY的虚拟区域VY排序;借助于 分析装置,按照所排序的顺序选择其中错误未被修复的虚拟区域VD;借助于分 析装置,主要检查作为选定虚拟区域VD中的具有未修复错误的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的数目的CD;以及作为主要 检查结果,当AD大于CD时,确定仅由备用列不能实现修复,并且为了使用备 用行来执行修复,借助于分析装置确定是否对于所有物理区域PX而言在虚拟区 域VD中存在大于0的RX,RX是每个物理区域中可用的备用行的数目,并且被 针对所有物理区域PX预先设定,其中,D是通过使用具有错误的列的数目和备 用列的数目之间的差值将虚拟区域按照递降顺序排序并按照所排序的顺序选择其中错误未被修复的虚拟区域而获得的值。
在那些及其它情形中,所述方法还可以包括:当作为确定结果对于虚拟区 域VD的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备 用行的数目并被预先设)时,借助于分析装置,选择其中(PX,VD)具有错误 且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA,PA是物理区域PX中的一个且(Px,VD)表示错误信息管理表的由PX和VD定义的 存储单元;借助于分析装置,检查其中作为选定虚拟区域VD中的具有未修复错 误的列的数目的AD在对应于选定物理区域PA的(PA,VD)中被减小最多的行,(PA,VD)表示错误信息管理表的由PA和VD定义的存储单元;借助于分析装 置,将对应于选定物理区域PA的(PA,VD)的(fA,D)的值减小如被备用行修 复的错误的数目一样多,(PA,VD)表示错误信息管理表的由PA和VD定义的 存储单元,并且(fA,D)是存储在由PA和VD定义的存储单元中的未修复错误的 数目;借助于分析装置,将作为对应于选定物理区域PA的未被修复且具有错误 的列的数目的AD减小如被备用行修复的列的数目一样多,使得不需要错误修复;借助于分析装置,将作为可用备用行的数目的RA减小如所使用备用行的数目一 样多;以及借助于分析装置,返回至主要检查作为选定虚拟区域VD中的具有未 修复错误的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的 数目的CD的过程,以重复地执行向选定虚拟区域VD分配备用行的过程,直至 作为选定虚拟区域AD中的具有未修复错误的列的数目的AD等于或小于作为选 定虚拟区域VD中可用的备用列的数目的CD为止。
在那些及其它情形中,所述方法还可以包括:当作为确定结果对于所有物 理区域PX而言不存在大于0的RX(其为每个物理区域中可用的备用行的数目且 是预先设定的)时,借助于分析装置确定错误修复失败并结束整个过程。
在那些及其它情形中,所述方法还可以包括:作为主要检查结果,当作为 选定虚拟区域VD中的具有未修复错误的列的数目的AD等于或小于虚拟区域VD中可用的备用列的数目的CD时,借助于分析装置,辅助地检查作为所有虚拟区 域VY中的具有未修复错误的列的数目的AY是否等于或小于作为所有虚拟区域 VY中可用的备用列的数目的CY;作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY等于或小于作为所有虚拟区域VY中可用 的备用列的数目的CY时,借助于分析装置确认错误修复已成功地完成,在错误 修复完成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质100 中的物理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域相关的K 位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址并且结束 整个过程;并且作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错 误的列的数目的AY大于作为所有虚拟区域VY中可用的备用列的数目的CY时, 借助于分析装置,选择所排序的虚拟区域VY之中的具有未修复错误的下一虚拟 区域,其中,K位的位置信息的值和M+N-K的位置信息的值被配置为向量,并 且位的位置由对应于虚拟基本区域的键值的“0”和对应于虚拟子区域的键值的“1”配置,并且M、N和K是自然数且K等于或小于M+N。
在那些及其它情形中,所述方法还可以包括:当不存在可用的备用行且虚 拟区域VQ的AY的值大于虚拟区域VQ的CY的值时,借助于分析装置确定错误 修复失败并结束整个过程,AY是每个虚拟区域中的具有未修复错误的列的数目, CY是每个虚拟区域中可用的备用列的数目,并且VQ是其中AY与CY之间的差 具有最大值的虚拟区域。
根据本解决方案的另一方面,提供了一种存储器管理系统,包括:存储介 质,其存储与物理区域和虚拟区域相关的错误信息管理表;以及分析装置,其 优先地修复虚拟区域中的错误。
在某些情形中,所述分析装置可以生成与物理区域和虚拟区域相关的错误 信息管理表,选择虚拟区域VQ,在该虚拟区域VQ中作为包括在错误信息管理 表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信 息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值, 检查作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ是否等于或小 于作为选定虚拟区域VQ中的可用备用列的数目的CQ,并且作为检查结果,当 作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ大于作为虚拟区域 VQ中的可用备用列的数目的CQ时,确定在虚拟区域VQ中是否存在大于0的 RX,该RX为每个物理区域中可用的备用行的数目且被针对所有物理区域PX预 先设定,并且其中,Q是其中具有错误的列的数目与备用列的数目之间的差具 有最大值的虚拟区域的值。
在那些及其它情形中,作为检查结果,当作为选定虚拟区域VQ中的具有未 修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的 数目的CQ时,分析装置确定错误修复已成功地完成,在错误修复完成时根据备 用存储单元的分配结果在由对应于虚拟区域的存储介质中的物理区域和虚拟区 域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟 区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程,K位的位 置信息的值和M+N-K的位置信息的值被配置为向量,并且位的位置由对应于虚 拟基本区域的键值的“0”和对应于虚拟子区域的键值的“1”配置,并且M、N和K是自然数且K等于或小于M+N。
在那些及其它情形中,当作为确定结果对于所有物理区域PX而言不存在预 先设定的大于0的RX(其为每个物理区域中可用的备用行的数目)时,分析装 置确定错误修复失败并结束整个过程。
在那些及其它情形中,当作为确定结果对于所有物理区域PX而言不存在预 先设定的大于0的RX(其为每个物理区域中可用的备用行的数目)时,分析装 置确定错误修复失败并结束整个过程。
在那些及其它情形中,当作为确定结果对于虚拟区域VQ的所有物理区域 PX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设 定的)时,分析装置:选择其中(PX,VQ)具有错误且作为物理区域中可用的 备用行的数目的RX具有最大值的一个物理区域PA,PA是物理区域PX中的一个 且(PA,VQ)表示错误信息管理表的由PX和VQ定义的存储单元;检查其中作 为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ在对应于选定物理区 域PA的(PA,VQ)中被减小最多的行,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元;将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的值 减小如被备用行修复的错误的数目一样多,(PA,VQ)表示错误信息管理表的由 PA和VQ定义的存储单元,并且(fA,Q)是存储在由PA和VQ定义的存储单元中 的未修复错误的数目;将作为对应于选定物理区域PA的未被修复且具有错误的 列的数目的AQ减小如被备用行修复的列的数目一样多,使得不需要错误修复; 将作为可用备用行的数目的RA减小如所使用备用行的数目一样多;以及返回至选择其中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的 列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列 的数目的CY之间的差具有最大值的虚拟区域VQ的过程,以重复地执行分配备 用行的过程,直至作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ为止。
根据本解决方案的另一方面,提供了一种存储器管理方法,包括借助于分 析装置优先地修复物理区域中的错误。
在某些情形中,优先地修复物理区域中的错误包括:借助于分析装置,生 成与物理区域和虚拟区域相关的错误信息管理表;选择虚拟区域VQ,在该虚拟 区域VQ中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的 列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列 的数目的CY之间的差具有最大值;借助于分析装置,确定对于所有物理区域PX而言存在大于0的RX,其为每个物理区域中可用的备用行的数目且是预先设定 的;以及,作为确定结果,当对于所有物理区域PX而言不存在预先设定的的大 于0的RX(其为每个物理区域中可用的备用行的数目)时,借助于分析装置, 检查作为所有虚拟区域中的具有未修复错误的列的数目的AY是否等于或小于作 为虚拟区域中的可用备用列的数目的CY,其中,Q是其中具有错误的列的数目 与备用列的数目之间的差具有最大值的虚拟区域的值。
在那些及其它情形中,所述方法还可以包括:作为辅助检查结果,当作为 所有虚拟区域中的具有未修复错误的列的数目的AY等于或小于作为所有虚拟区 域中可用的备用列的数目的CY时,确认错误修复已成功地完成,在错误修复完 成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质100中的物 理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位 置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址并且结束该整个 过程,其中,K位的位置信息的值和M+N-K的位置信息的值被配置为向量,并 且位的位置由对应于虚拟基本区域的键值的“0”和对应于虚拟子区域的键值的 “1”配置,并且M、N和K是自然数且K等于或小于M+N。
在那些及其它情形中,所述方法还可以包括:作为检查结果,当作为所有 虚拟区域中的具有未修复错误的列的数目大于作为虚拟区域中的可用备用列的 数目的CY时,借助于分析装置,确定仅通过使用虚拟区域VY中可用的备用行 不能实现修复且错误修复失败,并结束整个过程。
在那些及其它情形中,所述方法还可以包括:当作为确定结果对于虚拟区 域VQ的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备 用行的数目且是预先设定)时,借助于分析装置,选择其中(PX,VQ)具有错 误且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA, PA是物理区域PX中的一个且(PA,VQ)表示错误信息管理表的由PX和VQ定义 的存储单元;借助于分析装置,检查其中作为选定虚拟区域VQ中的具有未修复 错误的列的数目的AQ在对应于选定物理区域PA的(PA,VQ)中被减小最多的 行,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元;借助于分析 装置,将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的值减小如被备用行 修复的错误的数目一样多,(PA,VQ)表示错误信息管理表的由PA和VQ定义的 存储单元,并且(fA,Q)是存储在由PA和VQ定义的存储单元中的未修复错误的 数目;借助于分析装置,将作为对应于选定物理区域PA的未被修复且具有错误 的列的数目的AQ减小如被备用行修复的列的数目一样多,使得不需要错误修复;借助于分析装置,将作为可用备用行的数目的RA减小如所使用备用行的数目一 样多;以及借助于分析装置,返回至选择其中作为包括在错误信息管理表中的 每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理 表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值的虚拟区 域VQ的过程,以重复地执行分配备用行的过程,直至作为选定虚拟区域VQ中 的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用 备用列的数目的CQ为止。
在那些及其它情形中,优先地修复物理区域中的错误包括:借助于分析装 置,生成与物理区域和虚拟区域有关的错误信息管理表;借助于分析装置,计 算差值AY﹣CY,该差值是作为包括在错误信息管理表中的每个虚拟区域中的具 有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域 中可用的备用列的数目的CY之间的差;借助于分析装置,基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应于差值AY﹣CY的虚拟区域VY排序;借助于 分析装置,按照所排序的顺序选择其中错误未被修复的虚拟区域VD;借助于分 析装置,主要检查作为选定虚拟区域VD中的具有未修复错误的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的数目的CD;作为主要检查 结果,当AD大于CD时,确定仅由备用列不能实现修复,并且为了使用备用行 来执行修复,借助于分析装置,主要确定对于所有物理区域PX而言在虚拟区域 VD中是否存在大于0的RX,RX是每个物理区域中可用的备用行的数目,并且 被针对所有物理区域PX预先设定;当作为主要确定结果对于虚拟区域VD的所 有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目 并被预先设定)时,借助于分析装置,选择其中(PX,VD)具有错误且作为物 理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA,PA是物理 区域PX中的一个且(PX,VD)表示错误信息管理表的由PX和VD定义的存储单 元;以及借助于分析装置,检查其中作为选定虚拟区域VD中的具有未修复错误 的列的数目的AD在对应于选定物理区域PA的(PA,VD)中被减小最多的行, (PA,VD)表示错误信息管理表的由PA和VD定义的存储单元,其中,D是通 过使用具有错误的列的数目和备用列的数目之间的差值将虚拟区域按照递降顺 序排序并按照所排序的顺序选择其中错误未被修复的虚拟区域而获得的值。
在那些及其它情形中,所述方法还可以包括:借助于分析装置,将对应于 选定物理区域PA的(PA,VD)的(fA,D)的值减小如被备用行修复的错误的数 目一样多,(PA,VD)表示错误信息管理表的由PA和VD定义的存储单元,并且 (fA,D)是存储在由PA和VD定义的存储单元中的未修复错误的数目;借助于分 析装置,将作为对应于选定物理区域PA的未被修复且具有错误的列的数目的AD减小如被备用行修复的列的数目一样多,使得不需要错误修复;以及借助于分 析装置,将作为可用备用行的数目的RA减小如所使用备用行的数目一样多;以及借助于分析装置,返回至主要检查作为选定虚拟区域VD中的具有未修复错误 的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的数目的CD的过程,以重复地执行向选定虚拟区域VD分配备用行的过程,直至作为选定虚 拟区域VD中的具有未修复错误的列的数目的AD等于或小于作为选定虚拟区域 VD中可用的备用列的数目的CD为止。
在那些及其它情形中,所述方法还可以包括:当作为主要确定结果对于所 有物理区域PX而言不存在预先设定的大于0的RX(其为每个物理区域中可用的 备用行的数目)时,借助于分析装置确定错误修复失败并结束整个过程。
在那些及其它情形中,所述方法还可以包括:作为主要检查结果,当作为 选定虚拟区域VD中的具有未修复错误的列的数目的AD等于或小于虚拟区域VD中可用的备用列的数目的CD时,借助于分析装置,辅助地检查作为所有虚拟区 域VY中的具有未修复错误的列的数目的AY是否等于或小于作为所有虚拟区域 VY中可用的备用列的数目的CY;作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY等于或小于所有虚拟区域VY中可用的备 用列的数目的CY时,借助于分析装置,辅助地确定对于所有物理区域PX而言 是否存在大于0的RX,该RX是每个物理区域中可用的备用行的数目且是预先 设定的;作为辅助确定结果,当对于所有物理区域RX而言存在大于0的RX(其 为每个物理区域中可用的备用行的数目且是预先设定的)时,借助于分析装置, 按照所排序的顺序选择其中错误未被修复的下一虚拟区域VD;作为检查结果, 当对于所有物理区域PX而言不存在大于0的RX(其为每个物理区域中可用的备 用行的数目且是预先设定的)时,借助于分析装置,确定错误修复已成功地完 成,在错误修复完成时在对应于虚拟区域的存储介质中的由物理区域和虚拟区 域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程;以及作为 辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY大于作为所有虚拟区域VY中可用的备用列的数目的CY时,借助于分析装置, 返回至选择所有排序的虚拟区域VY之中的其中错误未被修复的虚拟区域的过 程。
在那些及其它情形中,所述方法还可以包括:当不存在可用的备用行且虚 拟区域VQ的AY的值大于虚拟区域VQ的CY的值时,借助于分析装置确定错误 修复失败并借助整个过程,AY是每个虚拟区域中的具有未修复错误的列的数目, CY是每个虚拟区域中可用的备用列的数目,并且VQ是其中AY与CY之间的差 具有最大值的虚拟区域。
根据本解决方案,有限的备用存储单元被最优地分布(或分配)成系统中 的物理区域和虚拟区域以便修复存储器的错误,从而增加了存储器芯片的产率。
此外,根本解决方案,子阵列充当作为单元区域的物理区域,并且通过将 子阵列重组而获得的虚拟区域在单独备用存储单元中最优地分布以使错误修复 最大化,从而增加根据系统的目的利用额外备用存储单元的可能性。
根据本解决方案,可以提供备用存储单元的分配,其同时地不仅满足虚拟 区域的设计目标值,而且满足物理区域的设计目标值。还可以通过在错误修复 完成时根据备用存储单元的分配结果在由存储介质中的物理区域和虚拟区域管 理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域 相关的M+N-K位的位置信息以及错误地址而将最小数目的备用存储单元用于 物理区域和虚拟区域来提供最优效率。
根据本解决方案,可以通过使用列和行用快速列优先算法和快速行优先算 法对选定虚拟区域重复地执行修复且然后对下一虚拟区域执行修复来缩短整个 修复时间。
附图说明
图1是图示出用由多个单元区域配置的信息存储表和找出最优信息存储的 分析装置配置的整个分析系统的配置的框图。
图2是图示出将作为用于使信息存储位置散列的单元的物理基本区域划分 成具有相同尺寸的多个物理子区域的示例的视图。
图3至图5是图示出当使用包括错误块的4×4存储器块来实现4路组相联 高速缓存器时配置最优高速缓冲存储器的示例的视图。
图6、图7和图8是图示出将本解决方案应用于在诸如DRAM之类的存储 器芯片中存储错误地址的步骤的示例的视图。
图9是图示出用来向最优备用存储单元分配错误存储单元的错误信息管理 表的视图。
图10是图示出基于列优先存储器管理方法的流程图。
图11至图27是图示出使用列优先算法来对错误存储单元执行修复的示例 的视图。
图28是图示出基于行优先存储器管理方法的流程图。
图29是图示出基于快速列优先存储器管理方法的流程图。
图30是图示出其中布置差值的状态的视图。
图31至图46是图示出使用快速列优先算法对错误存储单元执行修复的示 例的视图。
图47是图示出基于快速行优先存储器管理方法的流程图。
具体实施方式
应注意的是在本发明中使用的技术术语被用来描述特定示例性实施例而不 意图限制本发明。此外,应将在本发明中使用的技术术语解释成具有本发明所 涉及领域的技术人员一般地理解的意义,除非在本发明中被具体地定义成具有 不同的意义,而不应解释为过于广泛的意义或过于受限的意义。此外,如果在 本发明中使用的技术术语是并未确切地描述本发明的精神的不正确技术术语, 应将该技术术语替换为或理解为本领域的技术人员可以正确地理解的技术术 语。此外,应如在词典中定义的那样或者根据上下文来解释在本发明中使用的 一般术语,而不应解释为过于受限的意义。
在本发明中使用的单数形式可以包括复数形式,除非其在上下文中具有明 显相反的意义。不应将本发明中的诸如“由...配置”或“包括”之类的术语解释为必 须包括在本发明中描述的所有的多个组件或多个不足及,但是不应解释成包括 组件或步骤中的某些或者进一步包括附加组件或步骤。
此外,可以使用包括在本发明中使用的诸如第一或第二之类的叙述的术语 来解释组件,但是组件不受该术语的限制。该术语仅被用于将一个组件与另一 组件区别开。例如,在不脱离本发明的范围的情况下,可以将第一组件称为第 二组件,并且同样地,还可以将第二组件称为第一组件。
在下文中,将参考附图来详细地描述根据本公开的示例性实施例,并且用 相同的参考标号来表示相同或类似组件而不考虑参考标号,并且将省略其重复 描述。
在描述本公开时,但确定相关公开已知的技术的详细描述可能使本公开的 主旨含糊难懂时,将省略其详细描述。此外,应注意的是附图仅仅被用于容易 地认识到本公开的精神,而不应将其解释为本公开的精神受到附图的限制。
图1是图示出根据本发明的示例性实施例的用由多个单元区域配置的信息 存储表和找出最优信息存储的分析装置配置的整个分析系统10的配置的框图。
如图1中所示,分析系统10包括存储介质10和分析装置200。然而,并非 图1中所示的分析系统10的所有组件都是必不可少的组件,可以用比图1中所 示的组件更多的组件或更少的组件来实现分析系统10。
存储介质10可以是动态随机存取存储器(DRAM)、随机存取储器(RAM)、 静态随机存取存储器(SRAM)、只读存储器(ROM)、电可擦可编程只读存 储器(EEPROM)、可编程只读存储器(PROM)、相变存储器(PCM)以及 磁阻随机存取储器(MRAM)中的任何一个。
此外,存储介质100包括信息存储表110。
信息存储表110包括与物理区域相关的信息(或与物理区域相关的地址信 息)、与虚拟区域相关的信息(或与虚拟区域相关的地址信息)、数据(或信 息)等。在这里,与物理区域相关的信息包括物理基本区域的位置信息和物理 子区域的位置信息。此外,与虚拟区域相关的信息包括虚拟基本区域的位置信 息和虚拟子区域的位置信息。在这种情况下,数据(或信息)包括错误信息、 错误的位置信息、路由信息以及分组信息。此外,数据(或信息)可以根据应 用分析系统10的领域(例如,包括存储器领域或数据通信领域)而改变,并且可以通过按设计师的设计来修改而应用。例如,在应用使用冗余存储单元的存 储器修复的存储器系统的情况下,数据(或信息)可以是被在存储器系统中提 供的备用存储单元替换的错误存储单元的位置(或位置信息)。
分析装置200执行分析系统10的总体控制功能。
此外,分析设备20找出分析系统10的最优信息存储位置(或满足预定目 标值的K位的位置信息和M+N-K位的位置信息),并向分析系统10分配与找 到的最优信息存储位置相对应的K位的位置信息和M+N-K位的位置信息。
此外,分析装置200将使信息存储位置散列的信息管理单元区域(或单元 区域)映射到信息存储表110中的物理基本区域。在这里,信息存储表110被 包括在存储介质100中并由多个单元区域配置。
在这种情况下,当诸如DRAM、PCM、MRAM或SRAM之类的存储器系 统中的将在其中存储并管理信息的基本区域是区块(bank)时,分析装置200 将一个区块中的所有行组合,并且将所有组合行划分成2M个物理基本区域并将 单元区域映射到划分的2M个物理基本区域。
此外,当存储介质100中的要管理的物理基本区域的数目不是2M时,分析 装置200可以使得存储介质100中的多个单元为2M,并且然后将2M个单元区 域映射到2M个物理基本区域。在这里,M可以是自然数。
亦即,为了根据设计师的设计来配置2M个单元区域,当单元区域的数目不 是2M时,分析装置200根据设计师的设计执行将现有单元区域映射到2M个新 单元区域的预处理过程,并将经预处理的2M个单元区域映射到2M个物理基本 区域。
此外,分析装置200将存储介质100(或信息存储表110)中的所述多个物 理基本区域中的每一个划分成多个物理子区域。在这里,所述多个物理子区域 中的每一个具有相同尺寸。
亦即,分析装置200将存储介质100(或信息存储表110)中的2M个物理 基本区域中的每一个划分成2N个物理子区域。在这里,N可以是自然数。在这 种情况下,当一个物理基本区域被划分成要散列的N个物理子区域时,可以要 求附加位以对物理子区域编索引。
此外,分析装置200将多个物理区域(其由2M+N个物理子区域构成并被用 M+N位编索引)组成(或配置)成2K个虚拟基本区域。在这种情况下,K是自 然数,并且可以等于或小于M+N。在这里,当用于接近物理基本区域的位是M 位且用于接近物理子区域的位是N位时,用以生成虚拟基本区域的可组合情况 的数目是M+NCM+N-K。此外,K的大小可以是用以接近信息存储表110的位速率。
此外,分析装置200将生成的2K个虚拟基本区域中的每一个划分(或重置) 成2M+N-K个虚拟子区域。在这里,2M+N-K个虚拟子区域中的每一个具有相同尺寸。
亦即,分析装置200将物理自取组合并从最高有效位至最低有效位以预先 设定的位为单位来设定虚拟基本区域的键值并将M+N个位之中的在设定虚拟 基本区域的键值之后剩余的位(或剩余区域)设定为虚拟子区域的键值以配置 整个虚拟区域的密钥。整个虚拟区域包括虚拟基本区域和虚拟子区域。在这里, 分析装置200分别地生成用于获得虚拟基本区域的键值的K位的位置信息和用 于获得虚拟子区域的键值的M+N-K位的位置信息,以便配置虚拟区域的密钥 (或整个虚拟区域的密钥)。
如上所述,分析装置200可以配置用于使用M+N位之中的K位的位置信 息来获得(或设定)虚拟基本区域的键值且用于使用M+N位之中的在设定虚拟 基本区域的键值之后剩余的位的位置信息来获得虚拟子区域的键值的散列函 数。在这里,散列函数基于物理区域地址来提供与虚拟区域相关的位置信息(例 如,包括K位的位置信息和M+N-K位的位置信息)。
此外,分析装置200检查(或确定)要存储在临时地组合(或配置)的虚 拟基本区域(或虚拟基本区域的组合)中的信息的数目(或组合/重组信息的数 目)是否满足预定目标值。在这里,目标值是对应于要存储的信息的预先设定 的值(或将满足要存储的信息的值)。在应用使用冗余存储单元的存储器修复 的存储器系统的情况下,目标值可以是与在存储器存储单元中提供的可用(或 者在存储器系统中可用)的备用存储单元的数目相同的预定数目(包括例如备 用行的数目、备用列的数目等)。亦即,目标值可以是在映射到与要存储的信 息相对应的预定值的所有物理基本区域中可以可用的资源的数目。此外,在避免错误存储器块的存储器系统的情况下,目标值可以是在存储器系统的所有物 理基本区域中可用的相同存储器块的数目。
作为检查结果(或确定结果),当要存储在组合(或配置/生成)的虚拟基 本区域(或虚拟基本区域的组合)中的信息的数目满足预定目标值时,分析装 置200在存储介质100中的预定(或先前分配)存储区域中存储M+N位之中的 与满足目标值的虚拟基本区域相关的K位的位置信息和与满足目标值的虚拟子 区域相关的M+N-K位的位置信息。在这里,K位的位置信息的值和M+N-K位 的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域的键值(或 K位的位置)的“0”(或K位)和对应于虚拟子区域的键值(或M+N-K位的位 置)的“1”(或M+N-K位)配置。
亦即,当要存储在组合(或配置/生成)的虚拟基本区域(或虚拟基本区域 的组合)中的信息的数目满足预定目标值时,分析装置200生成M+N位之中的 对应于满足目标值的虚拟基本区域的K位的位置和对应于满足目标值的虚拟子 区域的M+N-K位的位置。此外,分析装置200将生成的K位的位置(或K位 的位置信息)和生成的M+N-K位的位置(或M+N-K位的位置信息)作为向量 存储在存储介质100中的预定存储区域中。
此外,分析装置200基于存储在存储介质100中的预定存储区域中的K位 的位置信息(或与满足目标值的虚拟基本区域相关的K位的位置信息)或M+N-K 位的位置信息(或与满足目标值的虚拟子区域相关的M+N-K位的位置信息)确 定信息存储表110可以被成功地管理,并将对应于虚拟区域的位置信息(或用 于虚拟区域的位置信息)的数据存储在信息存储表110中。在这里,数据(或 信息)包括错误信息、错误的位置信息、路由信息以及分组信息。此外,数据 (或信息)可以根据应用分析系统10的领域(例如,包括存储器领域或数据通 信领域)而改变,并且可以通过按设计师的设计来修改而应用。例如,在应用 使用冗余存储单元的存储器修复的存储器系统的情况下,数据(或信息)可以 是被在存储器系统中提供的备用存储单元替换的错误存储单元的位置(或位置 信息)。
此外,作为检查结果(或确定结果),当要存储在组合(或配置/生成)的 虚拟基本区域(或虚拟基本区域的组合)中的信息的数目不满足预定目标值时, 分析装置200重复地执行排除许多可组合情况(例如,M+NCM+N-K个)之中的先 前组合的情况(或根据散列方法组合的多个情况/多个重组情况)根据预定散列 方法(或基于预定散列函数/相对于另一K位的位置)将所述多个物理子区域重 组以检查重组虚拟基本区域并检查要存储在已检查重组虚拟基本区域中的信息 的数目是否满足预定目标值过程。
如上所述,分析装置200检查用于所述多个物理子区域的所有可配置组合 中的满足将由虚拟基本区域设计的目标值的第一物理子区域的组合。
此外,当对于M+N位之中的K位的位置的所有组合而言不满足目标值时, 分析装置200确定数据不能被存储(或者信息存储表110不能被成功地管理) 并结束整个过程。
图3至图5是图示出根据本发明的示例性实施例的当使用包括错误块的4×4 存储器块来实现4路组相联高速缓存器时配置最优高速缓冲存储器的示例的视 图。由于总共16个存储器块之中的三个块具有错误,所以当配置4路组相联高 速缓存器时,目标值(或设计目标值)将是向每个组分配一个错误。
此外,由于高速缓存器是4路组相联高速缓存器,所以K是2。
此外,如图3中所示,当要配置4路高速缓冲存储器时,分析装置200将 由行地址配置的单元区域映射到物理基本区域以配置将是四个物理基本区域的 物理基本区域并为物理基本区域中的每一个配置四个物理子区域。
因此,分析装置200在被接近物理基本区域中用接近于物理基本区域的上 两位和接近于物理子区域的下两位的总共四个位来应用散列以接近物理子区 域。
此外,如图4中所示,当用虚拟基本区域(或物理基本区域)来执行散列 时,当接近组0时分配三个错误块,使得不满足目标值。
此外,如图5中所示,当在接近物理子区域以使虚拟基本区域散列的四 个位之中下两位被用作用于接近虚拟基本区域的地址(或K位的位置信息)且 上两位被用作用以接近虚拟基本区域中的虚拟子区域的地址(或M+N-K位的位 置信息)时,设法在每个虚拟基本区域中生成一个错误块。因此,可以满足目 标值。结果,使整个系统的性能退化最小化,使得可以将高速缓冲存储器配置 成展示出最优性能。
图6至图8是图示出将本发明的示例性实施例应用于在诸如DRAM之类的 存储器芯片中存储错误地址的步骤的示例的视图。
此外,如图6中所示,DRAM存储器芯片由多个阵列构成。
此外,该阵列由具有小于阵列的尺寸的多个子阵列构成。
当在如上所述地配置的存储器芯片中产生错误时,为了在存储并管理在该 处产生错误的地址的同时执行修复,对一个子阵列或者对多个子阵列执行修复。
因此,在相关技术中,即使在阵列中存在具有用以存储错误地址的剩余空 间的子阵列,也不能使用该子阵列。然而,根据本发明的示例性实施例,利用 在阵列中剩余的另一子阵列的错误地址的存储空间,使得可以连续地使用存储 器中的存储空间。
此外,当图6中所示的DRAM存储器芯片被应用于本发明的示例性实施例 时,阵列中的子阵列充当本发明的示例性实施例的单元区域,并且该单元区域 充当物理基本区域。物理基本区域中的物理子区域是通过将子阵列除以物理子 区域的数目而获得的。
此外,由于针对每个物理基本区域管理并恢复(或修复)错误,所以用于 管理错误地址的信息存储表110的条目数目等于物理基本区域的数目。结果,K 为2。
此外,当阵列中的子阵列具有不同尺寸时,子阵列被组合成一个,组合子 阵列被划分成2M个虚拟子阵列,并且划分的虚拟子阵列被映射到物理子阵列。
此外,当假设用一个子阵列修复的错误的数目为2时,2是目标值。此外, 在图7中所示的物理基本区域0(或子阵列0)中的地址F0、F1以及F2中产生 总共三个错误,其超过针对子阵列0要修复的两个错误。
亦即,如图7中所示,可以针对每个物理基本区域修复两个错误,并且物 理基本区域的总数是四个,使得至多可以修复八个错误。然而,当如图7中所 示的那样错误F0至F5的总数刚好是六个时,可以存在错误不能被修复的情况。
如上所述,图7图示出根据本发明的示例性实施例的将每个物理基本区域 划分成两个物理子区域并将物理子区域组合成虚拟基本区域的示例。
亦即,分析装置200将每个物理基本区域划分成物理子区域,并且将物理 子区域组合成虚拟基本区域。在这里,为了使基本区域散列,使用最高的两位 (K位的位置信息)作为基本区域的键值,并且使用最低的一位(或M+N-K位 的位置信息)作为子区域的键值。因此,当虚拟基本区域等于物理基本区域时, 在物理基本区域(或虚拟基本区域)0中需要用于总共三个错误地址的存储空间。 然而,所提供的存储空间针对每个基本区域局限于两个,其超过用于管理错误 地址的限制。
此外,如图8中所示,分析装置200将每个物理基本区域划分成两个物理 子区域并将物理子区域组合成虚拟基本区域。在这里,为了使基本区域散列, 使用最低的两位(K位的位置信息)作为基本区域的键值,并且使用最高的一 位(或M+N-K位的位置信息)作为子区域的键值。因此,虚拟基本区域的所有 错误地址不超过两个,使得可以存储所有错误地址。在这种情况下,由于不同 的物理基本区域被组合,所以可以考虑标签位以区别对应于物理基本区域的地 址。然而,根据设计师的设计可以不使用标签位。
此外,例如,可以将散列函数的信息生成为向量,其将选择虚拟基本区域 的位(或K位的位置信息)设置成0并将选择虚拟子区域的位(或M+N-K位 的位置信息)设置成1。
此外,由于生成的虚拟子区域的总数是八个,根据log2(8)=3,用来对总共 三个位编索引的位之中的较低两位变成虚拟基本区域。因此,在图8中,通过 将选择虚拟基本区域的位(或K位的位置信息)和选择虚拟子区域的位(或 M+N-K位的位置信息)存储为向量而获得的值为100。
此外,针对根据本发明的示例性实施例的存储器管理方法,如图1中所示, 分析系统(或存储器管理系统)10包括存储介质100和分析装置200。
存储介质100包括信息存储表110。
此外,存储介质100(或信息存储表110)通过分析装置200的控制将K位 的位置信息(或与满足目标值的虚拟基本区域相关的K位的位置信息)和M+N-K 位的位置信息(或与满足目标值的虚拟子区域相关的M+N-K位的位置信息)存 储在存储介质100中的预定存储区域中。
此外,存储介质100(或信息存储表110)通过分析装置200的控制基于存 储在存储区域中的K位的位置信息(或与满足目标值的虚拟基本区域相关的K 位的位置信息)和M+N-K位的位置信息(或与满足目标值的虚拟子区域相关的 M+N-K位的位置信息)将对应于虚拟区域信息的位置(或与虚拟区域相关的位 置信息)的数据存储在信息存储表110(或存储介质100中的错误地址存储空间) 中。在这里,数据(或信息)包括错误信息、错误的位置信息、路由信息以及 分组信息。此外,数据(或信息)可以根据应用分析系统10的领域(例如,包括存储器领域或数据通信领域)而改变,并且可以通过按设计师的设计来修改 而应用。例如,在应用使用冗余存储单元的存储器修复的存储器系统的情况下, 数据(或信息)可以是被在相应存储器系统中提供的备用存储单元替换的错误 存储单元的位置(或位置信息)。
此外,存储介质100存储多个列地址和多个行地址。
此外,存储介质100存储由分析装置200生成的错误信息管理表。
此外,分析装置(或存储器管理单元)200针对物理区域(或物理基本区域 PX)和虚拟区域(或虚拟基本区域VY)生成错误信息管理表,其表示作为错误 的数目的(fX,Y)、作为每个物理区域中可用的备用行的数目的RX、作为每个虚 拟区域中的可用备用列的数目的CY以及作为具有未修复错误的每个虚拟区域中 的列的数目的AY的关系。在这种情况下,X表示物理区域且Y表示虚拟区域。
在这里,虚拟区域可以是可由分析装置200配置的所有组合中的一个,其 中,分析装置200将每个物理基本区域划分成具有相同尺寸的两个物理子区域 并将物理子区域组合成虚拟基本区域。
此外,分析装置200检查是否所有可配置组合都满足由存储器管理方法预 先设定的目标值。在在这种情况下,目标值是对应于要存储的信息的预先设定 的值(或将满足要存储的信息的值)。在应用使用冗余存储单元的存储器修复 的存储器系统的情况下,目标值可以是在存储器存储单元中提供的可用(或者 在存储器系统中可用)的备用存储单元的预定数目(包括例如备用行的数目、 备用列的数目等)。亦即,目标值可以是在映射到与要存储的信息相对应的预 定值的所有物理基本区域中可以可用的相同资源的数目。此外,在避免错误存 储器块的存储器系统的情况下,目标值可以是在存储器系统的所有物理基本区 域中可用的相同存储器块的数目。
当要存储在组合虚拟基本区域中的信息的数目满足预定目标值时,分析装 置200将位之中的与满足目标值的虚拟基本区域相关的K位的位置信息和与满 足目标值的虚拟子区域相关的M+N-K位的位置信息存储在存储介质100中的预 定(或先前分配)存储区域中。在这里,K位的位置信息的值和M+N-K位的位 置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域的键值(或K 位的位置)的“0”(或K位)和对应于虚拟子区域的键值(或M+N-K位的位置) 的“1”(或M+N-K位)配置。在这里,M表示物理区域的数目,N表示虚拟区域的数目,并且M、N和K是自然数。此外,K的大小可以是用以接近信息存 储表110的位速率。
亦即,为了找到满足目标值的K位的位置信息和M+N-K位的位置信息, 分析装置200创建错误信息管理表以向信息存储空间最优地分配信息。
根据本发明的示例性实施例,目标值是预定数目,其可以是在存储器系统 中提供的可用备用存储单元(其在存储器系统中可用)的数目。如图9中所示, 错误存储单元的位置信息被最优地分配给信息存储表110以生成错误信息管理 表以进行错误修复。
此外,在本发明的示例性实施例中,假设提供了M个物理区域,并且每个 物理区域具有N个虚拟区域,并且用参考符号X来表示物理区域且用参考符号 Y来表示虚拟区域。在这里,X满足0≤X≤M-1且Y满足0≤Y≤N-1。
此外,如图9中所示,当M=4且N=4时,PX指示存储器管理系统10的 第X物理区域,并且VY指示存储器管理系统10的第Y虚拟区域。例如,P0指 示第零物理区域且V2指示第二虚拟区域。此外,(fx,y)指示在表示由物理区 域PX和虚拟区域VY定义的存储单元的(PX,VY)中生成的错误之中的未被修 复的错误的数目。此外,物理区域被划分成多个物理子区域并重组成虚拟区域。 因此,即使物理子区域属于同一PX,但是物理子区域所属的虚拟区域可以相互 不同,例如VY1和VY2。例如,对应于错误信息管理表的字段(P0,V2)的(f0,2) 指示具有物理区域0和虚拟区域2的地址的错误存储单元之中的未被修复的错 误的数目。此外,(fX,Y)最初具有与错误的数目相同的值,但是(fX,Y)的值 在通过分配备用存储单元来修复错误的过程期间减小。
此外,RX指示第X物理区域中可用的备用行的数目,并且CY指示第Y虚 拟区域中可用的备用列的数目。此外,在物理区域中,用备用行替换在其中产 生错误的错误存储单元,使得修复被执行。此外,在虚拟区域中,用备用列替 换在其中产生错误的错误存储单元,使得修复被执行。
此外,AY指示具有未被修复的错误的第Y虚拟区域中共的列(或错误列) 的数目。当一个列具有仅一个错误时,AY的值与的值相同。此外,当 在一个列中存在多个错误时,即使错误的数目是多个,具有错误的列的数目也 是一个。因此,AY的值可以等于或小于此外,使用作为错误列的数目 的AY的值来选择要修复的行或者在与备用列的数目相比较的同时确定整个过程 的结束条件。
此外,错误信息管理表提供在被划分成物理区域和虚拟区域的存储器管理 系统10中执行整个过程所需的信息。
此外,分析装置200选择其中差AY﹣CY具有最大值的虚拟区域VQ,所述 差AY﹣CY是AY与CY之间的差,所述AY是包括在错误信息管理表中的每个虚 拟区域中的具有未修复错误的列的数目,并且CY是包括在错误信息管理表中的 每个虚拟区域中可用的备用列的数目。在这里,Q可以是其中具有错误的列的 数目与备用列的数目之间的差具有最大值的虚拟区域的值。
亦即,分析装置200搜索(或选择/检查)其中对于所有虚拟区域而言差值 AY﹣CY具有最大值的虚拟区域VQ,所述差值AY﹣CY是AY与CY之间的差,所 述AY是每个虚拟区域中的具有未修复错误的列的数目,并且CY是每个虚拟区 域中可用的备用列的数目。
此外,分析装置200检查AQ(其为选定虚拟区域VQ中的具有未修复错误 的列的数目)是否等于或小于CQ(其为选定虚拟区域VQ中的可用备用列的数 目)。
作为检查结果,当AQ(其为选定虚拟区域VQ中的具有未修复错误的列的 数目)等于或小于CQ(其为选定虚拟区域VQ中的可用备用列的数目)时,分 析装置200检查错误修复已成功地完成。此外,分析装置200在错误修复完成 时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质100中的虚拟 区域和物理区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置 信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过 程。在这里,K位的位置信息的值和M+N-K位的位置信息的值被配置为向量, 并且位的位置由对应于虚拟基本区域的键值(或K位的位置)的“0”(或K位) 和对应于虚拟子区域的键值(或M+N-K位的位置)的“1”(或M+N-K位)配置。
此外,作为检查结果,当AQ(其为选定虚拟区域VQ中的具有未修复错误 的列的数目)大于CQ(其为选定虚拟区域VQ中的可用备用列的数目)时,分 析装置200确定仅用备用列不能实现修复。因此,为了使用备用行来执行修复, 分析装置200确定在虚拟区域VQ中是否存在大于0的RX,其为每个物理区域 中可用的备用行的数目且被针对所有物理区域PX预先设定。
作为确定结果,当对于所有物理区域PX而言不存在预先设定的大于0的RX (其为每个物理区域中可用的备用行的数目)时,分析装置200确定错误修复 失败,并且结束整个过程。
此外,作为确定结果,当对于虚拟区域VQ的所有物理区域PX而言存在大 于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,分 析装置200选择其中(PX,VQ)具有错误且RX(其是物理区域中可用的备用行 的数目)对于虚拟区域VQ的所有物理区域PX而言(或者对于虚拟区域VQ而言) 具有最大值的一个物理区域PA。在这里,PA是物理区域PX中的一个,并且(PA, VQ)表示错误信息管理表的存储单元,其由PX和VQ定义。
此外,分析装置200检查对应于选定物理区域PA的(PA,VQ)中的其中 AQ(其为选定虚拟区域VQ中的具有未修复错误的列的数目)减小最多的行。在 这里,(PA,VQ)表示错误信息管理表的存储单元,其由PA和VQ定义。
此外,分析装置200将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里, (PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,Q)是 存储在由PA和VQ定义的存储单元中的未修复错误的数目。此外,分析装置200 将AQ(其为未被修复且具有错误的对应于选定物理区域PA的列的数目)减小与 可以由备用行修复、使得不需要错误修复的列的数目(其为第二数目)一样多。 此外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目的所使 用备用行的数目一样多。
此外,分析装置200返回至选择其中AY﹣CY具有最大值的过程以重复地执 行分配备用行的过程直至AR(其为选定虚拟区域VQ中的具有未修复错误的列 的数目)等于或小于CQ(其为虚拟区域VQ中可用的备用列的数目)为止,所 述AY﹣CY是AY与CY之间的差,所述AY是包括在错误信息管理表中的每个虚 拟区域中的具有未修复错误的列的数目,并且CY是包括在错误信息管理表中的 每个虚拟区域中可用的备用列的数目。
如果其中没有留下备用行且(AY﹣CY)具有最大值的虚拟区域VY的AY的 值超过CY的值,则分析装置200确定错误修复失败,并结束整个过程。
如上所述,分析装置200可以基于列优先(或者基于列优先算法)而执行 存储器管理功能。
此外,当执行基于行优先(或基于行优先算法)的存储器管理功能时,分 析装置200通过改变上述过程的顺序来执行存储器管理功能。
亦即,分析装置200确定对于所有物理区域PX而言是否存在大于0的RX, 其为每个物理区域中可用的备用行的数目且是预先设定的。
作为确定结果,当对于所有物理区域PX而言不存在RX(其为每个物理区域 中可用的备用行的数目且是预先设定的)时,分析装置200检查AY(其为所有 虚拟区域中的具有未修复错误的列的数目)是否等于或小于CY(其为虚拟区域 中的可用备用列的数目)。
作为检查结果,当AY(其为所有虚拟区域中的具有未修复错误的列的数目) 等于或小于CY(其为所有虚拟区域中可用的备用列的数目)时,分析装置200 确认错误修复已成功地完成。此外,分析装置200在错误修复完成时根据备用 存储单元的分配结果在由对应于虚拟区域的存储介质100中的虚拟区域和物理 区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚 拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程。在这里, K位的位置信息的值和M+N-K位的位置信息的值被配置为向量,并且位的位置 由对应于虚拟基本区域的键值(或K位的位置)的“0”(或K位)和对应于虚拟子区域的键值(或M+N-K位的位置)的“1”(或M+N-K位)配置。
此外,作为检查结果,当AY(其为所有虚拟区域中的具有未修复错误的列 的数目)大于CY(其为虚拟区域中的可用备用列的数目)时,分析装置200确 定仅通过使用虚拟区域VY中可用的备用行不能实现修复且错误修复失败,并且 结束整个过程。
此外,作为确定结果,对于虚拟区域VQ的所有物理区域PX而言存在大于0 的RX(其为每个物理区域中可用的备用行的数目且是预先设定的),分析装置 200选择其中(PX,VQ)具有错误且RX(其为物理区域中可用的备用行的数目) 具有最大值的一个物理区域PA。在这里,PA是物理区域PX中的一个,并且(PA, VQ)表示错误信息管理表的存储单元,其由PX和VQ定义。
此外,分析装置200检查对应于选定物理区域PA的(PA,VQ)中的其中 AQ(其为选定虚拟区域VQ中的具有未修复错误的列的数目)减小最多的行。在 这里,(PA,VQ)表示错误信息管理表的存储单元,其由PA和VQ定义。
此外,分析装置200将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里, (PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,Q)是 存储在由PA和VQ定义的存储单元中的未修复错误的数目。此外,分析装置200 将AQ(其为未被修复且具有错误的对应于选定物理区域PA的列的数目)减小与 可以由备用行修复、使得不需要错误修复的列的数目(其为第二数目)一样多。 此外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目的所使 用备用行的数目一样多。
此外,分析装置200返回至选择其中AY﹣CY具有最大值的虚拟区域VQ的 过程以重复地执行分配备用行的过程直至RX(其为每个物理区域中可用的备用 行的数目,其大于0,其是预先设定的)变成0为止(或者直至在每个物理区域 中不存在可用的备用行为止),所述AY﹣CY是AY与CY的差,所述AY是包括 在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目,并且所 述CY是包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目。
如上所述,列优先(或者列优先算法)在可能利用尽可能多的备用列并留 下备用行的方向上前进,而行优先(或者行优先算法)在可能利用尽可能多的 备用行并留下备用列的方向上前进。
此外,当执行快速基于列优先的存储器管理功能时,分析装置200可以通 过改变上述过程的顺序并添加某些过程来执行存储器管理功能。
亦即,分析装置200计算AY与CY之间的差值AY﹣CY,所述AY是每个虚 拟区域中的具有未修复错误的列的数目,并且所述CY是每个虚拟区域中可用的 备用列的数目。
此外,分析装置200将计算的差值AY﹣CY排序。在这种情况下,排序方法 可以是递降顺序或递升顺序。
亦即,分析装置200基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应 于计算差值AY﹣CY的虚拟区域VY排序。
此外,分析装置200按照排列顺序选择其中错误未被修复的虚拟区域VD。 在这里,D可以是通过使用具有错误的列的数目和备用列的数目之间的差值将 虚拟区域按照递降顺序排序并按照所排序的顺序选择其中错误未被修复的虚拟 区域而获得的值。
此外,分析装置200主要检查AD(其为选定虚拟区域VD中的具有未修复 错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用列的数 目)。
此外,作为主要检查结果,当AD大于CD时,作为主要检查结果,分析装 置200确定仅用备用列不能实现修复,并且为了使用备用行来执行修复,分析 装置200确定对于所有物理区域PX而言在虚拟区域VD中是否存在大于0的RX。 在这里,RX是每个物理区域中可用的备用行的数目,并且被针对所有物理区域 PX预先设定。
作为确定结果,当对于所有物理区域PX而言不存在大于0的RX(其为每个 物理区域中可用的备用行的数目且是预先设定的)时,分析装置200确定错误 修复失败,并且结束整个过程。
此外,作为确定结果,当对于虚拟区域VD的所有物理区域PX而言存在大 于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,分 析装置200选择其中(PX,VD)具有错误且RX(其为物理区域中可用的备用行 的数目)具有最大值的一个物理区域PA。在这里,PA是物理区域PX中的一个, 并且(PA,VD)表示错误信息管理表的存储单元,其由PX和VD定义。
此外,分析装置200检查对应于选定物理区域PA的(PA,VD)中的其中 AD(其为选定虚拟区域VD中的具有未修复错误的列的数目)减小最多的行。在 这里,(PA,VD)表示错误信息管理表的存储单元,其由PA和VD定义。
此外,分析装置200将对应于选定物理区域PA的(PA,VD)的(fA,D)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里,(PA,VD)表示错误信息管理表的由PA和VD定义的存储单元,并且(fA,D)是 存储在由PA和VD定义的存储单元中的未修复错误的数目。此外,分析装置 200将AD(其为未被修复且具有错误的对应于选定物理区域PA的列的数目)减 小与可以由备用行修复、使得不需要错误修复的列的数目(其为第二数目)一样多。此外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目 的所使用备用行的数目一样多。
此外,分析装置200返回至主要检查AD(其为选定虚拟区域VD中的具有 未修复错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用 列的数目)的过程(例如,步骤S2940)以重复地执行向选定虚拟区域VD分配 备用行的过程直至AD(其为选定虚拟区域VD中的具有未修复错误的列的数目) 等于或小于CY(其为所有虚拟区域VY中可用的备用列的数目)为止。
作为主要检查结果,当AD(其为选定虚拟区域VD中的具有未修复错误的 列的数目)等于或小于CD(其为虚拟区域VD中可用的备用列的数目)时,分 析装置200主要检查AY(其为所有虚拟区域VY中的具有未修复错误的列的数 目)是否等于或小于CY(其为所有虚拟区域VY中可用的备用列的数目)。
作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复错误的 列的数目)等于或小于CY(其为所有虚拟区域VY中可用的备用列的数目)时, 分析装置200确认错误修复已成功地完成。此外,分析装置200在错误修复完 成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质100中的虚 拟区域和物理区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位 置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个 过程。在这里,K位的位置信息的值和M+N-K位的位置信息的值被配置为向量, 并且位的位置由对应于虚拟基本区域的键值(或K位的位置)的“0”(或K位) 和对应于虚拟子区域的键值(或M+N-K位的位置)的“1”(或M+N-K位)配置。
此外,作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复 错误的列的数目)不等于或小于CY(其为所有虚拟区域VY中可用的备用列的 数目)时(或者当存在至少一个AY时,该AY为具有未修复错误的列的数目, 其大于作为所有虚拟区域VY中可用的备用列的数目的CY),分析装置200返 回至选择所有已排序的虚拟区域VY之中的其中错误未被修复的下一虚拟区域(或新虚拟区域)VD的过程。
亦即,在重复地执行所述过程直至AY(其为选定虚拟区域VD中的具有未 修复错误的列的数目)等于或小于CY(其为所有虚拟区域VY中可用的备用列 的数目)之后,分析装置200选择新虚拟区域VD。此外,分析装置200重复地 执行主要检查AD(其为选定的新虚拟区域VD中的具有未修复错误的列的数目) 是否等于或小于CD(其为相应新虚拟区域VD中可用的备用列的数目)的过程 和向选定的新虚拟区域VD分配备用行的过程直至AD(其为选定的新虚拟区域 VD中的具有未修复错误的列的数目)变得等于或小于CD(其为虚拟区域VD中 可用的备用列的数目)为止。
如上所述,分析在200可以通过对未被修复且具有错误的选定虚拟区域VD中的列的备用行分配过程来对所有虚拟区域VY执行备用列分配过程。
当没有留下(或可用)备用行且虚拟区域VQ的AY的值小于虚拟区域VQ的CY的值时,分析装置200确定错误修复失败并结束整个过程。在这里,AY是每个虚拟区域中的具有未修复错误的列的数目,CY是每个虚拟区域中可用的 备用列的数目,并且VQ是其中AY与CY之间的差具有最大值的虚拟区域。
当执行快速基于行优先的存储器管理功能时,分析装置200通过改变上述 过程的顺序并添加某些过程来执行存储器管理功能。
亦即,分析装置200分别地计算AY﹣CY,其为AY(其为每个虚拟区域中 的具有未修复错误的列的数目)与CY(其为每个虚拟区域中可用的备用列的数 目)之间的差。
此外,分析装置200将计算的差值AY﹣CY排序。在这种情况下,排序方法 可以是递降排序或递升排序。
亦即,分析装置200基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应 于计算的差值AY﹣CY的虚拟区域VY排序。
此外,分析装置200按照所排序的顺序选择其中错误未被修复的虚拟区域 VD。在这里,D可以是通过使用具有错误的列的数目与备用列的数目之间的差 值按照递降顺序将虚拟区域排序并按照排列顺序选择其中错误未被修复的虚拟 区域而获得的值。
此外,分析装置200主要检查AD(其为选定虚拟区域VD中的具有未修复 错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用列的数 目)。
此外,作为主要检查结果,当AD(其为选定虚拟区域VD中的具有未修复 错误的列的数目)大于CD(其为虚拟区域VD中可用的备用列的数目)时,分 析装置200确定仅用备用列不能实现修复。因此,为了使用备用行来执行修复, 分析装置200确定对于所有物理区域PX而言在虚拟区域VD中是否存在大于0 的RX,其为每个物理区域中可用的备用行的数目且是预先设定的。作为确定 结果,当对于所有物理区域PX而言不存在预先设定的大于0的RX(其为每个物 理区域中可用的备用行的数目且是预先设定的)时,分析装置200确定错误修 复失败并结束整个过程。
此外,作为确定结果,当对于所有物理区域PX而言存在大于0的RX(其为 每个物理区域中可用的备用行的数目且是预先设定的)时,分析装置200选择 其中(PX,VD)具有错误且RX(其为物理区域中可用的备用行的数目)具有最 大值的一个物理区域PA。在这里,PA是物理区域PX中的一个,并且(PA,VD) 表示错误信息管理表的存储单元,其由PX和VD定义。
此外,分析装置200检查对应于选定物理区域PA的(PA,VD)中的其中 AD(其为选定虚拟区域VD中的具有未修复错误的列的数目)减小最多的行。在 这里,(PA,VD)表示错误信息管理表的存储单元,其由PA和VD定义。
此外,分析装置200将对应于选定物理区域PA的(PA,VD)的(fA,D)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里, (PA,VD)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,D)是 存储在由PA和VQ定义的存储单元中的未修复错误的数目。此外,分析装置200 将AD(其为未被修复且具有错误的对应于选定物理区域PA的列的数目)减小与 可以由备用行修复、使得不需要错误修复的列的数目(其为第二数目)一样多。 此外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目的所使 用备用行的数目一样多。
此外,分析装置200返回至主要检查AD(其为选定虚拟区域VD中的具有 未修复错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用 列的数目)的过程,以重复地执行向选定虚拟区域VD分配备用行的过程,直至 AD(其为选定虚拟区域AD中的具有未修复错误的列的数目)等于或小于CD(其 为选定虚拟区域VD中可用的备用列的数目)为止。
此外,作为主要检查结果,当AD(其为选定虚拟区域VD中的具有未修复 错误的列的数目)等于或小于CD(其为虚拟区域VD中可用的备用列的数目) 时,分析装置200辅助地检查AY(其为所有虚拟区域VY中的具有未修复错误 的列的数目)是否等于或小于CY(其为所有虚拟区域VY中可用的备用列的数 目)。
此外,作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复 错误的列的数目)等于或小于CY(其为所有虚拟区域VY中可用的备用列的数 目)时,分析装置200辅助地确定对于所有物理区域PX而言是否存在大于0的 RX,其为每个物理区域中可用的备用行的数目且是预先设定的。
作为辅助确定结果,当对于虚拟区域VD中的所有物理区域PX而言存在大 于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,分 析装置200按排序的顺序选择其中错误未被修复的下一虚拟区域VD。在这里, D可以是通过使用具有错误的列的数目与备用列的数目之间的差值按照递降顺 序将虚拟区域排序并按照排序的顺序选择其中错误未被修复的虚拟区域而获得 的值。
此外,针对新选定的虚拟区域,分析装置200返回至选择其中(PX,VD)具 有错误且物理区域中可用的备用行的数目对于相应下一虚拟区域(或虚拟区域 VD)的所有物理区域PX而言位是最大值的一个物理区域PA并检查对应于选定 物理区域PA的(PA,VQ)中的其中AQ(其为选定虚拟区域VQ中的具有未修复 错误的列的数目)被减小尽可能多的行的过程。在这里,(PX,VD)表示存储 单元,其由PX和VD定义。(PA,VQ)表示存储单元,其由PA和VQ定义。
此外,作为辅助确定结果,当在虚拟区域VD中对于所有物理区域PX而言 不存在预先设定的大于0的RX(其为每个物理区域中可用的备用行的数目且是 预先设定的)时,分析装置200确定错误修复已成功地完成,在错误修复完成 时在对应于虚拟区域的存储介质100中的由物理区域和虚拟区域管理的错误地 址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并结束整个过程。在这里,K位的位置信 息的值和M+N-K位的位置信息的值被配置为向量,并且位的位置由对应于虚拟 基本区域的键值(或K位的位置)的“0”(或K位)和对应于虚拟子区域的键值 (或M+N-K位的位置)的“1”(或M+N-K位)配置。
此外,作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复 错误的列的数目)大于CY(其为所有虚拟区域VY中可用的备用列的数目)时 (或者当存在至少一个AY时,该AY为具有未修复错误的列的数目,其大于作 为所有虚拟区域VY中可用的备用列的数目的CY),分析装置200返回至选择 所有已排序虚拟区域VY之中的其中错误未被修复的虚拟区域VD的过程。
此外,在重复地执行所述过程直至AY(其为选定虚拟区域VD中的具有未 修复错误的列的数目)等于或小于CY(其为所有虚拟区域VY中可用的备用列 的数目)之后,分析装置200选择新虚拟区域VD。此外,分析装置200重复地 执行主要检查AD(其为选定的新虚拟区域VD中的具有未修复错误的列的数目) 是否等于或小于CD(其为用于选定新虚拟区域VD的相应新虚拟区域VD中可用 的备用列的数目)的过程和向选定的新虚拟区域VD分配备用行的过程直至AD (其为选定的新虚拟区域VD中的具有未修复错误的列的数目)变得等于或小于 CD(其为虚拟区域VD中可用的备用列的数目)为止。
如上所述,分析装置200可以通过对未被修复且具有错误的选定虚拟区域 VD中的列的备用行分配过程来对所有虚拟区域VY执行备用列分配过程。
当没有留下(或可用)备用行且其中AY﹣CY(其为AY与CY之间的差,所 述AY是每个虚拟区域中的具有未修复错误的列的数目,并且CY是每个虚拟区 域中可用的备用列的数目)具有最大值的虚拟区域VY的AY的值超过CY的值时, 分析装置200确定错误修复失败并结束整个过程。在这里,CY是每个虚拟区域 中可用的备用列的数目,并且VQ是其中AY与CY之间的差具有最大值的虚拟区 域。
此外,根据设计师在存储器制造过程期间根据环境和每个存储器系统(未 示出)的目的进行的选择而选择性地使用列优先算法、行优先算法、快速列优 先算法以及快速行优先算法
如上所述,可以将有限的备用存储单元最优地分布(或分配)到系统中的 物理区域和虚拟区域以便修复存储器的错误。
此外,如上所述,子阵列充当单元区域的物理区域,并且将通过将子阵列 重组而获得的虚拟区域最优地分布到单独的备用存储单元以使错误修复最大 化。
此外,如上所述,可以提供同时地不仅满足虚拟区域的设计目标值、而且 满足物理区域的设计目标值的备用存储单元的分配,并且在分布时根据备用存 储单元的分配结果在由相应存储介质中的由虚拟区域的存储介质中的物理区域 和虚拟区域管理的错误地址存储空间中存储K位的位置信息、M+N-K位的位置 信息以及错误地址。
此外,如上所述,在使用列和行对由快速列优先算法和快速行优先算法选 择的虚拟区域重复地执行修复之后,可以对下一虚拟区域执行修复。
在下文中将参考图1至图47来详细地描述根据本发明的示例性实施例的存 储器管理方法。
图10是图示出根据本发明的示例性实施例的基于列优先存储器管理方法的 流程图。
首先,分析装置200针对物理区域(或物理基本区域PX)和虚拟区域(或 虚拟基本区域VY)生成错误信息管理表,其表示作为错误的数目的(fX,Y)、 作为每个物理区域中可用的备用行的数目的RX、作为每个虚拟区域中可用的备 用列的数目的CY以及作为每个虚拟区域中的具有未修复错误的列的数目的AY的关系。在这种情况下,X表示物理区域且Y表示虚拟区域。
在这里,虚拟区域可以是可由分析装置200配置的所有组合中的一个,其 中,分析装置200将每个物理基本区域划分成具有相同尺寸的两个物理子区域 并将物理子区域组合成虚拟基本区域。
此外,分析装置200检查是否所有可配置组合都满足由存储器管理方法预 先设定的目标值。在这种情况下,目标值是对应于要存储的信息的预先设定的 值(或将满足要存储的信息的值)。在应用使用冗余存储单元的存储器修复的 存储器系统的情况下,目标值可以是与在存储器存储单元中年提供的可用(或 者在存储器系统中可用)的备用存储单元的数目相同的预定数目(包括例如备 用行的数目、备用列的数目等)。亦即,目标值可以是在映射到与要存储的信 息相对应的预定值的所有物理基本区域中可以可用的相同资源的数目。此外, 在避免错误存储器块的存储器系统的情况下,目标值可以是在存储器系统的所 有物理基本区域中可用的相同存储器块的数目。
此外,当要存储在组合虚拟基本区域中的信息的数目满足预定目标值时, 分析装置200在M+N位之中在存储介质100中的预定(或先前分配)存储区域 中存储与满足目标值的虚拟基本区域相关的K位的位置信息和与满足目标值的 虚拟子区域相关的M+N-K位的位置信息。在这里,K位的位置信息的值和 M+N-K位的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域 的键值(或K位的位置)的“0”(或K位)和对应于虚拟子区域的键值(或M+N-K 位的位置)的“1”(或M+N-K位)配置。在这里,M表示物理区域的数目,N 表示虚拟区域的数目,并且M、N和K是自然数。此外,K的大小可以是用以 接近信息存储表110的位速率。
作为示例,如图11中所示,为了简要地描述本发明的示例性实施例,当假 设一行或列不具有多个错误(或者一行或列仅具有一个错误)时,分析装置200 将存储介质100的物理区域(或子阵列)划分成多个物理子区域并将物理子区 域组合(或重组)以生成虚拟基本区域和虚拟子区域。在这种情况下,为了简 要地描述本发明的示例性实施例,将具有相同数目的物理子区域重组以生成虚 拟区域,但是示例性实施例不限于此。如图1和相关详细描述中所述,可以通 过将满足目标值的物理子区域组合来生成虚拟区域。在这里,将每个物理区域 的物理子区域第0号重组成虚拟区域第0号(例如,黄色),将每个物理区域 的物理子区域第1号重组成虚拟区域第1号(例如,蓝色),将每个物理区域 的物理区域第2号重组成虚拟区域第2号(例如,绿色),并且将每个物理区 域的物理子区域第3号重组成虚拟区域第3号(例如,红色)。此外,物理区 域使用备用行来执行错误修复,并且重组虚拟区域使用备用列来执行错误修复。
在本示例性实施例中,将每个物理区域设置成使用四个或三个备用行,并 且将虚拟区域设置成使用七个或八个备用列。在这种情况下,备用存储单元的 数目改变,因为在存储器制造过程期间即使在备用行区域和备用列区域中也可 能产生错误,并且因此可能在特定区域中不使用在设计时嵌入的所有备用存储 单元。此外,在本发明的示例性实施例中,将特定备用存储单元的数目设置成 改变以便显示出即使当引起上述问题时也发现最优错误修复方法在操作。
此外,如图12中所示,分析装置200生成错误信息管理表,其表示物理区 域(例如,P0至P3)、虚拟区域(例如,V0至V3)、根据其中错误存储单元产 生的位置与物理区域和虚拟区域相关的错误的数目(例如,f0,0至f3,3)、每个物 理区域中可用的备用行的数目(例如,R0至R3)、每个虚拟区域中可用的备用 列的数目(例如,C0至C3)以及每个虚拟区域中的未被修复且具有错误的列的 数目(例如,A0至A3)的关系。此外,如图12中所示,根据举例说明的目标 值,设定在P3中三个备用行可用,在其余物理区域中四个备用行可用,在V1中七个备用列可用,并且在其余虚拟区域中八个备用列可用(S1010)。
然后,分析装置200选择其中AY﹣CY(其为AY与CY之间的差,所述AY是虚拟区域中的具有未修复错误的列的数目,并且CY是每个虚拟区域中可用的 备用列的数目)具有最大值的虚拟区域VQ。在这里,Q可以是其中具有错误的 列的数目与备用列的数目之间的差具有最大值的虚拟区域的值。
亦即,分析装置200搜索(或选择/检查)其中对于所有虚拟区域而言差值 AY﹣CY具有最大值的虚拟区域VQ,所述差值AY﹣CY是AY与CY之间的差,所 述AY是虚拟区域中的具有未修复错误的列的数目,并且CY是每个虚拟区域中 可用的备用列的数目。
例如,如图12中所示,分析装置200针对所有虚拟区域(例如,V0至V3) 计算A0﹣C0(15﹣8=7)、A1﹣C1(8﹣7=1)、A2﹣C2(15﹣8=7)以及A3﹣C3(8﹣ 8=0),检查计算的A0﹣C0(15﹣8=7)、A1﹣C1(8﹣7=1)、A2﹣C2(15﹣8=7)以及 A3﹣C3(8﹣8=0)之中的具有最大值的虚拟区域V0和V2,并且选择V0作为具有 最大值的被检查虚拟区域V0和V2之间的任何一个(S1020)。
然后,分析装置200检查AQ(其为选定虚拟区域VQ中的具有未修复错误 的列的数目)是否等于或小于CQ(其为虚拟区域VQ中可用的备用列的数目)。
例如,如图12中所示,分析装置200检查A0(例如,15)(其为所选虚拟 区域V0中的具有未修复错误的列的数目)是否等于或小于C0(例如,8)(其 为所选虚拟区域V0中可用的备用列的数目)(S1030)。
作为检查结果,当作为选定虚拟区域VQ中的具有未修复错误的列的数目的 AQ等于或小于作为虚拟区域VQ中可用的备用列的数目的CQ时,分析装置200 检查错误修复已成功地完成。此外,分析装置200在错误修复完成时根据备用 存储单元的分配结果在由对应于虚拟区域的存储介质100中的虚拟区域和物理 区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚 拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程。在这里, K位的位置信息的值和M+N-K位的位置信息的值被配置为向量,并且位的位置 由对应于虚拟基本区域的键值(或K位的位置)的“0”(或K位)和对应于虚拟 子区域的键值(或M+N-K位的位置)的“1”(或M+N-K位)配置。
例如,当A0(例如,8)(其为选定虚拟区域V0中的具有未修复错误的列 的数目)与C0(例如,8)(其为选定虚拟区域V0中可用的备用列的数目)相 等时,分析装置200检查错误修复成功地完成,并且根据备用存储单元的分配 结果在由对应于虚拟区域V0的存储介质100中的物理区域和虚拟区域管理的错 误地址存储空间中存储与虚拟区域V0相关的K位的位置信息、与虚拟区域V0相关的M+N-K位的位置信息以及错误地址,并结束错误修复过程(S1040)。
此外,作为检查结果,当AQ(其为选定虚拟区域VQ中的具有未修复错误 的列的数目)大于CQ(其为选定虚拟区域VQ中可用的备用列的数目)时,分 析装置200确定仅用备用列不能实现修复。因此,为了使用备用列来执行恢复, 分析装置200确定对于所有物理区域PX而言是否存在大于0的RX,其为每个物 理区域中可用的备用行的数目且是预先设定的。
例如,如图12中所示,当A0(例如,15)(其为选定虚拟区域V0中的具 有未修复错误的列的数目)大于C0(例如,8)(其为选定虚拟区域V0中可用 的备用列的数目)时,分析装置200确定对于所有物理区域PX而言是否存在大 于0的RX,其为每个物理区域中可用的备用行的数目且是预先设定的(S1050)。
作为确定结果,当对于所有物理区域PX而言不存在大于0的RX(其为每 个物理区域中可用的备用行的数目且是预先设定的)时,分析装置200确定错 误修复失败,并且结束整个过程。
例如,当对于所有物理区域PX而言不存在大于0的RX(其为每个物理区域 中可用的备用行的数目且是预先设定的)时,分析装置200确定错误修复失败, 并且结束整个错误修复过程(S1060)。
此外,作为确定结果,当对于所有物理区域PX而言存在大于0的RX(其为 每个物理区域中可用的备用行的数目且是预先设定的)时,分析装置200选择 其中(PX,VQ)具有错误且RX(其为物理区域中可用的备用行的数目)对于虚 拟区域VQ的所有物理区域PX而言(或者对于虚拟区域VQ而言)具有最大值的 一个物理区域PA。在这里,(PX,VD)表示错误信息管理表的存储单元,其由 PX和VD定义。
此外,分析装置200检查对应于选定物理区域PA的(PA,VQ)中的其中 AQ(其为选定虚拟区域VQ中的具有未修复错误的列的数目)减小尽可能多的行。 在这里,(PA,VQ)表示由PA和VQ定义的存储单元。
例如,如图12中所示,当对于所有物理区域PX而言存在大于0的RX(其 为每个物理区域中可用的备用行的数目且是预先设定的)时,分析装置200搜 索具有错误(例如,fX,0≠0)和RX(例如,4)(其为物理区域中可用的备用行 的数目)的最大值的虚拟区域V0中的多个物理区域(例如,P0、P1和P2)。然 后,分析装置200选择多个所搜索的物理区域(例如,P0、P1和P2)之中的任 何一个物理区域(例如,P0)(S1070)。
然后,分析装置200将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里, (PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,D)是 存储在由PA和VQ定义的每个存储单元中的未修复错误的数目。此外,分析装 置200将AQ(其为对应于选定物理区域PA的具有未修复错误的列的数目)减小 与可以由备用行修复、使得不需要错误修复的列的数目(其位第二数目)一样 多。此外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目的 所使用备用行的数目一样多。
例如,如图13中所示,分析装置200将作为对应于与虚拟区域V0相关的 物理区域P0的(P0,V0)的(f0,0)的值的4减小0而得到3,将作为对应于具 有错误的(P0,V0)的列的数目A0的15减小1而得到14,并且将作为对应于(P0,V0)的备用行的数目R0的4减小1而得到3(S1080)。
然后,分析装置200返回至选择其中AY﹣CY(其为AY(其为每个虚拟区 域中的具有未修复错误的列的数目)与CY(其为每个虚拟区域中可用的备用列 的数目)之间的差)具有最大值的虚拟区域VQ以重复地执行分配备用行的过程 直至AQ(其为选定虚拟区域VQ中的具有未修复错误的列的数目)等于或小于 CQ(其为虚拟区域VQ中可用的备用列的数目)为止的过程(例如步骤S1020)。
例如,如图12至27中所示,分析装置200重复地执行分配备用行的过程 以最终生成图27中所示的错误信息管理表。在这里,其中(AY﹣CY)具有最大 值的虚拟区域V0的A0的值等于或小于C0(其为可用备用列的数目),使得修 复成功并结束整个备用行分配过程(S1090)。在这里,AY﹣CY是AY(其为每 个虚拟区域中的具有未修复错误的列的数目)与CY(其为每个虚拟区域中可用 的备用列的数目)之间的差。
如果其中没有留下备用行且(AY﹣CY)具有最大值的虚拟区域VY的AY的 值超过CY的值,则分析装置200确定错误修复失败,并结束整个过程。
此外,作为执行根据本发明的示例性实施例的基于列优先存储器管理方法 的结果,使用P0的全部四个备用行来修复(P0,V0)的一个错误和(P0,V2) 的三个错误,使用P1的全部四个备用行来修复(P1,V0)的一个错误、(P1, V1)的一个错误以及(P1,V2)的一个错误,使用P2的全部四个备用行来修复 (P2,V0)的两个错误和(P2,V2)的两个错误,并且使用P3的全部的三个备 用行来修复(P3,V0)的两个错误和(P3,V2)的一个错误。此外,检查所有留 下的错误都被备用列修复,并且可以用根据本发明的实现实施例的基于列优先 的存储器管理方法来成功地完成备用存储单元分配。在这里,(P0,V0)表示 由P0和V0定义的存储单元。
图28是图示出根据本发明的示例性实施例的基于行优先存储器管理方法的 流程图。
首先,分析装置200针对物理区域(或物理基本区域PX)和虚拟区域(或 虚拟基本区域VY)生成错误信息管理表,其表示作为错误的数目的(fX,Y)、作 为每个物理区域中可用的备用行的数目的RX、作为每个虚拟区域中可用的备用 列的数目的CY以及作为每个虚拟区域中的具有未修复错误的列的数目的AY的 关系。
在这里,虚拟区域可以是可由分析装置200配置的所有组合中的一个,其 中,分析装置200将每个物理基本区域划分成具有相同尺寸的两个物理子区域 并将物理子区域组合成虚拟基本区域。
此外,分析装置200检查是否所有可配置组合都满足由存储器管理方法预 先设定的目标值。在在这种情况下,目标值是对应于要存储的信息的预先设定 的值(或将满足要存储的信息的值)。在应用使用冗余存储单元的存储器修复 的存储器系统的情况下,目标值可以是在存储器存储单元中提供的可用(或者 在存储器系统中可用)的备用存储单元的预定数目(包括例如备用行的数目、 备用列的数目等)。亦即,目标值可以是在映射到与要存储的信息相对应的预 定值的所有物理基本区域中可以可用的相同资源的数目。此外,在避免错误存 储器块的存储器系统的情况下,目标值可以是在存储器系统的所有物理区域中 可用的相同存储器块的数目。
此外,当要存储在组合虚拟基本区域中的信息的数目满足预定目标值时, 分析装置200在M+N位之中在存储介质100中的预定(或先前分配)存储区域 中存储与满足目标值的虚拟基本区域相关的K位的位置信息和与满足目标值的 虚拟子区域相关的M+N-K位的位置信息。在这里,K位的位置信息的值和 M+N-K位的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域 的键值(或K位的位置)的“0”(或K位)和对应于虚拟子区域的键值(或M+N-K 位的位置)的“1”(或M+N-K位)配置。在这里,M表示物理区域的数目,N 表示虚拟区域的数目,并且M、N和K是自然数。此外,K的大小可以是用以 接近信息存储表110的位速率(S2810)。
然后,分析装置200选择其中差值AY-CY具有最大值的虚拟区域VQ,所述 差值AY﹣CY是AY与CY之间的差,所述AY是虚拟区域中的具有未修复错误的 列的数目,并且CY是每个虚拟区域中可用的备用列的数目。在这里,Q可以是 其中具有错误的列的数目与备用列的数目之间的差具有最大值的虚拟区域的 值。
亦即,分析装置200搜索(或选择/检查)其中对于所有虚拟区域而言差值AY﹣CY具有最大值的虚拟区域VQ,所述差值AY﹣CY是AY与CY之间的差,所 述AY是具有未修复错误的列的数目,并且CY是每个虚拟区域中可用的备用列 的数目(S2820)。
然后,分析装置200确定对于所有物理区域PX而言是否存在大于0的RX, 其为每个物理区域中可用的备用行的数目且是预先设定的(S2830)。
作为确定结果,当针对所有物理区域PX不存在大于0的RX(其位每个物理 区域中可用的备用行的数目且是预先设定的)时,分析装置200检查AY(其位 所有虚拟区域VY中的具有未修复错误的列的数目)是否等于或小于CY(其为 所有虚拟区域VY中可用的备用列的数目)(S2840)。
作为检查结果,当AY(其为所有虚拟区域VY中的具有未修复错误的列的 数目)等于或小于CY(其为虚拟区域VY中可用的备用列的数目)时,分析装 置200确定错误修复已成功地完成。此外,分析装置200在错误修复完成时根 据备用存储单元的分配结果在由对应于虚拟区域的存储介质100中的虚拟区域 和物理区域管理的错误地址存储空间中存储与虚拟区域VY相关的K位的位置信 息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程。 在这里,K位的位置信息的值和M+N-K位的位置信息的值被配置为向量,并且 位的位置由对应于虚拟基本区域的键值(或K位的位置)的“0”(或K位)和对 应于虚拟子区域的键值(或M+N-K位的位置)的“1”(或M+N-K位)配置(S2850)。
此外,作为检查结果,当AY(其为所有虚拟区域VY中的具有未修复错误 的列的数目)大于CY(其为所有虚拟区域VY中可用的备用列的数目)时,分 析装置200确定仅使用可用备用列不能实现修复且错误修复失败并结束整个过 程(S2860)。
此外,作为确定结果,当对于所有物理区域PX而言存在大于0的RX(其为 每个物理区域中可用的备用行的数目且是预先设定的)时,分析装置200选择 其中(PX,VQ)具有错误且RX(其为物理区域中可用的备用行的数目)对于虚 拟区域VQ的所有物理区域PX而言(或者对于虚拟区域VQ而言)具有最大值的 一个物理区域PA。在这里,(PX,VQ)表示由PX和VQ定义的存储单元且RX是物理区域中的可用备用行的数目。
此外,分析装置200检查其中AQ(其为选定虚拟区域VQ中的具有未修复 错误的列的数目且是预先设定的)在对应于选定物理区域PA的(PA,VQ)中减 小尽可能多的行(S2870)。在这里,(PA,VQ)表示由PA和VQ定义的存储单 元。
然后,分析装置200将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里, (PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,Q)是 存储在由PA和VQ定义的每个存储单元中的未修复错误的数目。此外,分析装 置200将AQ(其为对应于选定物理区域PA的具有未修复错误的列的数目)减小 与可以由备用行修复、使得不需要错误修复的列的数目(其位第二数目)一样 多。此外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目的 所使用备用行的数目一样多(S2880)。
然后,分析设备200返回至选择其中AY﹣CY(其为AY(其为每个虚拟区 域中的具有未修复错误的列的数目)与CY(其为每个虚拟区域中可用的备用列 的数目)之间的差)具有最大值的虚拟区域VQ的过程(例如,步骤S2820)以 重复地执行分配备用行的过程直至大于0的RX(其为每个物理区域中可用的备 用行的数目且是预先设定的)的数目变成0为止(或者直至在每个物理区域中 没有可用备用行为止)。
图29是图示出根据本发明的示例性实施例的快速基于列优先存储器管理方 法的流程图。
首先,分析装置200针对物理区域(或物理基本区域PX)和虚拟区域(或 虚拟基本区域VY)生成错误信息管理表,其表示作为错误的数目的(fX,Y)、作 为每个物理区域中可用的备用行的数目的RX、作为每个虚拟区域中可用的备用 列的数目的CY以及作为每个虚拟区域中的具有未修复错误的列的数目的AY的 关系。在这种情况下,X表示物理区域且Y表示虚拟区域。
在这里,虚拟区域可以是可由分析装置200配置的所有组合中的一个,其 中,分析装置200将每个物理基本区域划分成具有相同尺寸的两个物理子区域 并将物理子区域组合成虚拟基本区域。
此外,分析装置200检查是否所有可配置组合都满足由存储器管理方法预 先设定的目标值。在在这种情况下,目标值是对应于要存储的信息的预先设定 的值(或将满足要存储的信息的值)。在应用使用冗余存储单元的存储器修复 的存储器系统的情况下,目标值可以是与在存储器存储单元中年提供的可用(或 者在存储器系统中可用)的备用存储单元的数目相同的预定数目(包括例如备 用行的数目、备用列的数目等)。亦即,目标值可以是在映射到与要存储的信 息相对应的预定值的所有物理基本区域中可以可用的相同资源的数目。此外, 在避免错误存储器块的存储器系统的情况下,目标值可以是在存储器系统的所 有物理基本区域中可用的相同存储器块的数目。
此外,当要存储在组合虚拟基本区域中的信息的数目满足预定目标值时, 分析装置200在M+N位之中在存储介质100中的预定(或先前分配)存储区域 中存储与满足目标值的虚拟基本区域相关的K位的位置信息和与满足目标值的 虚拟子区域相关的M+N-K位的位置信息。在这里,K位的位置信息的值和 M+N-K位的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域 的键值(或K位的位置)的“0”(或K位)和对应于虚拟子区域的键值(或M+N-K 位的位置)的“1”(或M+N-K位)配置。在这里,M表示物理区域的数目,N 表示虚拟区域的数目,并且M、N和K是自然数。此外,K的大小可以是用以 接近信息存储表110的位速率。
作为示例,如图11中所示,为了简要地描述本发明的示例性实施例,当假 设一行或列不具有多个错误(或者一行或列仅具有一个错误)时,分析装置200 将存储介质100的物理区域(或子阵列)划分成多个物理子区域并将物理子区 域组合(或重组)以生成虚拟基本区域和虚拟子区域。在这种情况下,为了简 要地描述本发明的示例性实施例,将具有相同数目的物理子区域重组以生成虚 拟区域,但是示例性实施例不限于此。如图1和相关详细描述中所述,可以通 过将满足目标值的物理子区域组合来生成虚拟区域。在这里,将每个物理区域 的物理子区域第0号重组成虚拟区域第0号(例如,黄色),将每个物理区域 的物理子区域第1号重组成虚拟区域第1号(例如,蓝色),将每个物理区域 的物理区域第2号重组成虚拟区域第2号(例如,绿色),并且将每个物理区 域的物理子区域第3号重组成虚拟区域第3号(例如,红色)。此外,物理区 域使用备用行来执行错误修复,并且重组虚拟区域使用备用列来执行错误修复。
在本示例性实施例中,将每个物理区域设置成使用四个或三个备用行,并 且将虚拟区域设置成使用七个或八个备用列。在这种情况下,备用存储单元的 数目改变,因为在存储器制造过程期间即使在备用行区域和备用列区域中也可 能产生错误,并且因此可能在特定区域中不使用在设计时嵌入的所有备用存储 单元。此外,在本发明的示例性实施例中,将特定备用存储单元的数目设置成 改变以便显示出即使当引起上述问题时也发现最优错误修复方法在操作。
此外,如图31中所示,分析装置200生成错误信息管理表,其表示物理区 域(例如,P0至P3)、虚拟区域(例如,V0至V3)、根据其中错误存储单元产 生的位置与物理区域和虚拟区域相关的错误的数目(例如,f0,0至f3,3)、每个物 理区域中可用的备用行的数目(例如,R0至R3)、每个虚拟区域中可用的备用 列的数目(例如,C0至C3)以及每个虚拟区域中的具有未修复错误的列的数目 (例如,A0至A3)。此外,如图31中所示,根据举例说明的目标值,设定在P3中三个备用行可用,在其余物理区域中四个备用行可用,在V1中七个备用列 可用,并且在其余虚拟区域中八个备用列可用(S2910)。
然后,分析装置200分别地计算AY﹣CY,其为AY(其为每个虚拟区域中 的具有未修复错误的列的数目)与CY(其为每个虚拟区域中的可用备用列的数 目)之间的差。
此外,分析装置200将计算差值AY﹣CY排序。在这种情况下,排序方法可 以是递降排序或递升排序。
亦即,分析装置200基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应 于计算差值AY﹣CY的虚拟区域VY排序。
例如,如图30中所示,分析装置200针对所有虚拟区域(例如,V0至V3) 计算A0﹣C0(15﹣8=7)、A1﹣C1(8﹣7=1)、A2﹣C2(15﹣8=7)以及A3﹣C3(8﹣ 8=0),并且将计算的A0﹣C0(15﹣8=7)、A1﹣C1(8﹣7=1)、A2﹣C2(15﹣8=7)以 及A3﹣C3(8﹣8=0)按照递降顺序排列(S2920)。
然后,分析装置200按照排列顺序选择其中错误未被修复的虚拟区域VD。 在这里,D可以是通过使用具有错误的列的数目与备用列的数目之间的差值将 虚拟区域按照递降顺序排列并按照排列顺序选择其中错误未被修复的虚拟区域 而获得的值。
例如,分析装置200选择与用于图30中所示的所有虚拟区域(例如V0至 V3)的差值(AY﹣CY)之中的A0﹣C0(15﹣8=7)相对应的V0,其为其中错 误未被修复的虚拟区域中的第一个。
然后,分析装置200主要检查AD(其为选定虚拟区域VD中的具有未修复 错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用列的数 目)。
例如,如图31中所示,分析装置200检查A0(例如,15)(其为所选虚拟 区域V0中的具有未修复错误的列的数目)是否等于或小于C0(例如,8)(其 为所选虚拟区域V0中可用的备用列的数目)(S2940)。
作为主要检查结果,当AD(其为选定虚拟区域VD中的具有未修复错误的 列的数目)大于CD(其为虚拟区域VD中可用的备用列的数目)时,分析装置 200确定仅用备用列不能实现修复。因此,为了使用备用行来执行修复,分析装 置200确定对于所有物理区域PX而言是否存在在虚拟区域VD中大于0的RX, 其为每个物理区域中可用的备用行的数目且是预先设定的。
例如,如图31中所示,当A0(例如,15)(其为所选虚拟区域V0中的具 有未修复错误的列的数目)大于C0(例如,8)(其为所选虚拟区域V0中可用 的备用列的数目)时,分析装置200确定对于所有物理区域PX而言是否存在在 每个虚拟区域中大于0的RX,其为每个物理区域中可用的备用行的数目且是预 先设定的。
作为确定结果,当对于所有物理区域PX而言不存在大于0的RX(其为每个 物理区域中可用的备用行的数目且是预先设定的)时,分析装置200确定错误 修复失败,并且结束整个过程。
例如,当对于所有物理区域PX而言不存在大于0的RX(其为每个物理区域 中可用的备用行的数目且是预先设定的)时,分析装置200确定错误修复失败, 并且结束整个错误修复过程(S2960)。
此外,作为确定结果,当对于所有物理区域PX而言存在大于0的RX(其为 每个物理区域中可用的备用行的数目且是预先设定的)时,分析装置200选择 其中(PX,VD)具有错误且RX(其为物理区域中可用的备用行的数目)对于虚 拟区域VD的所有物理区域PX而言(或者对于虚拟区域VD而言)具有最大值的 一个物理区域PA。在这里,(PX,VD)表示由PX和VD定义的存储单元。
此外,分析装置200检查对应于选定物理区域PA的(PA,VD)中的其中 AD(其为选定虚拟区域VD中的具有未修复错误的列的数目)减小尽可能多的行。
例如,当对于所有物理区域PX而言存在大于0的RX(其为每个物理区域中 可用的备用行的数目且是预先设定的)时,分析装置200搜索具有错误(例如, fX,0≠0)和RX(例如,4)(其为物理区域中可用的备用行的数目)的最大值的 虚拟区域V0中的多个物理区域(例如,P0、P1和P2)。然后,分析装置200选 择多个所选物理区域(例如,P0、P1和P2)之中的任何一个物理区域(例如, P0)(S2970)。
然后,分析装置200将对应于选定物理区域PA的(PA,VD)的(fA,D)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里, (PA,VD)表示错误信息管理表的由PA和VD定义的存储单元,并且(fA,Q)是 存储在由PA和VD定义的存储单元中的未修复错误的数目。此外,分析装置200 将AD(其为对应于选定物理区域PA的具有未修复错误的列的数目)减小与可以 由备用行修复、使得不需要错误修复的列的数目(其位第二数目)一样多。此 外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目的所使用 备用行的数目一样多。
例如,如图32中所示,分析装置200将作为对应于与虚拟区域V0相关的 物理区域P0的(P0,V0)的(f0,0)的值的4减小1而得到3,将作为对应于具 有错误的(P0,V0)的列的数目A0的15减小1而得到14,并且将作为对应于 (P0,V0)的备用行的数目R0的4减小1而得到3(S2980)。
然后,分析装置200返回至主要检查AD(其为选定虚拟区域VD中的具有 未修复错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用 列的数目)的过程(例如,步骤S2940)以重复地执行向选定虚拟区域VD分配 备用行的过程直至AY(其为选定虚拟区域VD中的具有未修复错误的列的数目) 等于或小于CY(其为所有虚拟区域VY中可用的备用列的数目)为止。
例如,如图31至图38中所示,分析装置200重复地执行向虚拟区域V0分 配备用行的过程从而满足与虚拟区域V0相关的A0<=C0(S2990)。
此外,作为主要检查结果,当AD(其为所选虚拟区域VD中的具有未修复 错误的列的数目)等于或小于CD(其为虚拟区域VD中可用的备用列的数目) 时(S2980),分析装置200辅助地检查AY(其为所有虚拟区域VY中的具有未 修复错误的列的数目)是否等于或小于CY(其为所有虚拟区域VY中可用的备 用列的数目)。
例如,当A0(例如,8)(其为所选虚拟区域V0中的具有未修复错误的列 的数目)等于C0(例如,8)(其为所选虚拟区域V0中可用的备用列的数目) 时,分析装置200辅助地检查A0、A1、A2以及A3(其为所有虚拟区域V0至V3中的具有未修复错误的列的数目)是否等于或小于C0、C1、C2以及C3(其为所 有虚拟区域V0至V3中可用的备用列的数目)(S3000)。
作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复错误的 列的数目)等于或小于CY(其为所有虚拟区域VY中可用的备用列的数目)时, 分析装置200确定错误修复已成功地完成。此外,分析装置200在错误修复完 成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质100中的虚 拟区域和物理区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位 置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个 过程。在这里,K位的位置信息的值和M+N-K位的位置信息的值被配置为向量, 并且位的位置由对应于虚拟基本区域的键值(或K位的位置)的“0”(或K位) 和对应于虚拟子区域的键值(或M+N-K位的位置)的“1”(或M+N-K位)配置。
例如,A0、A1、A2以及A3(其为所有虚拟区域V0至V3中的具有未修复错 误的列的数目)等于或小于C0、C1、C2以及C3(其为所有虚拟区域V0至V3中 可用的备用列的数目),分析装置200确定错误修复成功地完成。此外,分析 装置200根据备用存储单元的分配结果在由对应于所有虚拟区域V0至V3的存储 介质100中的虚拟区域和物理区域管理的错误地址存储空间中存储与所有虚拟 区域V0至V3相关的K位的位置信息、与所有虚拟区域V0至V3相关的M+N-K 位的位置信息以及错误地址(S3010)。
此外,作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复 错误的列的数目)不等于或小于CY(其为所有虚拟区域VY中可用的备用列的 数目)时(或者当存在比所有虚拟区域VY中可用的备用列的数目CY更大的未 被修复且具有错误的列的数目AY中的至少一个时),分析装置200返回至选择 所有排序虚拟区域VY之中的其中错误未被修复的下一虚拟区域(或新虚拟区域) VD的过程。
在重复地执行所述过程直至AY(其为选定虚拟区域VD中的具有未修复错 误的列的数目)变得等于或小于CY(其为所有虚拟区域VY中可用的备用列的 数目)为止之后,分析装置200选择新的虚拟区域VD。此外,分析装置200重 复地执行主要检查AD(其为选定的新虚拟区域VD中的具有未修复错误的列的 数目)是否等于或小于CD(其为新虚拟区域VD中可用的备用列的数目)的过 程和向选定的新虚拟区域VD分配备用行的过程直至AD(其为选定的新虚拟区 域VD中的未被修复且具有错误的列的数目)变得等于或小于CD(其为虚拟区 域VD中可用的备用列的数目)为止。
如上所述,分析在200可以通过对未被修复且具有错误的选定虚拟区域VD中的列的备用行分配过程来对所有虚拟区域VY执行备用列分配过程。
例如,在向虚拟区域V0完全分配备用行之后,针对所有虚拟区域(例如, V0至V3),当A2(其为具有未修复错误的列的数目)大于C2(其为所有虚拟 区域中可用的备用列的数目)时,分析装置200重复地执行针对如图3中所示 的所有排序虚拟区域(例如,V0至V3)选择作为与差值(AY﹣CY)之中的差 A2﹣C2(15﹣8=7)相对应的其中错误未被修复的第二虚拟区域的V2并向所选 虚拟区域V2分配备用行的过程。
亦即,如图39至图45中所示,分析装置200重复地执行向虚拟区域V2分 配备用行的过程从而满足与虚拟区域V2相关的A2<=C2
此外,在向虚拟区域V2完全分配备用行之后,分析装置200重复地执行针 对图31中所示的所有虚拟区域(例如,V0至V3)选择作为与差值AY﹣CY之中 的A1﹣C1(8﹣7=1)相对应的其中错误未被修复的第三虚拟区域的V1并向所 选虚拟区域V1分配备用行的过程。
亦即,如图46中所示,分析装置200执行分配备用行以满足与虚拟区域V1相关的A1<=C1以执行向所有虚拟区域(例如,V0至V3)分配备用列的过 程并成功地执行修复的过程且结束整个备用行分配过程(S3020)。
当没有留下(或可用)备用行且其中AY﹣CY(其为AY与CY之间的差,所 述AY是每个虚拟区域中的具有未修复错误的列的数目,并且CY是每个虚拟区 域中可用的备用列的数目)具有最大值的虚拟区域VY的AY的值超过CY的值时, 分析装置200确定错误修复失败并结束整个过程。
图47是图示出根据本发明的示例性实施例的快速基于行优先存储器管理方 法的流程图。
首先,分析装置200针对物理区域(或物理基本区域PX)和虚拟区域(或 虚拟基本区域VY)生成错误信息管理表,其表示作为错误的数目的(fX,Y)、作 为每个物理区域中可用的备用行的数目的RX、作为每个虚拟区域中可用的备用 列的数目的CY以及作为具有未修复错误的每个虚拟区域中的列的数目的AY的 关系。在这种情况下,X表示物理区域且Y表示虚拟区域。
在这里,虚拟区域可以是可由分析装置200配置的所有组合中的一个,其 中,分析装置200将每个物理基本区域划分成具有相同尺寸的两个物理子区域 并将物理子区域组合成虚拟基本区域。
此外,分析装置200检查是否所有可配置组合都满足由存储器管理方法预 先设定的目标值。在在这种情况下,目标值是对应于要存储的信息的预先设定 的值(或将满足要存储的信息的值)。在应用使用冗余存储单元的存储器修复 的存储器系统的情况下,目标值可以是在存储器存储单元中提供的可用(或者 在存储器系统中可用)的备用存储单元的预定数目(包括例如备用行的数目、 备用列的数目等)。亦即,目标值可以是在映射到与要存储的信息相对应的预 定值的所有物理基本区域中可以可用的相同资源的数目。此外,在避免错误存 储器块的存储器系统的情况下,目标值可以是在存储器系统的所有物理区域中 可用的相同存储器块的数目。
此外,当要存储在组合虚拟基本区域中的信息的数目满足预定目标值时, 分析装置200在M+N位之中在存储介质100中的预定(或先前分配)存储区域 中存储与满足目标值的虚拟基本区域相关的K位的位置信息和与满足目标值的 虚拟子区域相关的M+N-K位的位置信息。在这里,K位的位置信息的值和 M+N-K位的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域 的键值(或K位的位置)的“0”(或K位)和对应于虚拟子区域的键值(或M+N-K 位的位置)的“1”(或M+N-K位)配置。在这里,M表示物理区域的数目,N 表示虚拟区域的数目,并且M、N和K是自然数。此外,K的大小可以是用以 接近信息存储表110的位速率(S4710)。
然后,分析装置200分别地计算AY﹣CY,其为AY(其为每个虚拟区域中 的具有未修复错误的列的数目)与CY(其为每个虚拟区域中可用的备用列的数 目)之间的差。
此外,分析装置200将计算的差值AY﹣CY排序。在这种情况下,排序方法 可以是递降排序或递升排序。
亦即,分析装置200基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应 于计算的差值AY﹣CY的虚拟区域VY排序(S4720)。
然后,分析装置200按照排列顺序选择其中错误未被修复的虚拟区域VD。 在这里,D可以是通过使用具有错误的列的数目与备用列的数目之间的差值按 照递降顺序将虚拟区域排序并按照排列顺序选择其中错误未被修复的虚拟区域 而获得的值(S4730)。
然后,分析装置200主要检查AD(其为选定虚拟区域VD中的具有未修复 错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用列的数 目)(S4740)。
作为主要检查结果,当AD(其为选定虚拟区域VD中的具有未修复错误的 列的数目)大于CD(其为虚拟区域VD中可用的备用列的数目)时,分析装置 200确定仅用备用列不能实现修复。因此,为了使用备用行来执行修复,分析装 置200确定对于所有物理区域PX而言是否存在在虚拟区域VD中大于0的RX, 其为每个物理区域中可用的备用行的数目且是预先设定的(S4750)。
作为确定结果,当对于所有物理区域PX而言不存在大于0的RX(其为每个 物理区域中可用的备用行的数目且是预先设定的)时,分析装置200确定错误 修复失败,并且结束整个过程(S4760)。
此外,作为确定结果,当对于所有物理区域PX而言存在大于0的RX(其为 每个物理区域中可用的备用行的数目且是预先设定的)时,分析装置200选择 其中(PX,VD)具有错误且RX(其为物理区域中可用的备用行的数目)对于虚 拟区域VD的所有物理区域PX而言(或者对于虚拟区域VD而言)具有最大值的 一个物理区域PA
此外,分析装置200检查对应于选定物理区域PA的(PA,VD)中的其中 AD(其为选定虚拟区域VD中的具有未修复错误的列的数目)减小尽可能多的行 (S4770)。
然后,分析装置200将对应于选定物理区域PA的(PA,VD)的(fA,D)的 值减小与可以由备用行修复的错误的数目(其是第一数目)一样多。在这里, (PA,VD)表示由PA和VD定义的存储单元。(fA,D)是存储在由PA和VD定义 的存储单元中的未修复错误的数目。此外,分析装置200将AD(其为对应于选 定物理区域PA的具有未修复错误的列的数目)减小与可以由备用行修复、使得 不需要错误修复的列的数目(其为第二数目)一样多。此外,分析装置200将作为可用备用行的数目的RA减小与作为第三数目的所使用的备用行的数目一样 多(S4780)。
然后,分析装置200返回至主要检查AD(其为选定虚拟区域VD中的具有 未修复错误的列的数目)是否等于或小于CD(其为虚拟区域VD中可用的备用 列的数目)的过程(例如,步骤S4740)以重复地执行向选定虚拟区域VD分配 备用行的过程直至AY(其为选定虚拟区域VD中的具有未修复错误的列的数目) 等于或小于CY(其为所有虚拟区域VY中可用的备用列的数目)为止(S4790)。
此外,作为主要检查结果,当AD(其为所选虚拟区域VD中的具有未修复 错误的列的数目)等于或小于CD(其为虚拟区域VD中可用的备用列的数目) 时,分析装置200辅助地检查AY(其为所有虚拟区域VY中的具有未修复错误 的列的数目)是否等于或小于CY(其为所有虚拟区域VY中可用的备用列的数 目)(S4800)。
作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复错误的 列的数目)等于或小于CY(其为所有虚拟区域VY中可用的备用列的数目)时, 分析装置200针对所有物理区域PX辅助地确定是否存在在虚拟区域VD中大于0 的RX,其为每个物理区域中可用的备用行的数目且是预先设定的。
作为辅助确定结果,在虚拟区域VD中,当对于所有物理区域PX而言存在 大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时, 分析装置200按照排列顺序选择其中错误未被修复的下一虚拟区域VD。在这里, D可以是通过使用具有错误的列的数目与备用列的数目之间的差值将虚拟区域 按照递降顺序排列并按照排列顺序选择其中错误未被修复的虚拟区域而获得的 值。
此外,针对新选择的下一虚拟区域,分析装置200返回至针对下一虚拟区 域(或虚拟区域VD)的所有物理区域PX选择其中(PX,VD)具有错误且相应物 理区域中可用的备用行的数目为最大值的一个物理区域PA并检查其中AQ(其为 所选虚拟区域VQ中的具有未修复错误的列的数目)在对应于所选物理区域PA的(PA,VQ)被减小尽可能多的行的过程(或步骤S4820)。
此外,作为辅助确定结果,在虚拟区域VD中,当对于所有物理区域PX而 言不存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定 的)时,分析装置200确定错误修复已成功地完成,在错误修复完成时根据备 用存储单元的分配结果在由对应于虚拟区域的存储介质100中的物理区域和虚 拟区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与 虚拟区域相关的M+N-K位的位置信息以及错误地址,并结束整个过程。在这里, K位的位置信息的值和M+N-K位的位置信息的至被配置为向量,并且位的位置 由对应于虚拟基本区域的键值(或K位的位置)的“0”(或K位)和对应于虚拟 子区域的键值(或M+N-K位的位置)的“1”(或M+N-K位)配置(S4830)。
此外,作为辅助检查结果,当AY(其为所有虚拟区域VY中的具有未修复 错误的列的数目)不等于或小于CY(其为所有虚拟区域VY中可用的备用列的 数目)时(或者当存在比作为所有虚拟区域VY中可用的备用列的数目的CY更 大的作为具有未修复错误的列的数目的AY中的至少一个时),分析装置200返 回至选择所有排序虚拟区域VY之中的其中错误未被修复的下一虚拟区域(或新 虚拟区域)VD的过程。
此外,在重复地执行所述过程直至AY(其为选定虚拟区域VD中的具有未 修复错误的列的数目)等于或小于CY(其为所有虚拟区域VY中可用的备用列 的数目)为止之后,分析装置200选择新虚拟区域VD。此外,分析装置200重 复地执行主要检查AD(其为选定的新虚拟区域VD中的具有未修复错误的列的 数目)是否等于或小于CD(其为相应新虚拟区域VD中可用的备用列的数目) 的过程和向选定的新虚拟区域VD分配备用行的过程直至AY(其为选定的新虚 拟区域VD中的具有未修复错误的列的数目)变得等于或小于CY(其为所有虚 拟区域VY中可用的备用列的数目)为止。
如上所述,分析在200可以通过对未被修复且具有错误的选定虚拟区域VD中的列的备用行分配过程来对所有虚拟区域VY执行备用列分配过程(S4840)。
当没有留下(或可用)备用行且其中AY﹣CY具有最大值的虚拟区域VY的 AY的值超过CY的值时,分析装置200确定错误修复失败并结束整个过程。在这 里,AY﹣CY是AY(其为每个虚拟区域中的具有未修复错误的列的数目)与CY (其为每个虚拟区域中可用的备用列的数目)之间的差。
根据本发明的示例性实施例,如上所述,将有限的备用存储单元最优地分 布(或分配)到系统中的物理区域和虚拟区域以便修复存储器的错误,从而增 加存储器芯片的产率。
此外,根据本发明的示例性实施例,如上所述,子阵列充当单元区域中的 物理区域,并且通过将子阵列重组而获得的虚拟区域最优地分布在单独的备用 存储单元中,从而增加根据系统的目的利用额外备用存储单元的可能性。
此外,根据本发明的示例性实施例,如上所述,可以提供同时地不仅满足 虚拟区域的设计目标值、而且满足物理区域的设计目标值的备用存储单元的分 配,并且在分配时根据备用存储单元的分配结果在由相应存储介质中的物理区 域和虚拟区域管理的错误地址存储空间中存储K位的位置信息、M+N-K位的位 置信息以及错误地址,从而提供将最小数目的备用存储单元用于物理区域和虚 拟区域的最优效率。
此外,根据本发明的示例性实施例,如上所述,在使用行或列由快速列优 先算法和快速行优先算法选择的虚拟区域重复地执行修复之后,对下一虚拟区 域执行修复,从而缩短整个修复时间。
在脱离本发明的精神和范围的情况下可以由本领域的技术人员进行以上描 述的改变或修改。因此,本发明的示例性实施例仅仅是出于说明性目的而提供 的,而不意图限制本发明的技术精神。本发明的技术概念的范围不限于此。应 基于以下权利要求来理解本发明的保护范围,并且应将在权利要求的等价范围 内的所有技术概念理解为落在本发明的范围内。
本发明将有限的备用存储单元最优地分布(或分配)到系统中的物理区域 和虚拟区域以便修复存储器的错误,以增加存储器芯片的产率并在存储器领域 的信息存储装置中广泛使用等。

Claims (32)

1.一种借助于分析装置使用不同的备用存储单元来修复物理区域和虚拟区域中的错误的存储器管理方法,所述方法包括:
借助于分析装置,通过用物理区域中的备用行的地址替换错误地址来修复错误;以及
借助于分析装置,通过用虚拟区域中的备用列的地址替换错误地址来修复错误。
2.一种存储器管理方法,包括:
借助于分析装置,优先地修复虚拟区域中的错误。
3.根据权利要求2所述的方法,其中,优先地修复虚拟区域中的错误包括:
借助于分析装置,生成与物理区域和虚拟区域相关的错误信息管理表;
借助于分析装置,选择虚拟区域VQ,在所述虚拟区域VQ中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值;
借助于分析装置,检查作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ是否等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ;以及
作为检查结果,当在选定虚拟区域VQ中AQ大于CQ时确定仅由备用列不能实现修复,并且为了使用备用行来执行修复,借助于分析装置确定在虚拟区域VQ中是否存在大于0的RX,RX是每个物理区域中可用的备用行的数目,并且被针对所有物理区域PX预先设定,
其中,Q是其中具有错误的列的数目与备用列的数目之间的差具有最大值的虚拟区域的值。
4.根据权利要求3所述的方法,其中,错误信息管理表表示用于物理区域PX和虚拟区域VY的(fX,Y)、RX、CY和AY的关系,(fX,Y)是存储在由物理区域PX和虚拟区域VY定义的存储单元中的未修复错误的数目,RX是每个虚拟区域中的备用列的数目,并且AY是每个虚拟区域中的具有未修复错误的列的数目,并且X表示物理区域且Y表示虚拟区域。
5.根据权利要求3所述的方法,还包括:
作为检查结果,当作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ时,借助于分析装置确定错误修复已成功地完成,在错误修复完成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质中的物理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程,
其中,K位的位置信息的值和M+N-K的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域的键值的“0”和对应于虚拟子区域的键值的“1”配置,并且M、N和K是自然数且K等于或小于M+N。
6.根据权利要求3所述的方法,还包括:
当作为确定结果对于所有物理区域PX而言不存在预先设定的大于0的RX(其为每个物理区域中可用的备用行的数目)时,借助于分析装置确定错误修复失败并结束整个过程。
7.根据权利要求3所述的方法,还包括:
当不存在可用的备用行且虚拟区域VQ的AY的值大于虚拟区域VQ的CY的值时,借助于分析装置确定错误修复失败并借助整个过程,AY是每个虚拟区域中的具有未修复错误的列的数目,CY是每个虚拟区域中可用的备用列的数目,并且VQ是其中AY与CY之间的差具有最大值的虚拟区域。
8.根据权利要求3所述的方法,还包括:
当作为确定结果对于虚拟区域VQ的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,借助于分析装置,选择其中(PX,VQ)具有错误且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA,PA是物理区域PX中的一个且(PA,VQ)表示错误信息管理表的由PX和VQ定义的存储单元;
借助于分析装置,检查其中作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ在对应于选定物理区域PA的(PA,VQ)中被减小最多的行,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元;
借助于分析装置,将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的值减小如被备用行修复的错误的数目一样多,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,Q)是存储在由PA和VQ定义的存储单元中的未修复错误的数目;
借助于分析装置,将作为对应于选定物理区域PA的未被修复且具有错误的列的数目的AQ减小如被备用行修复的列的数目一样多,使得不需要错误修复;
借助于分析装置,将作为可用备用行的数目的RA减小如所使用的备用行的数目一样多;以及
借助于分析装置,返回至选择其中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值的虚拟区域VQ的过程,以重复地执行分配备用行的过程,直至作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ为止。
9.根据权利要求2所述的方法,其中,优先地修复虚拟区域中的错误包括:
借助于分析装置,生成与物理区域和虚拟区域有关的错误信息管理表;
借助于分析装置,计算差值AY﹣CY,所述差值是作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差;
借助于分析装置,基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应于差值AY﹣CY的虚拟区域VY排序;
借助于分析装置,按照排序的顺序选择其中错误未被修复的虚拟区域VD
借助于分析装置,主要检查作为选定虚拟区域VD中的具有未修复错误的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的数目的CD;以及
作为主要检查结果,当AD大于CD时,确定仅由备用列不能实现修复,并且为了使用备用行来执行修复,借助于分析装置确定对于所有物理区域PX而言在虚拟区域VD中是否存在大于0的RX,RX是每个物理区域中可用的备用行的数目,并且被针对所有物理区域PX预先设定,
其中,D是通过使用具有错误的列的数目和备用列的数目之间的差值将虚拟区域按照递降顺序排序并按照排序的顺序选择其中错误未被修复的虚拟区域而获得的值。
10.根据权利要求9所述的方法,其中,所述错误信息管理表表示用于物理区域PX和虚拟区域VY的作为错误的数目的(fX,Y)、作为每个物理区域中可用的备用行的数目的RX、作为每个虚拟区域中的可用备用列的数目的CY以及作为具有未修复错误的每个虚拟区域中的列的数目的AY的关系,并且X表示物理区域且Y表示虚拟区域。
11.根据权利要求9所述的方法,还包括:
当作为确定结果对于虚拟区域VD的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目并且是预先设定的)时,借助于分析装置,选择其中(PX,VD)具有错误且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA,PA是物理区域PX中的一个且(PA,VD)表示错误信息管理表的由PX和VD定义的存储单元;
借助于分析装置,检查其中作为选定虚拟区域VD中的具有未修复错误的列的数目的AD在对应于选定物理区域PA的(PA,VD)中被减小最多的行,(PA,VD)表示错误信息管理表的由PA和VD定义的存储单元;
借助于分析装置,将对应于选定物理区域PA的(PA,VD)的(fA,D)的值减小如被备用行修复的错误的数目一样多,(PA,VD)表示错误信息管理表的由PA和VD定义的存储单元,并且(fA,D)是存储在由PA和VD定义的存储单元中的未修复错误的数目;
借助于分析装置,将作为对应于选定物理区域PA的未被修复且具有错误的列的数目的AD减小如被备用行修复的列的数目一样多,使得不需要错误修复;
借助于分析装置,将作为可用备用行的数目的RA减小如所使用的备用行的数目一样多;以及
借助于分析装置,返回至主要检查作为选定虚拟区域VD中的具有未修复错误的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的数目的CD的过程,以重复地执行向选定虚拟区域VD分配备用行的过程,直至作为选定虚拟区域AD中的具有未修复错误的列的数目的AD等于或小于作为选定虚拟区域VD中可用的备用列的数目的CD为止。
12.根据权利要求9所述的方法,还包括:
当作为确定结果对于所有物理区域PX而言不存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,借助于分析装置确定错误修复失败并结束整个过程。
13.根据权利要求9所述的方法,还包括:
作为主要检查结果,当作为选定虚拟区域VD中的具有未修复错误的列的数目的AD等于或小于虚拟区域VD中可用的备用列的数目的CD时,借助于分析装置,辅助地检查作为所有虚拟区域VY中的具有未修复错误的列的数目的AY是否等于或小于作为所有虚拟区域VY中可用的备用列的数目的CY
作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY等于或小于作为所有虚拟区域VY中可用的备用列的数目的CY时,确认错误修复已成功地完成,在错误修复完成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质中的物理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,
作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY大于作为所有虚拟区域VY中可用的备用列的数目的CY时,借助于分析装置,选择排序的虚拟区域VY之中的具有未修复错误的下一虚拟区域,
其中,K位的位置信息的值和M+N-K的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域的键值的“0”和对应于虚拟子区域的键值的“1”配置,并且M、N和K是自然数且K等于或小于M+N。
14.根据权利要求9所述的方法,还包括:
当不存在可用的备用行且虚拟区域VQ的AY的值大于虚拟区域VQ的CY的值时,借助于分析装置确定错误修复失败并结束整个过程,AY是每个虚拟区域中的具有未修复错误的列的数目,CY是每个虚拟区域中可用的备用列的数目,并且VQ是其中AY与CY之间的差具有最大值的虚拟区域。
15.一种存储器管理系统,包括:
存储介质,其存储与物理区域和虚拟区域相关的错误信息管理表;以及
分析装置,其优先地修复虚拟区域中的错误。
16.根据权利要求15所述的系统,其中,所述分析装置生成与物理区域和虚拟区域相关的错误信息管理表,选择虚拟区域VQ,在所述虚拟区域VQ中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值,检查作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ是否等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ,并且作为检查结果,当作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ大于作为虚拟区域VQ中的可用备用列的数目的CQ时,确定在虚拟区域VQ中是否存在大于0的RX,所述RX为每个物理区域中可用的备用行的数目且被针对所有物理区域PX预先设定,并且
其中,Q是其中具有错误的列的数目与备用列的数目之间的差具有最大值的虚拟区域的值。
17.根据权利要求15所述的系统,其中,错误信息管理表表示用于物理区域PX和虚拟区域VY的(fX,Y)、RX、CY和AY的关系,(fX,Y)是存储在由物理区域PX和虚拟区域VY定义的存储单元中的未修复错误的数目,RX是每个虚拟区域中的备用列的数目,并且AY是每个虚拟区域中的具有未修复错误的列的数目,并且X表示物理区域且Y表示虚拟区域。
18.根据权利要求15所述的系统,
其中,作为检查结果,当作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ时,分析装置确定错误修复已成功地完成,在错误修复完成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质中的物理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程,
K位的位置信息的值和M+N-K位的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域的键值的“0”和对应于虚拟子区域的键值的“1”配置,并且M、N和K是自然数且K等于或小于M+N。
19.根据权利要求15所述的系统,其中,当作为确定结果对于所有物理区域PX而言不存在预先设定的大于0的RX(其为每个物理区域中可用的备用行的数目)时,分析装置确定错误修复失败并结束整个过程。
20.根据权利要求15所述的系统,其中,当不存在可用的备用行且虚拟区域VQ的AY的值大于虚拟区域VQ的CY的值时,分析装置确定错误修复失败并结束整个过程,AY是每个虚拟区域中的具有未修复错误的列的数目,CY是每个虚拟区域中可用的备用列的数目,并且VQ是其中AY与CY之间的差具有最大值的虚拟区域。
21.根据权利要求15所述的系统,其中,当作为确定结果对于虚拟区域VQ的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,分析装置:
选择其中(PX,VQ)具有错误且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA,PA是物理区域PX中的一个,并且(PA,VQ)表示错误信息管理表的由PX和VQ定义的存储单元;
检查其中作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ在对应于选定物理区域PA的(PA,VQ)中被减小最多的行,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元;
将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的值减小如被备用行修复的错误的数目一样多,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,Q)是存储在由PA和VQ定义的存储单元中的未修复错误的数目;
将作为对应于选定物理区域PA的未被修复且具有错误的列的数目的AQ减小如被备用行修复的列的数目一样多,使得不需要错误修复;
将作为可用备用行的数目的RA减小如所使用的备用行的数目一样多;以及
返回至选择其中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值的虚拟区域VQ的过程,以重复地执行分配备用行的过程,直至作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ为止。
22.一种存储器管理方法,包括:
借助于分析装置,优先地修复物理区域中的错误。
23.根据权利要求22所述的方法,其中,优先地修复物理区域中的错误包括:
借助于分析装置,生成与物理区域和虚拟区域相关的错误信息管理表;
选择虚拟区域VQ,在所述虚拟区域VQ中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值;
借助于分析装置,确定对于所有物理区域PX而言存在大于0的RX,其为每个物理区域中可用的备用行的数目且是预先设定的;
作为确定结果,当对于所有物理区域PX而言不存在预先设定的的大于0的RX(其为每个物理区域中可用的备用行的数目)时,借助于分析装置,检查作为所有虚拟区域中的具有未修复错误的列的数目的AY是否等于或小于作为虚拟区域中的可用备用列的数目的CY
其中,Q是其中具有错误的列的数目与备用列的数目之间的差具有最大值的虚拟区域的值。
24.根据权利要求23所述的方法,还包括:
作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY等于或小于作为所有虚拟区域VY中可用的备用列的数目的CY时,确认错误修复已成功地完成,在错误修复完成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质中的物理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并结束整个过程,
其中,K位的位置信息的值和M+N-K位的位置信息的值被配置为向量,并且位的位置由对应于虚拟基本区域的键值的“0”和对应于虚拟子区域的键值的“1”配置,并且M、N和K是自然数且K等于或小于M+N。
25.根据权利要求23所述的方法,还包括:
作为检查结果,当作为所有虚拟区域中的具有未修复错误的列的数目AY大于作为虚拟区域中的可用备用列的数目的CY时,借助于分析装置,确定仅通过使用虚拟区域VY中可用的备用行不能实现修复且错误修复失败,并结束整个过程。
26.根据权利要求23所述的方法,还包括:
当作为确定结果对于虚拟区域VQ的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定)时,借助于分析装置,选择其中(PX,VQ)具有错误且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA,PA是物理区域PX中的一个且(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元;
借助于分析装置,检查其中作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ在对应于选定物理区域PA的(PA,VQ)中被减小最多的行,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元;
借助于分析装置,将对应于选定物理区域PA的(PA,VQ)的(fA,Q)的值减小如被备用行修复的错误的数目一样多,(PA,VQ)表示错误信息管理表的由PA和VQ定义的存储单元,并且(fA,Q)是存储在由PA和VQ定义的存储单元中的未修复错误的数目;
借助于分析装置,将作为对应于选定物理区域PA的未被修复且具有错误的列的数目的AQ减小如被备用行修复的列的数目一样多,使得不需要错误修复;
借助于分析装置,将作为可用备用行的数目的RA减小如所使用的备用行的数目一样多;以及
借助于分析装置,返回至选择其中作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差具有最大值的虚拟区域VQ的过程,以重复地执行分配备用行的过程,直至作为选定虚拟区域VQ中的具有未修复错误的列的数目的AQ等于或小于作为选定虚拟区域VQ中的可用备用列的数目的CQ为止。
27.根据权利要求22所述的方法,其中,优先地修复物理区域中的错误包括:
借助于分析装置,生成与物理区域和虚拟区域有关的错误信息管理表;
借助于分析装置,计算差值AY﹣CY,所述差值是作为包括在错误信息管理表中的每个虚拟区域中的具有未修复错误的列的数目的AY与作为包括在错误信息管理表中的每个虚拟区域中可用的备用列的数目的CY之间的差;
借助于分析装置,基于计算的差值AY﹣CY将计算的差值AY﹣CY和对应于差值AY﹣CY的虚拟区域VY排序;
借助于分析装置,按照排序的顺序选择其中错误未被修复的虚拟区域VD
借助于分析装置,主要检查作为选定虚拟区域VD中的具有未修复错误的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的数目的CD;以及
作为主要检查结果,当AD大于CD时,确定仅由备用列不能实现修复,并且为了使用备用行来执行修复,借助于分析装置,主要确定对于所有物理区域PX而言在虚拟区域VD中是否存在大于0的RX,RX是每个物理区域中可用的备用行的数目,并且被针对所有物理区域PX预先设定;
当作为主要确定结果对于虚拟区域VD的所有物理区域PX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目并被预先设定)时,借助于分析装置,选择其中(PX,VD)具有错误且作为物理区域中可用的备用行的数目的RX具有最大值的一个物理区域PA,PA是物理区域PX中的一个且(PA,VD)表示错误信息管理表的由PX和VD定义的存储单元;
借助于分析装置,检查其中作为选定虚拟区域VD中的具有未修复错误的列的数目的AD在对应于选定物理区域PA的(PA,VD)中被减小最多的行,(PA,VD)表示错误信息管理表的由PA和VD定义的存储单元,
其中,D是通过使用具有错误的列的数目和备用列的数目之间的差值将虚拟区域按照递降顺序排序并按照排序的顺序选择其中错误未被修复的虚拟区域而获得的值。
28.根据权利要求27所述的方法,
其中,所述错误信息管理表表示用于物理区域PX和虚拟区域VY的作为错误的数目的(fX,Y)、作为每个物理区域中可用的备用行的数目的RX、作为每个虚拟区域中的可用备用列的数目的CY以及作为具有未修复错误的每个虚拟区域中的列的数目的AY的关系,并且X表示物理区域且Y表示虚拟区域。
29.根据权利要求27所述的方法,还包括:
借助于分析装置,将对应于选定物理区域PA的(PA,VD)的(fA,D)的值减小如被备用行修复的错误的数目一样多,(PA,VD)表示错误信息管理表的由PA和VD定义的存储单元,并且(fA,D)是存储在由PA和VD定义的存储单元中的未修复错误的数目;
借助于分析装置,将作为对应于选定物理区域PA的未被修复且具有错误的列的数目的AD减小如被备用行修复的列的数目一样多,使得不需要错误修复;
借助于分析装置,将作为可用备用行的数目的RA减小如所使用的备用行的数目一样多;以及
借助于分析装置,返回至主要检查作为选定虚拟区域VD中的具有未修复错误的列的数目的AD是否等于或小于作为虚拟区域VD中可用的备用列的数目的CD的过程,以重复地执行向选定虚拟区域VD分配备用行的过程,直至作为选定虚拟区域VD中的具有未修复错误的列的数目的AD等于或小于作为选定虚拟区域VD中可用的备用列的数目的CD为止。
30.根据权利要求27所述的方法,还包括:
当作为主要确定结果对于所有物理区域PX而言不存在预先设定的大于0的RX(其为每个物理区域中可用的备用行的数目)时,借助于分析装置确定错误修复失败并结束整个过程。
31.根据权利要求27所述的方法,还包括:
作为主要检查结果,当作为选定虚拟区域VD中的具有未修复错误的列的数目的AD等于或小于虚拟区域VD中可用的备用列的数目的CD时,借助于分析装置,辅助地检查作为所有虚拟区域VY中的具有未修复错误的列的数目的AY是否等于或小于作为所有虚拟区域VY中可用的备用列的数目的CY
作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY等于或小于所有虚拟区域VY中可用的备用列的数目的CY时,借助于分析装置,辅助地确定对于所有物理区域PX而言是否存在大于0的RX,所述RX是每个物理区域中可用的备用行的数目且是预先设定的;
作为辅助确定结果,当对于所有物理区域RX而言存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,借助于分析装置,按照排序的顺序选择其中错误未被修复的下一虚拟区域VD
作为检查结果,当对于所有物理区域PX而言不存在大于0的RX(其为每个物理区域中可用的备用行的数目且是预先设定的)时,借助于分析装置,确定错误修复已成功地完成,在错误修复完成时根据备用存储单元的分配结果在由对应于虚拟区域的存储介质中的物理区域和虚拟区域管理的错误地址存储空间中存储与虚拟区域相关的K位的位置信息、与虚拟区域相关的M+N-K位的位置信息以及错误地址,并且结束整个过程;以及
作为辅助检查结果,当作为所有虚拟区域VY中的具有未修复错误的列的数目的AY大于作为所有虚拟区域VY中可用的备用列的数目的CY时,借助于分析装置,返回至选择所有排序虚拟区域VY之中的其中错误未被修复的虚拟区域的过程。
32.根据权利要求27所述的方法,还包括:
当不存在可用的备用行且虚拟区域VQ的AY的值大于虚拟区域VQ的CY的值时,借助于分析装置确定错误修复失败并结束整个过程,AY是每个虚拟区域中的具有未修复错误的列的数目,CY是每个虚拟区域中可用的备用列的数目,并且VQ是其中AY与CY之间的差具有最大值的虚拟区域。
CN201710552316.5A 2016-07-07 2017-07-07 存储器管理系统及其方法 Active CN107590031B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2016-0086017 2016-07-07
KR1020160086017A KR101963629B1 (ko) 2016-07-07 2016-07-07 메모리 관리 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
CN107590031A true CN107590031A (zh) 2018-01-16
CN107590031B CN107590031B (zh) 2021-12-24

Family

ID=60910786

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710552316.5A Active CN107590031B (zh) 2016-07-07 2017-07-07 存储器管理系统及其方法

Country Status (3)

Country Link
US (1) US10776227B2 (zh)
KR (1) KR101963629B1 (zh)
CN (1) CN107590031B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110610737A (zh) * 2018-06-14 2019-12-24 赛舌尔商塔普思科技公司 存储器的修复方法
CN110797071A (zh) * 2019-10-31 2020-02-14 西安紫光国芯半导体有限公司 一种多子块nand闪存缺陷的修复方法
CN111158589A (zh) * 2019-12-16 2020-05-15 绿晶半导体科技(北京)有限公司 存储阵列的动态管理方法和装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102122821B1 (ko) * 2018-02-26 2020-06-15 고려대학교 산학협력단 결함 정보 저장 테이블을 이용한 리페어 분석 시스템 및 그의 리페어 분석 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6247153B1 (en) * 1998-04-21 2001-06-12 Samsung Electronics Co., Ltd. Method and apparatus for testing semiconductor memory device having a plurality of memory banks
CN101689140A (zh) * 2008-03-01 2010-03-31 株式会社东芝 存储器系统
US7724573B2 (en) * 2007-03-02 2010-05-25 Kabushiki Kaisha Toshiba Nonvolatile semiconductor storage device, nonvolatile semiconductor storage system and method of managing of defective column in nonvolatile semiconductor storage system
US20110191538A1 (en) * 2010-02-04 2011-08-04 Fujitsu Limited Storage device, method for restoring data in storage device and storage controller
CN102169461A (zh) * 2010-02-26 2011-08-31 株式会社东芝 存储器系统
CN106886496A (zh) * 2015-12-15 2017-06-23 意法半导体(鲁塞)公司 存储空间管理方法和设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100907708B1 (ko) * 2007-11-02 2009-07-14 한양대학교 산학협력단 저장 장치의 오류 복구 방법, 저장 장치의 정보 저장 방법,오류 복구 시스템 및 오류 저장 시스템
KR101615623B1 (ko) * 2009-05-27 2016-04-27 삼성전자주식회사 정보 저장 매체, 기록 재생 방법 및 기록 재생 장치
JP2012173778A (ja) 2011-02-17 2012-09-10 Sony Corp 管理装置、および管理方法
KR20120124285A (ko) * 2011-05-03 2012-11-13 삼성전자주식회사 배드 블록 관리를 위한 방법 및 메모리 시스템
US9063749B2 (en) 2011-05-27 2015-06-23 Qualcomm Incorporated Hardware support for hashtables in dynamic languages
KR102072449B1 (ko) * 2012-06-01 2020-02-04 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 리페어 방법
US9633066B1 (en) * 2014-10-13 2017-04-25 Veritas Technologies Llc Taking a consistent cut during replication for storage across multiple nodes without blocking input/output

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6247153B1 (en) * 1998-04-21 2001-06-12 Samsung Electronics Co., Ltd. Method and apparatus for testing semiconductor memory device having a plurality of memory banks
US7724573B2 (en) * 2007-03-02 2010-05-25 Kabushiki Kaisha Toshiba Nonvolatile semiconductor storage device, nonvolatile semiconductor storage system and method of managing of defective column in nonvolatile semiconductor storage system
CN101689140A (zh) * 2008-03-01 2010-03-31 株式会社东芝 存储器系统
US20110191538A1 (en) * 2010-02-04 2011-08-04 Fujitsu Limited Storage device, method for restoring data in storage device and storage controller
CN102169461A (zh) * 2010-02-26 2011-08-31 株式会社东芝 存储器系统
CN106886496A (zh) * 2015-12-15 2017-06-23 意法半导体(鲁塞)公司 存储空间管理方法和设备

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110610737A (zh) * 2018-06-14 2019-12-24 赛舌尔商塔普思科技公司 存储器的修复方法
CN110610737B (zh) * 2018-06-14 2021-10-29 珠海兴芯存储科技有限公司 存储器的修复方法
CN110797071A (zh) * 2019-10-31 2020-02-14 西安紫光国芯半导体有限公司 一种多子块nand闪存缺陷的修复方法
CN110797071B (zh) * 2019-10-31 2021-10-22 西安紫光国芯半导体有限公司 一种多子块nand闪存缺陷的修复方法
CN111158589A (zh) * 2019-12-16 2020-05-15 绿晶半导体科技(北京)有限公司 存储阵列的动态管理方法和装置
CN111158589B (zh) * 2019-12-16 2023-10-20 绿晶半导体科技(北京)有限公司 存储阵列的动态管理方法和装置

Also Published As

Publication number Publication date
CN107590031B (zh) 2021-12-24
KR101963629B1 (ko) 2019-03-29
US20180011770A1 (en) 2018-01-11
US10776227B2 (en) 2020-09-15
KR20180005844A (ko) 2018-01-17

Similar Documents

Publication Publication Date Title
CN107590031A (zh) 存储器管理系统及其方法
CN101604337B (zh) 一种哈希表项存储、查找装置及方法
US20220404995A1 (en) Method and system for reconfigurable parallel lookups using multiple shared memories
US11294601B2 (en) Method of distributed data redundancy storage using consistent hashing
US8140625B2 (en) Method for operating a fixed prefix peer to peer network
TWI439857B (zh) 記憶體位址重新映射裝置與修復方法
US9859005B2 (en) Memory device
US12001278B2 (en) Wide stripe data storage and constructing, repairing and updating method thereof
CN107544858A (zh) 基于物理区域和虚拟区域应用故障修复的存储器设备及其控制方法
EP0095669B1 (en) Automatically reconfigurable memory system and method therefor
JP2007525754A5 (zh)
CN112000847B (zh) 基于gpu并行的自适应基数树动态索引方法
JP4348093B2 (ja) マップテーブルを用いてメモリにインタリーブ方式でアクセスする方法
CN105989899B (zh) 存储器修补方法及其应用元件
US11200962B2 (en) Memory devices having spare column remap storages and methods of remapping column addresses in the memory devices
CN103069396A (zh) 对象布置设备及其方法,计算机程序
CN109492052A (zh) 一种scada分布式历史数据存储方法及系统
US6480943B1 (en) Memory address interleaving and offset bits for cell interleaving of memory
CN105206307B (zh) 一种芯片修复方法和装置
CN105302838A (zh) 分类方法、查找方法和设备
WO2004074851A2 (en) Memory repair analysis method and circuit
CN107526692A (zh) 用于管理信息存储表的分析系统及其控制方法
CN107544747A (zh) 磨损逆均衡方法与装置
US20230298686A1 (en) Redundancy managing method and apparatus for semiconductor memories
KR101959403B1 (ko) 리페어 분석 방법 및 장치

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