CN101159169B - 用于闪存的寿命终止预测的方法和电子设备 - Google Patents
用于闪存的寿命终止预测的方法和电子设备 Download PDFInfo
- Publication number
- CN101159169B CN101159169B CN2007101630501A CN200710163050A CN101159169B CN 101159169 B CN101159169 B CN 101159169B CN 2007101630501 A CN2007101630501 A CN 2007101630501A CN 200710163050 A CN200710163050 A CN 200710163050A CN 101159169 B CN101159169 B CN 101159169B
- Authority
- CN
- China
- Prior art keywords
- life cycle
- flash memory
- incident
- electronic equipment
- life
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/88—Monitoring involving counting
Landscapes
- Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种用于确定闪存的寿命终止阶段的方法、电子设备和计算机可读介质。所述方法包括检测与位于电子设备上的闪存关联的至少一个生命周期事件。然后递增与所述生命周期事件关联的计数器。根据所述计数器,确定一个生命周期事件的总出现次数。还确定至少一个给定阈值的总出现次数。至少部分根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段。将所述生命周期阶段与所述至少一个给定阈值关联。然后通知用户所述闪存的生命周期状态。
Description
技术领域
本发明一般地涉及存储器设备的领域,更具体地说,涉及闪存的寿命终止预测。
背景技术
闪存提供了非易失性存储器,其中闪存块(其包括多个位置)可通过闪速操作擦除。闪存包括单元,所述单元是用于存储信息的浮栅晶体管的阵列。传统上,每个单元中可以存储一位信息。但是,某些闪存设备(例如多单元存储器设备)可以在每个单元中存储多个位。闪存单元中存在的两种公知类型的电路是NAND和NOR。
目前,闪存受限于其有限的擦写周期次数。当前的闪存无法通知用户将要达到或已经超过它的擦写周期寿命。换言之,用户不能预测其闪存设备何时出现故障。当闪存设备出现故障时,该设备无法工作,并且存储在设备上的所有数据将丢失或损坏。在未被告知可能的设备故障的情况下,用户可能继续在闪存上存储重要信息,当闪存设备出现故障时这些信息将丢失。
因此,需要克服现有技术中存在的上述问题。
发明内容
简言之,根据本发明,公开了一种用于确定闪存的寿命终止阶段的方法、电子设备和计算机可读介质。所述方法包括检测与位于电子设备上的闪存关联的至少一个生命周期事件。然后递增与所述生命周期事件关联的计数器。根据所述计数器,确定一个生命周期事件的总出现次数。还确定至少一个给定阈值的总出现次数。将所述至少一个生命周期事件的所述总出现次数存储在所述闪存上。所述方法还包括判定所述总出现次数是否超过至少一个给定阈值。至少部分根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段。将所述生命周期阶段与至少一个给定阈值关联。然后通知用户所述闪存的生命周期状态。
在另一个实施例中,公开了一种方法,其中第一电子设备可通信地连接到包括至少一个闪存的至少第二电子设备,所述方法用于确定所述闪存的寿命终止阶段。所述方法包括由所述第一电子设备检测与位于所述至少第二电子设备上的闪存关联的至少一个生命周期事件。所述第一电子设备可通信地连接到所述至少第二电子设备。递增与所述生命周期事件关联的计数器。根据所述计数器确定所述生命周期事件的总出现次数。将所述至少一个生命周期事件的所述总出现次数存储在所述闪存上。所述方法还包括判定所述总出现次数是否超过至少一个给定阈值。至少部分地根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段,其中所述生命周期阶段与所述至少一个给定阈值关联。通知用户所述闪存的生命周期状态。
在另一个实施例中,公开了一种包括至少一个闪存模块的电子设备。所述电子设备包括至少一个闪存模块和可通信地连接到所述至少一个闪存模块的生命周期事件计数器。所述生命周期计数器检测与所述至少一个闪存模块关联的至少一个生命周期事件。所述生命周期计数器递增所述至少一个生命周期事件的生命周期计数。将所述生命周期计数存储在所述至少一个闪存模块上。所述电子设备还包括可通信地连接到所述生命周期计数器和所述至少一个闪存模块的生命周期阶段估计器。所述生命周期阶段估计器确定至少一个生命周期事件的总出现次数。
所述生命周期阶段估计器还判定所述总出现次数是否超过至少一个给定阈值。所述生命周期阶段估计器至少部分根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段。将所述生命周期阶段与所述至少一个给定阈值关联。所述电子设备中还包括至少一个通知模块。所述至少一个通知模块通知用户所述闪存模块的生命周期状态。
在另一个实施例中,公开了一种用于确定闪存的寿命终止阶段的计算机可读介质。所述计算机可读介质包括用于检测与位于电子设备上的闪存关联的至少一个生命周期事件的指令。然后递增与所述生命周期事件关联的计数器。根据所述计数器,确定一个生命周期事件的总出现次数。还确定至少一个给定阈值的总出现次数。将所述至少一个生命周期事件的所述总出现次数存储在所述闪存上。所述方法还包括判定所述总出现次数是否超过至少一个给定阈值。至少部分根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段。将所述生命周期阶段与至少一个给定阈值关联。然后通知用户所述闪存的生命周期状态。
在其他实施例中,公开了一种用于确定闪存的寿命终止阶段的计算机可读介质,所述介质位于第一电子设备上,所述第一电子设备可通信地连接到包括至少一个闪存的至少第二电子设备。所述计算机可读介质包括用于确定闪存的寿命终止阶段的指令。所述方法包括由所述第一电子设备检测与位于所述至少第二电子设备上的闪存关联的至少一个生命周期事件。所述第一电子设备可通信地连接到所述至少第二电子设备。然后递增与所述生命周期事件关联的计数器。根据所述计数器确定所述生命周期事件的总出现次数。将所述至少一个生命周期事件的所述总出现次数存储在所述闪存上。所述方法还包括判定所述总出现次数是否超过至少一个给定阈值。至少部分地根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段,其中所述生命周期阶段与所述至少一个给定阈值关联。通知用户所述闪存的生命周期状态。
本发明的一个优点是当闪存设备要达到其寿命终止周期时将通知用户。所述设备自身可以包括通知装置,例如LED灯、有声通知等,以便在设备要达到其寿命终止周期时可以通知用户。此外,可由其他设备(例如安装有闪存的计算机系统)来监视闪存的寿命终止周期。外部设备上的物理硬件和/或软件可以监视闪存,以便在将要达到或已经超过闪存的寿命终止周期时可以通知用户。相应地,用户可以在存储器出现故障之前从闪存转移重要的数据。
附图说明
附图(在各个视图中,相同的标号指相同或功能相似的元素)连同以下结合并形成本说明书一部分的详细说明一起,用于进一步说明各个实施例并说明根据本发明的各种原理和优点,这些附图是:
图1是示出根据本发明的实施例的示例性闪存的方块图;
图2是示出根据本发明的实施例的示例性信息处理系统的方块图;
图3是示出根据本发明的实施例的通知用户闪存的当前生命周期阶段的一个实例的方块图;
图4和图5是示出根据本发明的实施例的向用户指示其当前寿命终止状态的闪存设备的方块图;
图6是示出根据本发明的实施例的确定闪存的当前生命周期阶段的示例性过程的操作流程图。
具体实施方式
如本领域的技术人员所公知的,本发明可以以硬件或软件或硬件和软件的组合来实现。但是在一个实施例中,本发明以软件实现。如本领域的技术人员所公知的,根据发明原理的结合优选实施例公开的系统或方法,可以在单个计算机系统(具有用于执行所说明或要求保护的单个功能或步骤的单独元件或装置,或者具有结合所公开或要求保护的所有功能或步骤的性能的一个或多个元件或装置)中产生,或者可以布置在通过任何适当方式互连的分布式计算机系统中。
根据结合优选实施例公开的发明原理,本发明和发明原理并不限于任何特定种类的计算机系统,而是如本领域的技术人员所公知的,可以与任何布置为执行所述功能和所述方法步骤的通用计算机一起使用。如上所述的此类计算机的操作,可以根据包含在介质上的用于操作或控制计算机的计算机程序来执行,如本领域的技术人员所公知的那样。可用于容纳或包含计算机程序产品的计算机介质可以是计算机的固定装置(如嵌入的存储器),或者可以位于盘之类的可移动介质上,如本领域的技术人员所公知的那样。
本发明并不限于任何特定的计算机程序或逻辑或语言或指令,而是可以使用任何此类适合的程序、逻辑或语言或指令来实现,如本领域的技术人员所公知的那样。在不限制所公开发明的原理的情况下,任何此类计算系统都可以至少包括计算机可读介质,其允许计算机从计算机可读介质读取数据、指令、消息或消息分组以及其他计算机可读信息。计算机可读介质可以包括非易失性存储器,例如ROM、闪存、软盘、盘驱动器存储器、CD-ROM和其他永久存储装置。此外,计算机可读介质可以包括例如易失性存储装置,例如RAM、缓冲器、高速缓冲存储器和网络电路。此外,计算机可读介质可以包括在诸如网络链路和/或网络接口之类的暂态介质(包括允许计算机读取此类计算机可读信息的有线网络或无线网络)中的计算机可读信息。
示例性闪存设备
图1是根据本发明的实施例的示例性闪存设备100的方块图。在本发明的一个实施例中,闪存设备100是诸如通用串行总线(“USB”)闪存设备之类的外部设备。但是应注意,本发明并不限于使用USB通信接口的外部闪存设备或闪存设备。例如,本发明还可应用于在许多设备(例如无线通信设备、服务处理器、台式计算机、笔记本计算机等)中发现的内部闪存。
在一个实施例中,闪存设备100包括USB接口之类的通信接口102。通信接口102允许闪存设备100与诸如台式计算机或笔记本计算机之类的其他设备通信。闪存设备100还包括一组非易失性闪存单元104。在一个实施例中,所述存储单元布置在多个可寻址存储体中。可以使用外部提供的地址来访问存储器104中存储的数据。闪存设备100中还包括控制器106,用于控制闪存设备的读/写周期、用户通知(经由通知接口110)等。通知接口110可以包括一个或多个发光二极管(“LED”)或其等效物、用于有声警报的扬声器等。通知接口110可以通知用户闪存设备100的加电/断电周期、读/写周期和/或寿命终止状态。
在一个实施例中,控制器106包括一个或多个计数器108,用于监视闪存设备100的读/写周期、加电周期等。在一个实施例中,单个计数器108可用于监视相关活动,或者各个计数器可用于监视每个读周期、写周期、加电周期等。可以实时(即在活动发生时)监视活动,或者可以在每次闪存设备100被“插入”到诸如信息处理系统之类的外部设备时对已发生活动的数量进行计数。在一个实施例中,计数器108在闪存单元104中存储事件计数(写入数、读取数、加电周期数、错误数等)。
控制器108还可以包括其他可选的计数器114。在一个实施例中,一个或多个计数器114未与闪存设备100集成。例如,当闪存设备100可通信地连接到(例如插入到)信息处理系统之类的外部设备时,信息处理系统的操作系统将非集成计数器114保存到其硬盘驱动器或其他存储介质中。因此计数器114是可移动的,并且信息处理系统可以从其存储介质读取计数器。应注意到,非集成计数器114可以位于控制器之外。寿命终止预测模块112使用计数器(多个)108所监视的信息来确定闪存设备100的寿命终止周期的状态。寿命终止周期是闪存设备在达到其读/写周期极限时闪存设备的完全失效点。
在一个实施例中,控制器106还可以分析计数器(多个)108以检测计数器故障和/或有问题的计数器。例如,控制器106分析计数器(多个)108,以确定计数器(多个)108的减小的计数或数目是否超过设置的阈值。响应于检测到出现故障的计数器108或有问题的计数器108,控制器108可以更改用于通知用户检测到的问题的生命周期阶段。
在一个实施例中,寿命终止预测模块112包括各种加权逻辑,以便为一个或多个计数器108监视的每个活动分配权重。例如,对存储单元104的写入多于对存储单元104的读取,由此消耗存储器设备更多的使用寿命。因此,在一个实施例中,每个被监视的活动可以具有分配给它们的不同权重。在一个实施例中,寿命终止预测模块112使用这些权重、为每个活动监视的实例数以及已知的寿命终止期限来确定闪存设备100的当前生命周期阶段。
在一个实施例中,寿命终止预测模块112根据在设备中检测到的组件来估计闪存设备100何时将出现故障。在另一个实施例中,制造商可以预先规定在设备发生故障之前可以出现的读/写周期数、加电周期数、错误数。在一个实施例中,计数器(多个)108可以对每个存储单元104中存在的错误数进行计数。寿命终止预测模块112然后可以将检测到的错误数用作闪存设备100的当前生命周期阶段的进一步的指示器。
在此实例中,计数器108可以递增较大的加权因数(例如将更大权重给予错误的计数),所述因数可以随错误数的增加而增加。这可以基于制造商给出的闪存设备100的固有故障信息、测试或客户安装中的使用经验等。检测错误的一个优点是能够早期检测闪存设备100的可能故障。应注意的是,在一个实施例中,寿命终止预测模块112可以位于计数器(多个)108内。
一旦寿命终止预测模块112确定了闪存设备100的生命周期阶段,它就可以向用户显示生命周期状态。例如,通知接口110可以显示可视通知(例如闪烁的灯、彩色灯或两者的组合)以指示闪存设备100的生命周期中的特定状态。备选地,还可以使用诸如一次嘟嘟声或多次嘟嘟声之类的有声通知(或者结合可视通知)向用户指示闪存设备100的生命周期阶段。生命周期阶段通知过程将在下面进行更详细的讨论。
在一个实施例中,外部处理接口(例如信息处理机)可以通过一个或多个地址来访问计数器(多个)108和/或寿命终止预测模块112。外部装置可以执行闪存设备100的生命周期阶段的进一步验证和/或通知用户闪存设备100的生命周期阶段。当使用外部处理接口时,可以一次或以各种间隔读取计数器108。然后可以记录与所述设备关联的历史信息,例如读/写周期、加电周期等。在此实例中,信息处理设备可以提供使用情况统计信息,或者有关何时可能出现故障的更高级的分析。然后信息处理设备可以与其他组件通信以启动更换闪存的服务过程。
在此实例中,可以生成电子设备服务呼叫,并且可以分派服务技术人员以按照服务过程更换此特定部件。此系统的一个实例是可从美国纽约怀特普莱恩斯的国际商业机器公司(IBM)购买的System p Model p595。在此实例中,硬件管理控制台(“HMC”)可以从将闪存用作其存储装置的冗余服务处理器来读取计数器(108)。读取计数器108以判定是否需要更换包括闪存的服务处理器。一旦HMC判定需要更换闪存,它就可以生成具有IBM服务焦点的定购部件的服务事件、通知客户,以及发出服务呼叫以更换所述部件。
示例性信息处理系统
图2是示出信息处理系统200的详细视图的方块图。信息处理系统200基于适于实现本发明的示例性实施例的适当配置的处理系统。任何适当配置的处理系统都同样可以由本发明的实施例用作信息处理系统200,例如个人计算机、工作站、无线通信设备、游戏站、手持游戏设备等。
信息处理系统200包括计算机202。计算机202具有通过系统总线216连接到主存储器206、闪存208、海量存储装置接口210、终端接口212和网络适配器硬件214的处理器204。海量存储装置接口210用于将数据存储设备216之类的海量存储设备连接到信息处理系统200。一种特定类型的数据存储设备是计算机可读介质,如CD驱动器,其可用于将数据存储到CD 218或其等效物以及从中读取数据。另一种类型的数据存储设备是配置为支持例如NTFS类型文件系统操作的数据存储设备。
在一个实施例中,主存储器206可以是随机存取存储器(“RAM”)之类的易失性存储器,其中包括计数器220、寿命终止预测模块222和寿命终止周期通知接口224。应注意的是,这些组件中的一个或多个可以位于闪存208(而不是主存储器206)内。计数器220(类似于在上面的图1中讨论的计数器108)监视闪存208的读/写周期、加电周期等。在一个实施例中,单个计数器220监视相关活动,或者各个计数器可用于监视读周期、写周期、加电周期、错误等中的每一个。
计数器220可以实时监视这些活动并对其进行计数,或者可以以各种给定的时间间隔(例如在启动信息处理系统200时)进行计数。寿命终止预测模块222(类似于寿命终止预测模块112)使用计数的信息来确定闪存208的当前生命周期阶段。在一个实施例中,计数器220也可以是上述的非集成计数器114。换言之,可以从闪存设备100检索计数器220并将其存储在存储器206中。此外,信息处理系统200中可以包括多个计数器220。
寿命终止预测模块112或计数器220自身可以为每个被监视/计数的活动分配权重,如上面讨论的那样。在一个实施例中,寿命终止预测模块222使用这些权重、为每个活动监视/计数的实例数以及已知的寿命终止期限来确定闪存设备100的当前生命周期阶段。应注意的是,不是必须将权重分配给被监视/计数的活动。
如上面所讨论的,寿命终止预测模块222可以根据在闪存208中检测到的组件来估计闪存208的给定寿命终止期限。在另一个实施例中,制造商可以预先规定在闪存208发生故障之前可能出现的读/写周期数、加电周期数、错误数。如上面所讨论的,计数器220还可以对闪存208中的错误数进行计数,以用作闪存的当前生命周期阶段的进一步的指示器。
一旦寿命终止预测模块222确定了闪存208的生命周期阶段,便可以通知用户。例如,寿命通知接口224可以使用可视和/或有声通知来通知用户闪存208的当前生命周期阶段。例如,如果计数器220和寿命终止预测模块222作为软件实现,则相应的软件程序可以以可视和/或有声方式通知用户闪存208的当前生命周期阶段。可视通知可以是显示器上的弹出消息、要向用户显示的新窗口、闪烁的窗口小部件、新显示的窗口小部件、电子邮件等。
例如,图3示出了包括用户接口302和窗口304的显示器300。窗口304包括可以向用户显示的各种与闪存208的生命周期阶段相关的消息。例如,第一消息306指示闪存208的生命周期高于平均值并剩余一定百分比。第二消息308指示闪存208的生命周期为平均值并剩余一定百分比。第三消息310指示生命周期为临界,并且即将出现存储器故障。第四消息312指示已出现计数器不匹配。例如,如果信息处理系统200上的计数器220大于闪存设备100上的计数器,则通知用户。
应注意的是,本发明并不限于任何一种可视地通知用户闪存208的当前生命周期阶段的方式。还应注意的是,这些用于可视地通知用户的方法还可以在闪存设备100被连接到信息处理系统200(其确定闪存设备100的生命周期阶段)的实施例中实现。
虽然示为同时位于主存储器206中,但是明显的是,主存储器306的相应组件无需在所有时间或甚至无需在同一时间都完全位于主存储器206中。在一个实施例中,信息处理系统200使用常规的虚拟寻址机制以允许程序似乎有权访问大型单个存储实体(在此称为计算机系统存储器),而不是访问多个较小的存储实体(例如主存储器206和数据存储装置216)。应注意的是,术语“计算机系统存储器”在此用于统称信息处理系统200的总体虚拟存储器。
虽然仅为计算机202示出了一个CPU 204,但是可以同等有效地使用具有多个CPU的计算机系统。本发明的实施例进一步结合了接口,每个接口都包括用于从CPU 204卸载处理的完全程序化的独立微处理器。终端接口212用于直接将一个或多个终端226连接到计算机202以提供到计算机202的用户接口。这些终端226(它们可以是非智能的或完全可编程的工作站)用于使系统管理员和用户能够与信息处理系统200通信。终端212还可以包括用户接口和外围设备,所述外围设备被连接到计算机202并由终端接口212(包括用于键盘、指点设备等的视频适配器和接口)中包括的终端接口硬件来控制。
主存储器206中包括的操作系统(未示出)是适合的多任务操作系统,例如Linux、UNIX、Windows XP和Windows Server 2003操作系统。本发明的实施例可以使用任何其他适合的操作系统。本发明的某些实施例使用诸如面向对象的框架机制之类的体系结构,其允许在位于信息处理系统200内的任何处理器上执行操作系统组件(未示出)的指令。网络适配器硬件214用于提供到诸如无线网络、WLAN、LAN等网络的接口(未示出)。本发明的实施例可适于与任何包括当前模拟和/或数字技术或通过未来联网机制的数据通信连接一起工作。
虽然在完整功能计算机系统的上下文中说明了本发明的示例性实施例,但是本领域的技术人员将理解,实施例能够作为程序产品通过CD/DVD(例如CD 218)或其他形式的可记录介质或通过任何类型的电子传输机制进行分发。
可视地通知用户当前生命周期阶段的实例
图4和图5是示出了可视地通知用户图1的闪存设备100的当前生命周期阶段的一个实例的方块图。对于图4和图5的实例,示例性闪存设备100的已知寿命终止周期假设为100。如上面所讨论的,可以根据闪存设备100中的组件或通过制造商预先规定的数目来确定实际寿命终止周期。
在一个实施例中,根据读/写周期数、加电周期数、错误数等,寿命终止预测模块112或计数器108向通知接口110发送信号。在此实例中,已存在于闪存设备100上的LED灯402、404、406用于指示闪存设备100的当前生命周期。例如,如果已进行0到50个生命周期(可以包括读/写周期、加电周期、错误等中的任何一个或其聚合),则可以接通特定的LED(多个)或特定模式的LED。例如,图4示出了显示第一LED 402。
如果已进行50到75个生命周期,则可以显示第二组LED(多个)或第二模式的LED。图4示出了没有显示LED以指示当前生命周期处于50到75个生命周期之间的中间状态。图4还示出了用于向用户指示闪存设备100处于临界生命周期阶段的第三实例。例如,图4示出了显示第三LED406以通知用户至少已进行闪存设备100的100个可用生命周期中的75个周期。如果设备只有单个可用的LED(如图5所示),则单个LED 502可以稳定显示(常亮),不显示、间歇地闪烁、稳定闪烁、以各种模式闪烁等。例如,已进行0到50个生命周期的指示可以导致始终显示LED 502。已进行50到75个生命周期的指示可以导致不显示LED。至少进行75个生命周期的指示可以导致LED 502快速闪烁。
应注意的是,图4和图5中的实例是示例性的而非限制性的。可以使用LED、颜色、闪烁模式的任何组合来指示闪存设备100的当前生命周期状态。此外,如上面所讨论的,还可以使用有声通知替代可视通知或将其与可视通知结合使用。此外,在包括显示屏的闪存设备(例如便携式MP3播放器等)中,可视通知可以包括文本和/或符号。
初始地将物理处理节点分配给逻辑运算符的示例性过程
图6示出了确定闪存(设备)的当前生命周期阶段的示例性过程。图6的操作流程图开始于步骤602并且直接转到步骤602。以下讨论适用于诸如图1中的设备100之类的闪存设备或者如图2中所示的内部闪存208。在步骤604,计数器108、220监视闪存104、208的生命周期事件(例如读/写周期、加电周期、错误等)。在步骤606,计数器108、220判定是否已出现生命周期事件。如果此判定的结果是否定的,则控制流程返回步骤604,在此计数器108、220继续进行监视。如果此判定的结果是肯定的,则在步骤608,计数器108、220将为该特定生命周期事件增加当前计数。
在步骤610,计数器108、200或寿命终止预测模块112、222可选地将权重分配给生命周期事件。如上面所讨论的,一个生命周期事件(例如写入)的权重可以远重于另一个生命周期事件(例如读取)的权重。在步骤612,根据已计数的生命周期事件,寿命终止预测模块112、222确定闪存104、208的当前生命周期阶段。在步骤614,通知用户闪存104、208的当前生命周期事件。例如,可视通知(如图3-5所讨论的)或有声通知可以向用户指示闪存104、208的当前生命周期阶段。然后,控制流程在步骤616退出。
应注意的是,上面的过程可以直接在闪存设备100、包括闪存208的信息处理系统上执行,或者由可通信地连接到外部闪存设备100的信息处理系统来执行。
非限制性实例
本发明可以以硬件、软件或硬件和软件的组合来实现。根据本发明优选实施例的系统可以以集中方式在一个计算机系统中实现,或者以分布方式实现,其中不同元件分布在若干互连的计算机系统间。任何种类的计算机系统或其他适于执行此处所述方法的装置都是适合的。典型的硬件和软件组合可以是具有计算机程序的通用计算机系统,当被加载和执行时,所述计算机程序将控制计算机系统以使其执行此处所述的方法。
通常,被执行以实现本发明实施例的例程,无论作为操作系统的一部分还是作为特定应用、组件、程序、模块、对象或指令序列实现,在此都可以称为“程序”。计算机程序通常包括许多指令,本机计算机将这些指令转换为机器可读的格式并由此转换为可执行指令。此外,程序包括变量和数据结构,它们可位于程序本地或可在存储器或存储设备中找到。此外,此处所述的各种程序可以根据应用(为其在本发明的特定实施例中实现所述程序)来确定。但是应理解,任何所遵循的特定程序术语的使用只是为了方便,因此不应将本发明限于仅在由此类术语所确定和/或暗示的任何特定应用中使用。
虽然公开了本发明的特定实施例,但是本领域的技术人员将理解,可以对特定实施例做出更改而不偏离本发明的精神和范围。因此,本发明的范围并不限于特定实施例,所附权利要求将覆盖本发明范围内的任何和所有此类应用、修改和实施例。
Claims (18)
1.一种使用电子设备确定闪存的寿命终止阶段的方法,所述方法包括:
检测与位于电子设备上的闪存关联的至少一个生命周期事件;
基于与所述至少一个生命周期事件相关联的生命周期事件类型,为所述至少一个生命周期事件分配多个权重中的一个权重;
基于分配给所述至少一个生命周期事件的所述权重,递增与所述至少一个生命周期事件关联的计数器;
根据所述计数器确定所述至少一个生命周期事件的总出现次数;
将所述至少一个生命周期事件的所述总出现次数存储在所述闪存上;
判定所述总出现次数是否超过至少一个给定阈值;
至少部分地根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段,其中所述生命周期阶段与所述至少一个给定阈值关联;以及
通知用户所述闪存的生命周期状态。
2.根据权利要求1的方法,其中所述至少一个生命周期事件包括以下项中的至少一项:
所述闪存的写周期;
所述闪存的读周期;
包括所述闪存的所述设备的加电周期;以及
所述闪存的存储单元中存在的错误。
3.根据权利要求1的方法,其中所述通知还包括以下项中的至少一项:
可视地通知用户;以及
有声地通知用户。
4.根据权利要求3的方法,其中所述可视地通知还包括以下项中的至少一项:
至少一次亮起所述设备上的一组视觉指示装置;
在所述设备的显示器上显示文本;以及
在可通信地连接到所述设备的外部显示器上,以图形的方式示出与所述当前生命周期阶段关联的视觉通知。
5.根据权利要求1的方法,其中所述当前生命周期阶段包括以下项中的至少一项:
所述闪存剩余的估计寿命的百分比;
可用于所述闪存的剩余生命周期事件的估计数;以及
所述闪存剩余的所述估计寿命的指示,其为以下项中的一项:
高于平均值、平均值以及临界。
6.根据权利要求1的方法,其中由包括所述闪存的所述设备来执行所述检测。
7.根据权利要求1的方法,其中由可通信地连接到所述电子设备的其他电子设备来执行所述检测。
8.一种用于确定所述闪存的寿命终止阶段方法,其中第一电子设备可通信地连接到包括至少一个闪存的至少第二电子设备,所述方法包括:
由可通信地连接到至少第二电子设备的第一电子设备来检测与位于所述至少第二电子设备上的闪存关联的至少一个生命周期事件;
基于与所述至少一个生命周期事件相关联的生命周期事件类型,为所述至少一个生命周期事件分配多个权重中的一个权重;
基于分配给所述至少一个生命周期事件的所述权重,递增与所述至少一个生命周期事件关联的计数器;
根据所述计数器确定所述至少一个生命周期事件的总出现次数;
将所述至少一个生命周期事件的所述总出现次数存储在所述闪存上;
判定所述总出现次数是否超过至少一个给定阈值;
至少部分地根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段,其中所述生命周期阶段与所述至少一个给定阈值关联;以及
通知用户所述闪存的生命周期状态。
9.根据权利要求8的方法,其中所述至少一个生命周期事件包括以下项中的至少一项:
所述闪存的写周期;
所述闪存的读周期;
所述第二电子设备的加电周期;以及
所述闪存的存储单元中存在的错误。
10.根据权利要求8的方法,其中所述通知还包括以下项中的至少一项:
可视地通知用户;以及
有声地通知用户。
11.根据权利要求10的方法,其中所述可视通知还包括以下项中的至少一项:
至少一次亮起所述第二电子设备上的一组视觉指示装置;
在所述第二电子设备的显示器上显示文本;以及
在可通信地连接到所述第一电子设备的显示器上,以图形的方式示出与所述当前生命周期阶段关联的视觉通知。
12.根据权利要求8的方法,其中所述当前生命周期阶段包括以下项中的至少一项:
所述闪存剩余的估计寿命的百分比;
可用于所述闪存的剩余生命周期事件的估计数;以及
所述闪存剩余的所述估计寿命的指示,其为以下项中的一项:
高于平均值、平均值以及临界。
13.一种包括至少一个闪存模块的电子设备,所述电子设备包括:
至少一个闪存模块;
生命周期事件计数器,其可通信地连接到所述至少一个闪存模块,其中所述生命周期计数器检测与所述至少一个闪存模块关联的至少一个生命周期事件,基于与所述至少一个生命周期事件相关联的生命周期事件类型,为所述至少一个生命周期事件分配多个权重中的一个权重,其中所述生命周期计数器基于分配给所述至少一个生命周期事件的所述权重递增所述至少一个生命周期事件的生命周期计数,并且其中将所述生命周期计数存储在所述至少一个闪存模块上;
生命周期阶段估计器,其可通信地连接到所述生命周期计数器和所述至少一个闪存模块,其中所述生命周期阶段估计器确定所述至少一个生命周期事件的总出现次数并判定所述总出现次数是否超过至少一个给定阈值,并且其中所述生命周期阶段估计器至少部分根据判定所述总出现次数是否超过至少一个给定阈值来确定所述闪存的当前生命周期阶段,其中所述生命周期阶段与所述至少一个给定阈值关联;以及
至少一个通知模块,其中所述至少一个通知模块通知用户所述闪存模块的生命周期状态。
14.根据权利要求13的电子设备,其中所述至少一个生命周期事件包括以下项中的至少一项:
所述闪存的写周期;
所述闪存的读周期;
包括所述闪存的所述设备的加电周期;以及
所述闪存的存储单元中存在的错误。
15.根据权利要求13的电子设备,其中所述生命周期阶段估计器还将权重分配给所述至少一个生命周期事件,其中所述确定至少部分根据判定所述总出现次数是否超过至少一个给定阈值以及分配给所述至少一个生命周期的所述权重。
16.根据权利要求13的电子设备,其中所述至少一个通知模块通过以下方式中的至少一个方式来通知用户所述闪存模块的生命周期状态:
可视地通知用户;以及
有声地通知用户。
17.根据权利要求13的电子设备,其中所述可视地通知还包括以下项中的至少一项:
至少一次亮起所述设备上的一组视觉指示装置;
在所述设备的显示器上显示文本;以及
在可通信地连接到所述设备的外部显示器上,以图形的方式示出与所述当前生命周期阶段关联的视觉通知。
18.根据权利要求13的电子设备,其中所述当前生命周期阶段包括
以下项中的至少一项:
所述闪存剩余的估计寿命的百分比;
可用于所述闪存的剩余生命周期事件的估计数;以及
所述闪存剩余的所述估计寿命的指示,其为以下项中的一项:
高于平均值、平均值以及临界。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/539,027 US7356442B1 (en) | 2006-10-05 | 2006-10-05 | End of life prediction of flash memory |
US11/539,027 | 2006-10-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101159169A CN101159169A (zh) | 2008-04-09 |
CN101159169B true CN101159169B (zh) | 2011-08-17 |
Family
ID=39263565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101630501A Active CN101159169B (zh) | 2006-10-05 | 2007-09-29 | 用于闪存的寿命终止预测的方法和电子设备 |
Country Status (2)
Country | Link |
---|---|
US (3) | US7356442B1 (zh) |
CN (1) | CN101159169B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI489122B (zh) * | 2013-08-01 | 2015-06-21 | Realtek Semiconductor Corp | 電路使用期計量裝置與方法 |
Families Citing this family (142)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702935B2 (en) * | 2006-01-25 | 2010-04-20 | Apple Inc. | Reporting flash memory operating voltages |
US7861122B2 (en) * | 2006-01-27 | 2010-12-28 | Apple Inc. | Monitoring health of non-volatile memory |
JP4575346B2 (ja) * | 2006-11-30 | 2010-11-04 | 株式会社東芝 | メモリシステム |
US20080288712A1 (en) * | 2007-04-25 | 2008-11-20 | Cornwell Michael J | Accessing metadata with an external host |
US7913032B1 (en) | 2007-04-25 | 2011-03-22 | Apple Inc. | Initiating memory wear leveling |
US7770079B2 (en) | 2007-08-22 | 2010-08-03 | Micron Technology Inc. | Error scanning in flash memory |
WO2009095902A2 (en) | 2008-01-31 | 2009-08-06 | Densbits Technologies Ltd. | Systems and methods for handling immediate data errors in flash memory |
US8650352B2 (en) | 2007-09-20 | 2014-02-11 | Densbits Technologies Ltd. | Systems and methods for determining logical values of coupled flash memory cells |
US8694715B2 (en) | 2007-10-22 | 2014-04-08 | Densbits Technologies Ltd. | Methods for adaptively programming flash memory devices and flash memory systems incorporating same |
US8443242B2 (en) | 2007-10-25 | 2013-05-14 | Densbits Technologies Ltd. | Systems and methods for multiple coding rates in flash devices |
WO2009072104A2 (en) | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory device with physical cell value deterioration accommodation and methods useful in conjunction therewith |
US8607128B2 (en) | 2007-12-05 | 2013-12-10 | Densbits Technologies Ltd. | Low power chien-search based BCH/RS decoding system for flash memory, mobile communications devices and other applications |
WO2009072103A2 (en) | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells |
WO2009074979A2 (en) | 2007-12-12 | 2009-06-18 | Densbits Technologies Ltd. | Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications |
US8359516B2 (en) | 2007-12-12 | 2013-01-22 | Densbits Technologies Ltd. | Systems and methods for error correction and decoding on multi-level physical media |
US8327246B2 (en) | 2007-12-18 | 2012-12-04 | Densbits Technologies Ltd. | Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith |
CN101472117A (zh) * | 2007-12-25 | 2009-07-01 | 深圳Tcl新技术有限公司 | 对节目进行选择录制的装置与方法 |
US8972472B2 (en) | 2008-03-25 | 2015-03-03 | Densbits Technologies Ltd. | Apparatus and methods for hardware-efficient unbiased rounding |
CN101266840B (zh) * | 2008-04-17 | 2012-05-23 | 北京航空航天大学 | 一种闪存类电子产品的寿命预测方法 |
US8010738B1 (en) * | 2008-06-27 | 2011-08-30 | Emc Corporation | Techniques for obtaining a specified lifetime for a data storage device |
US8332725B2 (en) | 2008-08-20 | 2012-12-11 | Densbits Technologies Ltd. | Reprogramming non volatile memory portions |
US8458574B2 (en) | 2009-04-06 | 2013-06-04 | Densbits Technologies Ltd. | Compact chien-search based decoding apparatus and method |
US8819385B2 (en) | 2009-04-06 | 2014-08-26 | Densbits Technologies Ltd. | Device and method for managing a flash memory |
US7975193B2 (en) * | 2009-06-01 | 2011-07-05 | Lsi Corporation | Solid state storage end of life prediction with correction history |
US20100306451A1 (en) * | 2009-06-01 | 2010-12-02 | Joshua Johnson | Architecture for nand flash constraint enforcement |
US9063561B2 (en) * | 2009-05-06 | 2015-06-23 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Direct memory access for loopback transfers in a media controller architecture |
US8219776B2 (en) * | 2009-09-23 | 2012-07-10 | Lsi Corporation | Logical-to-physical address translation for solid state disks |
US8166258B2 (en) * | 2009-07-24 | 2012-04-24 | Lsi Corporation | Skip operations for solid state disks |
US8321639B2 (en) * | 2009-12-30 | 2012-11-27 | Lsi Corporation | Command tracking for direct access block storage devices |
US8245112B2 (en) * | 2009-06-04 | 2012-08-14 | Lsi Corporation | Flash memory organization |
US8555141B2 (en) * | 2009-06-04 | 2013-10-08 | Lsi Corporation | Flash memory organization |
US8516264B2 (en) * | 2009-10-09 | 2013-08-20 | Lsi Corporation | Interlocking plain text passwords to data encryption keys |
US8566510B2 (en) | 2009-05-12 | 2013-10-22 | Densbits Technologies Ltd. | Systems and method for flash memory management |
US8151137B2 (en) * | 2009-05-28 | 2012-04-03 | Lsi Corporation | Systems and methods for governing the life cycle of a solid state drive |
US8176367B2 (en) * | 2009-05-28 | 2012-05-08 | Agere Systems Inc. | Systems and methods for managing end of life in a solid state drive |
US20110047322A1 (en) * | 2009-08-19 | 2011-02-24 | Ocz Technology Group, Inc. | Methods, systems and devices for increasing data retention on solid-state mass storage devices |
US8868821B2 (en) | 2009-08-26 | 2014-10-21 | Densbits Technologies Ltd. | Systems and methods for pre-equalization and code design for a flash memory |
US8305812B2 (en) * | 2009-08-26 | 2012-11-06 | Densbits Technologies Ltd. | Flash memory module and method for programming a page of flash memory cells |
US8995197B1 (en) | 2009-08-26 | 2015-03-31 | Densbits Technologies Ltd. | System and methods for dynamic erase and program control for flash memory device memories |
US9330767B1 (en) | 2009-08-26 | 2016-05-03 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory module and method for programming a page of flash memory cells |
US8400854B2 (en) * | 2009-09-11 | 2013-03-19 | Sandisk Technologies Inc. | Identifying at-risk data in non-volatile storage |
US8730729B2 (en) | 2009-10-15 | 2014-05-20 | Densbits Technologies Ltd. | Systems and methods for averaging error rates in non-volatile devices and storage systems |
US8724387B2 (en) | 2009-10-22 | 2014-05-13 | Densbits Technologies Ltd. | Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages |
US8626988B2 (en) | 2009-11-19 | 2014-01-07 | Densbits Technologies Ltd. | System and method for uncoded bit error rate equalization via interleaving |
US8566940B1 (en) * | 2009-11-25 | 2013-10-22 | Micron Technology, Inc. | Authenticated operations and event counters |
US9037777B2 (en) | 2009-12-22 | 2015-05-19 | Densbits Technologies Ltd. | Device, system, and method for reducing program/read disturb in flash arrays |
US8607124B2 (en) | 2009-12-24 | 2013-12-10 | Densbits Technologies Ltd. | System and method for setting a flash memory cell read threshold |
JP2011164994A (ja) * | 2010-02-10 | 2011-08-25 | Toshiba Corp | メモリシステム |
US8700970B2 (en) | 2010-02-28 | 2014-04-15 | Densbits Technologies Ltd. | System and method for multi-dimensional decoding |
US8671265B2 (en) | 2010-03-05 | 2014-03-11 | Solidfire, Inc. | Distributed data storage system providing de-duplication of data using block identifiers |
US8320185B2 (en) * | 2010-03-31 | 2012-11-27 | Micron Technology, Inc. | Lifetime markers for memory devices |
US8527840B2 (en) | 2010-04-06 | 2013-09-03 | Densbits Technologies Ltd. | System and method for restoring damaged data programmed on a flash device |
US8516274B2 (en) | 2010-04-06 | 2013-08-20 | Densbits Technologies Ltd. | Method, system and medium for analog encryption in a flash memory |
US8745317B2 (en) | 2010-04-07 | 2014-06-03 | Densbits Technologies Ltd. | System and method for storing information in a multi-level cell memory |
US9021177B2 (en) | 2010-04-29 | 2015-04-28 | Densbits Technologies Ltd. | System and method for allocating and using spare blocks in a flash memory |
US8468431B2 (en) | 2010-07-01 | 2013-06-18 | Densbits Technologies Ltd. | System and method for multi-dimensional encoding and decoding |
US8539311B2 (en) | 2010-07-01 | 2013-09-17 | Densbits Technologies Ltd. | System and method for data recovery in multi-level cell memories |
US8467249B2 (en) | 2010-07-06 | 2013-06-18 | Densbits Technologies Ltd. | Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system |
US8964464B2 (en) | 2010-08-24 | 2015-02-24 | Densbits Technologies Ltd. | System and method for accelerated sampling |
US8508995B2 (en) | 2010-09-15 | 2013-08-13 | Densbits Technologies Ltd. | System and method for adjusting read voltage thresholds in memories |
US20120102367A1 (en) | 2010-10-26 | 2012-04-26 | International Business Machines Corporation | Scalable Prediction Failure Analysis For Memory Used In Modern Computers |
US9063878B2 (en) | 2010-11-03 | 2015-06-23 | Densbits Technologies Ltd. | Method, system and computer readable medium for copy back |
US8850100B2 (en) | 2010-12-07 | 2014-09-30 | Densbits Technologies Ltd. | Interleaving codeword portions between multiple planes and/or dies of a flash memory device |
KR101214285B1 (ko) * | 2010-12-30 | 2012-12-20 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
US10079068B2 (en) | 2011-02-23 | 2018-09-18 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Devices and method for wear estimation based memory management |
US8693258B2 (en) | 2011-03-17 | 2014-04-08 | Densbits Technologies Ltd. | Obtaining soft information using a hard interface |
US8990665B1 (en) | 2011-04-06 | 2015-03-24 | Densbits Technologies Ltd. | System, method and computer program product for joint search of a read threshold and soft decoding |
US9110785B1 (en) | 2011-05-12 | 2015-08-18 | Densbits Technologies Ltd. | Ordered merge of data sectors that belong to memory space portions |
US9396106B2 (en) | 2011-05-12 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US9195592B1 (en) | 2011-05-12 | 2015-11-24 | Densbits Technologies Ltd. | Advanced management of a non-volatile memory |
US9501392B1 (en) | 2011-05-12 | 2016-11-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of a non-volatile memory module |
US9372792B1 (en) | 2011-05-12 | 2016-06-21 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US8996790B1 (en) | 2011-05-12 | 2015-03-31 | Densbits Technologies Ltd. | System and method for flash memory management |
US8667211B2 (en) | 2011-06-01 | 2014-03-04 | Densbits Technologies Ltd. | System and method for managing a non-volatile memory |
US8588003B1 (en) | 2011-08-01 | 2013-11-19 | Densbits Technologies Ltd. | System, method and computer program product for programming and for recovering from a power failure |
US8553468B2 (en) | 2011-09-21 | 2013-10-08 | Densbits Technologies Ltd. | System and method for managing erase operations in a non-volatile memory |
US9054992B2 (en) | 2011-12-27 | 2015-06-09 | Solidfire, Inc. | Quality of service policy sets |
US9838269B2 (en) | 2011-12-27 | 2017-12-05 | Netapp, Inc. | Proportional quality of service based on client usage and system metrics |
US8947941B2 (en) | 2012-02-09 | 2015-02-03 | Densbits Technologies Ltd. | State responsive operations relating to flash memory cells |
US8996788B2 (en) | 2012-02-09 | 2015-03-31 | Densbits Technologies Ltd. | Configurable flash interface |
DE102012003710A1 (de) * | 2012-02-24 | 2013-08-29 | Giesecke & Devrient Gmbh | Verlängerung der Betriebszeit eines Sicherheitselements |
US8996793B1 (en) | 2012-04-24 | 2015-03-31 | Densbits Technologies Ltd. | System, method and computer readable medium for generating soft information |
US8838937B1 (en) | 2012-05-23 | 2014-09-16 | Densbits Technologies Ltd. | Methods, systems and computer readable medium for writing and reading data |
US8879325B1 (en) | 2012-05-30 | 2014-11-04 | Densbits Technologies Ltd. | System, method and computer program product for processing read threshold information and for reading a flash memory module |
TWI484333B (zh) * | 2012-07-12 | 2015-05-11 | Phison Electronics Corp | 彈性緩衝器模組及傳輸介面之彈性緩衝方法 |
US9921954B1 (en) | 2012-08-27 | 2018-03-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for split flash memory management between host and storage controller |
US8938597B2 (en) | 2012-10-23 | 2015-01-20 | Seagate Technology Llc | Restoring virtualized GCU state information |
US9368225B1 (en) | 2012-11-21 | 2016-06-14 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Determining read thresholds based upon read error direction statistics |
US9069659B1 (en) | 2013-01-03 | 2015-06-30 | Densbits Technologies Ltd. | Read threshold determination using reference read threshold |
US9335809B2 (en) | 2013-03-15 | 2016-05-10 | Seagate Technology Llc | Volatile memory storing system data during low power mode operation and monitoring the voltage supplied to the memory during low power mode |
US9411394B2 (en) | 2013-03-15 | 2016-08-09 | Seagate Technology Llc | PHY based wake up from low power mode operation |
US8766707B1 (en) | 2013-03-15 | 2014-07-01 | Seagate Technology Llc | Integrated always on power island for low power mode operation |
TWI570738B (zh) | 2013-03-29 | 2017-02-11 | 萬國商業機器公司 | 具有使用歷程記錄的主記憶體模組以及此主記憶體模組於電腦系統之應用 |
US9136876B1 (en) | 2013-06-13 | 2015-09-15 | Densbits Technologies Ltd. | Size limited multi-dimensional decoding |
US9164828B2 (en) | 2013-09-26 | 2015-10-20 | Seagate Technology Llc | Systems and methods for enhanced data recovery in a solid state memory system |
US9413491B1 (en) | 2013-10-08 | 2016-08-09 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for multiple dimension decoding and encoding a message |
US9397706B1 (en) | 2013-10-09 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for irregular multiple dimension decoding and encoding |
US9348694B1 (en) | 2013-10-09 | 2016-05-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9786388B1 (en) | 2013-10-09 | 2017-10-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9424179B2 (en) | 2013-10-17 | 2016-08-23 | Seagate Technology Llc | Systems and methods for latency based data recycling in a solid state memory system |
US9201729B2 (en) | 2013-10-21 | 2015-12-01 | Seagate Technology, Llc | Systems and methods for soft data utilization in a solid state memory system |
US9378840B2 (en) | 2013-10-28 | 2016-06-28 | Seagate Technology Llc | Systems and methods for sub-zero threshold characterization in a memory cell |
US9276609B2 (en) | 2013-11-16 | 2016-03-01 | Seagate Technology Llc | Systems and methods for soft decision generation in a solid state memory system |
US9536612B1 (en) | 2014-01-23 | 2017-01-03 | Avago Technologies General Ip (Singapore) Pte. Ltd | Digital signaling processing for three dimensional flash memory arrays |
US10120792B1 (en) | 2014-01-29 | 2018-11-06 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Programming an embedded flash storage device |
US9576683B2 (en) | 2014-02-06 | 2017-02-21 | Seagate Technology Llc | Systems and methods for hard error reduction in a solid state memory device |
US9378810B2 (en) | 2014-02-11 | 2016-06-28 | Seagate Technology Llc | Systems and methods for last written page handling in a memory device |
US20150244795A1 (en) | 2014-02-21 | 2015-08-27 | Solidfire, Inc. | Data syncing in a distributed system |
US9268487B2 (en) | 2014-03-24 | 2016-02-23 | Western Digital Technologies, Inc. | Method and apparatus for restricting writes to solid state memory when an end-of life condition is reached |
CN104036110A (zh) * | 2014-03-24 | 2014-09-10 | 北京航空航天大学 | 一种针对电子单机热待机环境下的剩余寿命预测装置 |
US9542262B1 (en) | 2014-05-29 | 2017-01-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Error correction |
US9892033B1 (en) | 2014-06-24 | 2018-02-13 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of memory units |
US9972393B1 (en) | 2014-07-03 | 2018-05-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Accelerating programming of a flash memory module |
US9584159B1 (en) | 2014-07-03 | 2017-02-28 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Interleaved encoding |
US9449702B1 (en) | 2014-07-08 | 2016-09-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Power management |
US9983828B2 (en) * | 2014-10-09 | 2018-05-29 | Sandisk Technologies Llc | Health indicator of a storage device |
US9524211B1 (en) | 2014-11-18 | 2016-12-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Codeword management |
US10305515B1 (en) | 2015-02-02 | 2019-05-28 | Avago Technologies International Sales Pte. Limited | System and method for encoding using multiple linear feedback shift registers |
US10628255B1 (en) | 2015-06-11 | 2020-04-21 | Avago Technologies International Sales Pte. Limited | Multi-dimensional decoding |
US9851921B1 (en) | 2015-07-05 | 2017-12-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory chip processing |
CN105679369B (zh) * | 2015-12-28 | 2019-09-27 | 上海华虹宏力半导体制造有限公司 | 闪存寿命预测方法和筛选方法 |
US10095597B2 (en) | 2016-01-13 | 2018-10-09 | International Business Machines Corporation | Managing a set of wear-leveling data using a set of thread events |
US10078457B2 (en) | 2016-01-13 | 2018-09-18 | International Business Machines Corporation | Managing a set of wear-leveling data using a set of bus traffic |
US9886324B2 (en) | 2016-01-13 | 2018-02-06 | International Business Machines Corporation | Managing asset placement using a set of wear leveling data |
US10222982B2 (en) * | 2016-02-10 | 2019-03-05 | Ricoh Company, Ltd. | Lifetime management device and lifetime management method |
US9954558B1 (en) | 2016-03-03 | 2018-04-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Fast decoding of data stored in a flash memory |
US10929022B2 (en) | 2016-04-25 | 2021-02-23 | Netapp. Inc. | Space savings reporting for storage system supporting snapshot and clones |
US10642763B2 (en) | 2016-09-20 | 2020-05-05 | Netapp, Inc. | Quality of service policy sets |
JP6386523B2 (ja) * | 2016-12-15 | 2018-09-05 | ファナック株式会社 | Nandフラッシュメモリの寿命を予測する機械学習装置、寿命予測装置、数値制御装置、生産システム、及び機械学習方法 |
US11742038B2 (en) | 2017-08-11 | 2023-08-29 | Advanced Micro Devices, Inc. | Method and apparatus for providing wear leveling |
US11551990B2 (en) | 2017-08-11 | 2023-01-10 | Advanced Micro Devices, Inc. | Method and apparatus for providing thermal wear leveling |
CN107967928B (zh) * | 2017-10-18 | 2020-06-26 | 武汉忆数存储技术有限公司 | 一种基于数学模型的闪存芯片寿命预测方法 |
US10846165B2 (en) * | 2018-05-17 | 2020-11-24 | Micron Technology, Inc. | Adaptive scan frequency for detecting errors in a memory system |
CN108766496B (zh) * | 2018-05-23 | 2020-10-16 | 武汉忆数存储技术有限公司 | 一种在线动态预测闪存芯片寿命的方法及装置 |
US10783982B2 (en) | 2018-06-12 | 2020-09-22 | Seagate Technology Llc | Probation bit for data storage memory |
CN109817267B (zh) * | 2018-12-17 | 2021-02-26 | 武汉忆数存储技术有限公司 | 一种基于深度学习的闪存寿命预测方法、系统及计算机可读存取介质 |
FR3090920B1 (fr) * | 2018-12-19 | 2022-03-04 | Continental Automotive France | Procede de gestion de memoire flash |
CN110007857B (zh) * | 2019-03-08 | 2022-08-19 | 北京星网锐捷网络技术有限公司 | 一种闪存芯片的寿命预测方法及装置 |
CN113742176A (zh) * | 2021-09-03 | 2021-12-03 | 联想(北京)有限公司 | 一种故障预测方法、装置和电子设备 |
WO2022127944A2 (zh) * | 2022-03-24 | 2022-06-23 | 苏州佳世达电通有限公司 | 一种用于电子设备的监控方法、装置及电子设备 |
KR20240069474A (ko) * | 2022-11-11 | 2024-05-20 | 삼성전자주식회사 | 메모리 장치 및 사용 기록 관리 방법 |
CN116700602B (zh) * | 2022-12-08 | 2024-04-12 | 荣耀终端有限公司 | 一种查询扩展内存寿命的方法及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005810A (en) * | 1998-08-10 | 1999-12-21 | Integrated Silicon Solution, Inc. | Byte-programmable flash memory having counters and secondary storage for disturb control during program and erase operations |
US6249838B1 (en) * | 1998-12-28 | 2001-06-19 | Cisco Technology Inc. | Physical medium information in file system header |
EP1286267A1 (en) * | 2001-08-17 | 2003-02-26 | Sony International (Europe) GmbH | Flash based non-volatile memory |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5268870A (en) | 1988-06-08 | 1993-12-07 | Eliyahou Harari | Flash EEPROM system and intelligent programming and erasing methods therefor |
DE69033262T2 (de) | 1989-04-13 | 2000-02-24 | Sandisk Corp., Santa Clara | EEPROM-Karte mit Austauch von fehlerhaften Speicherzellen und Zwischenspeicher |
US20020091965A1 (en) | 2000-12-22 | 2002-07-11 | Mark Moshayedi | System and method for early detection of impending failure of a data storage system |
DE60306488D1 (de) | 2003-02-27 | 2006-08-10 | St Microelectronics Srl | Eingebautes Testverfahren in einem Flash Speicher |
US20050041453A1 (en) | 2003-08-22 | 2005-02-24 | Brazis Paul W. | Method and apparatus for reading and writing to solid-state memory |
US7321951B2 (en) | 2003-11-17 | 2008-01-22 | Micron Technology, Inc. | Method for testing flash memory power loss recovery |
US7653778B2 (en) * | 2006-05-08 | 2010-01-26 | Siliconsystems, Inc. | Systems and methods for measuring the useful life of solid-state storage devices |
-
2006
- 2006-10-05 US US11/539,027 patent/US7356442B1/en active Active
-
2007
- 2007-09-29 CN CN2007101630501A patent/CN101159169B/zh active Active
-
2008
- 2008-03-03 US US12/041,304 patent/US8108179B2/en not_active Expired - Fee Related
- 2008-03-03 US US12/041,320 patent/US8108180B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005810A (en) * | 1998-08-10 | 1999-12-21 | Integrated Silicon Solution, Inc. | Byte-programmable flash memory having counters and secondary storage for disturb control during program and erase operations |
US6249838B1 (en) * | 1998-12-28 | 2001-06-19 | Cisco Technology Inc. | Physical medium information in file system header |
EP1286267A1 (en) * | 2001-08-17 | 2003-02-26 | Sony International (Europe) GmbH | Flash based non-volatile memory |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI489122B (zh) * | 2013-08-01 | 2015-06-21 | Realtek Semiconductor Corp | 電路使用期計量裝置與方法 |
Also Published As
Publication number | Publication date |
---|---|
US7356442B1 (en) | 2008-04-08 |
US20080162078A1 (en) | 2008-07-03 |
CN101159169A (zh) | 2008-04-09 |
US20080162079A1 (en) | 2008-07-03 |
US8108179B2 (en) | 2012-01-31 |
US8108180B2 (en) | 2012-01-31 |
US20080086275A1 (en) | 2008-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101159169B (zh) | 用于闪存的寿命终止预测的方法和电子设备 | |
JP2017224272A (ja) | ハードウェア障害回復システム | |
CN109683696A (zh) | 服务器电源故障检测系统、方法、装置、设备及介质 | |
US20040210889A1 (en) | System management infrastructure for corrective actions to servers with shared resources | |
EP3400528B1 (en) | Deferred server recovery in computing systems | |
US20170123886A1 (en) | System and Method for Assessing Degree of Impact of Alerts in an Information Handling System | |
KR102176028B1 (ko) | 실시간 통합 모니터링 시스템 및 그 방법 | |
CN104076903A (zh) | 推迟挂起 | |
WO2011068948A1 (en) | System and method for analyzing nonstandard facility operations within a data center | |
CN109947585A (zh) | Pcie设备故障的处理方法及装置 | |
JP7436737B1 (ja) | マルチベンダーを支援するサーバ管理システム | |
CN110502345A (zh) | 一种过载保护方法、装置、计算机设备及存储介质 | |
CN111949488A (zh) | 一种硬盘故障预测方法、系统及电子设备和存储介质 | |
CN115033441A (zh) | PCIe设备故障检测方法、装置、设备和存储介质 | |
JPH10312318A (ja) | リソース状態監視方法および情報処理システム | |
US20230393775A1 (en) | Health evaluation for a distributed storage system | |
US20130185299A1 (en) | Method and system for performing system maintenance in a computing device | |
CN110377450A (zh) | 一种硬件异常处理方法、系统及相关组件 | |
CN113835961B (zh) | 告警信息监控方法、装置、服务器及存储介质 | |
JP5970987B2 (ja) | 故障検出装置、故障検出方法および故障検出プログラム | |
US20230136749A1 (en) | Monitoring System, Monitoring Apparatus, and Monitoring Method | |
JP2019079120A (ja) | 情報処理装置、情報処理方法、及びプログラム | |
CN103064777B (zh) | 磁盘阵列告警显示方法和装置 | |
CN109995618B (zh) | 网络存活监控方法、装置、设备与计算机可读存储介质 | |
CN111188782A (zh) | 一种风扇冗余测试方法、装置和计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |