CN111727422A - 数据存储装置的服务寿命终止 - Google Patents

数据存储装置的服务寿命终止 Download PDF

Info

Publication number
CN111727422A
CN111727422A CN201980013545.7A CN201980013545A CN111727422A CN 111727422 A CN111727422 A CN 111727422A CN 201980013545 A CN201980013545 A CN 201980013545A CN 111727422 A CN111727422 A CN 111727422A
Authority
CN
China
Prior art keywords
storage device
computer system
user
host
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201980013545.7A
Other languages
English (en)
Inventor
A·弗罗利科夫
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.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
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 Micron Technology Inc filed Critical Micron Technology Inc
Publication of CN111727422A publication Critical patent/CN111727422A/zh
Withdrawn legal-status Critical Current

Links

Images

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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7204Capacity control, e.g. partitioning, end-of-life degradation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明涉及一种计算机系统,其具有与数据存储装置通信的主机,所述数据存储装置通过外围总线和主机接口耦合到所述主机。所述数据存储装置具有控制器、非易失性存储媒体;以及含有配置所述控制器的操作的指令的固件。所述计算机系统允许所述系统的用户指定服务选项以用于在所述数据存储装置的正常服务寿命终止后操作所述数据存储装置。用户所选选项存储在所述计算机系统中且控制所述存储装置在其服务寿命终止后的操作。

Description

数据存储装置的服务寿命终止
相关申请
本申请要求2018年2月15日提交且标题为“数据存储装置的服务寿命终止(End ofService Life of Data Storage Devices)”的第15/898,120号美国专利申请案的申请日权益,所述申请案的整个公开内容由此以引用的方式并入本文中。
技术领域
本文公开的至少一些实施例总体上涉及计算机存储装置,且更具体地说但不限于固态驱动器(SSD)。
背景技术
典型的计算机存储装置,例如硬盘驱动器(HDD)、固态驱动器(SSD)和混合驱动器,具有控制器,这些控制器从主机计算机接收数据存取请求且执行经编程计算任务,以便以可能特定于存储装置中配置的媒体和结构(例如硬盘驱动器中涂有磁性材料的刚性旋转磁盘、固态驱动器中具有存储器单元的集成电路,以及混合驱动器中的这两者)的方式来实施请求。
标准化逻辑装置接口协议允许主机计算机以无关于存储装置的特定媒体实施方案的方式来寻址计算机存储装置。
举例来说,也被称为NVM快速(NVMe)的非易失性存储器主机控制器接口规范(NVMHCI)指定用于通过外围组件互连高速(PCI快速或PCIe)总线存取非易失性存储装置的逻辑装置接口协议。
一些可擦除计算机存储媒体,例如可擦写光盘、可记录DVD、DVD-RAM、电可擦可编程只读存储器(EEPROM)和/或快闪存储器,具有受编程和擦除以存储数据的周期限制的适用服务时段。编程擦除(P/E)预算表示能可靠地执行以用于将数据记录在可擦除媒体中的编程和擦除周期的预定数目。在擦除的预定周期之后,用于可擦除媒体的此类编程擦除(P/E)预算用完;以及因此,媒体可能在统计意义上变得不可靠且因此被视为处于其适用的服务寿命尽头。
固态驱动器通常具有许多存储器单元块。存储器块中的每一者可被单独编程和擦除。每一存储器块的耗损程度与对存储器块执行的擦除操作的数目成比例。
可在固态驱动器中执行耗损均衡,使得擦除操作跨固态驱动器中的存储器块分布。
附图说明
在附图的图中通过实例而非限制的方式说明了实施例,在附图中,相似的参考标号指示类似的元件。
图1展示具有数据存储装置的计算机系统,所述数据存储装置具有可配置选项以在数据存储装置的正常服务寿命终止之后控制数据存储装置的操作。
图2展示管理数据存储装置的服务操作的终止的方法。
图3展示在服务终止后操作数据存储装置的详细方法。
具体实施方式
例如固态驱动器(SSD)的数据存储装置具有用于正常操作的设计服务寿命。在服务寿命终止之后,数据存储装置的存储器单元在统计意义上可能变得不可靠。然而,数据存储装置的不同用户可能具有不同需要和不同要求。在达到其服务寿命尽头之后,存储装置仍可提供有用的服务以按某些方式满足某些用户的某些需要。至少本文公开的实施例允许固态驱动器的特定用户/所有者识别选项以在数据存储装置的正常服务寿命终止之后以用户所选选项识别的方式操作所述数据存储装置。
举例来说,当固态驱动器(SSD)的存储器单元的至少一部分的使用达到预定编程擦除(P/E)预算时,固态驱动器可被视为已达到其正常服务寿命尽头。然而,固态驱动器可继续在无错误的情况下在固态驱动器的各个部分中多次读取和写入数据。
举例来说,一旦确定固态驱动器(SSD)具有高于阈值的错误计数,或具有大于快闪存储器的失效裸片(dead die)的阈值计数,就可认为固态驱动器(SSD)已达到其正常服务寿命尽头。固态驱动器(SSD)中出现错误和数据丢失的概率可能会高于阈值。
然而,在固态驱动器(SSD)达到其正常服务寿命尽头之后,固态驱动器(SSD)可在能容许一定量的错误或数据丢失时提供适用的服务。举例来说,固态驱动器可用于存储临时下载的视频剪辑;且下载的视频剪辑中的一定量的错误或数据丢失可能不会对视频的播放和/或用户体验产生重大影响。因此,用户可决定容忍潜在的错误或数据丢失,以换取固态驱动器(SSD)的延长使用。
在一些情况下,当用户可能希望在固态驱动器(SSD)的正常服务寿命终止后使用固态驱动器(SSD)时最大程度地减少数据错误或数据丢失时,可在其正常服务寿命终止之后将固态驱动器(SSD)锁定为只读模式。
在其它情况下,用户可选择通过在固态驱动器(SSD)上部署数据冗余来平衡数据丢失的风险和固态驱动器(SSD)的延长使用益处,这可能会以可用数据存储容量的大小换取提高的可靠性。举例来说,存储在固态驱动器的一部分中的数据可由固态驱动器自动镜像备份在固态驱动器的另一部分上。举例来说,固态驱动器可使用分割法和奇偶校验技术来存储冗余信息,所述冗余信息可用于以类似于独立磁盘冗余阵列(RAID)操作的方式鉴于数据错误或固态驱动器的存储媒体部分丢失而检测某些错误以及恢复数据。
在本公开中,固态驱动器(SSD)和/或其中安装有固态驱动器的计算机系统向其用户/所有者/管理员提供多个选项以在正常服务寿命终止之后继续操作。举例来说,用户可选择以只读模式、以最大化存储能力的模式或以冗余模式操作驱动器。
举例来说,一旦确定SSD接近其寿命尽头(例如,具有大于预定数目的错误、大于预定数目的失效裸片),SSD或计算机系统可提示用户/所有者/管理员选择服务选项以在SSD服务寿命终止后对其进行操作。所选选项存储在SSD和/或计算机系统中。在选择选项之后,SSD和/或计算机系统进一步可监测SSD的使用以检测SSD的服务寿命的终止。当达到服务寿命的尽头时,SSD和/或计算机系统可重新配置SSD以根据存储的选项进行操作。
举例来说,如果选择了只读模式,则SSD和/或计算机系统中的SSD会拒绝其它的将数据写入SSD的请求。
举例来说,如果选择了最大化存储容量模式,则SSD和/或计算机系统中的SSD可周期性地向用户传达数据丢失和/或错误的风险,使得存储在SSD上的数据与用户的错误容忍程度一致。在一些情况下,SSD可周期性地评估当前和/或预期的错误率,且生成报告、通知和/或警示给用户/管理员。在一些情况下,SSD和计算机系统监测存储在SSD中的数据的类型,以检测可能对数据丢失和错误敏感的数据存储实例。
举例来说,用户可识别生成对存储错误和/或数据丢失不敏感的一组数据活动类型;替代地或组合地,用户可识别符生成对存储错误和/或数据丢失敏感的另一组数据活动类型。SSD和/或计算机系统经配置以结合生成数据的活动来监测SSD中的数据存储,以确定要存储在SSD中的数据的敏感性的可能性。如果对存储错误和/或数据丢失敏感的一组数据将存储在SSD上,则计算机系统可生成警示给其用户和/或任选地阻止数据存储尝试。
举例来说,如果选择了冗余模式,则SSD和/或计算机系统可要求用户释放一定量的存储空间以进行冗余操作。当足够量的空闲存储空间变得可用时,SSD和/或计算机系统可自动配置冗余操作,从而在SSD的正常服务寿命终止后为用户提供减小的存储容量和提高的可靠性。
在正常服务寿命终止之后,SSD检测不良存储器单元且排除其用于数据存储。因此,SSD的有用存储容量在SSD的延长使用期间可能会在一段时间内减小。
图1展示具有数据存储装置103的计算机系统,所述数据存储装置具有可配置选项108以在数据存储装置103的正常服务寿命终止后控制数据存储装置103的操作。
图1的计算机系统中的存储装置103附接到主机101。主机101具有用户界面102,其可由计算机系统的用户用以指定选项108以在存储装置103的正常服务寿命终止之后对其进行操作。
举例来说,用户界面102可经配置以呈现选项的列表且要求用户从列表选择一个选项作为服务选项108。服务选项108在存储装置103的正常服务寿命终止后控制和/或限制所述存储装置的操作。
优选地,服务选项108在存储装置103的正常服务寿命终止达到之前指定,且在存储装置103的正常服务寿命终止后进行审查和/或确认。用户界面102可允许用户在存储装置103的正常服务寿命终止之后改变服务选项108,且因此改变存储装置103的操作。
优选地,服务选项108存储在存储装置103中。替代地或组合地,服务选项108可存储在主机101中和/或网络位置处。
在一些实施方案中,非易失性存储媒体109的一个区段具有比非易失性存储媒体109的其余部分的正常服务寿命长得多的正常服务寿命。任务关键数据,例如服务选项108,存储在此类区段中。
在一些实施方案中,存储装置103预留非易失性存储媒体109的区段,以使预留区段中的耗损程度显著低于非易失性存储媒体109的其余部分中的耗损。所述预留区段可在存储装置103和/或非易失性存储媒体109的其余部分的服务寿命终止之后可靠地使用。所述预留区段可用于存储在SSD的服务寿命终止之后对于整个存储装置103的可靠操作来说重要的数据,例如服务选项108。
在达到正常服务寿命尽头之后,存储装置103经配置以按服务选项指定的特定方式操作。服务选项所施加的限制和/或配置可通过存储装置103的控制器107运行其固件104和/或通过主机101根据服务选项108运行软件来实施。
举例来说,当服务选项108需要只读模式时,控制器107可拒绝从主机101提交的写入命令/请求。替代地或组合地,主机101可将存储装置103配置为只读,且拒绝来自主机101中运行的应用程序的写入请求。
控制器107通过固件104配置以检测非易失性存储媒体109中的不起作用存储器单元且阻止不起作用存储器单元的使用。举例来说,当从存储器单元检索数据或将数据编程到存储器单元中时,控制器107确定是否存在错误。响应于错误,控制器107可进一步确定存储器单元是否不再起作用和/或发生故障。如果存储器单元不再起作用,则控制器107可调整主机101用于存取存储装置103的逻辑地址与存储装置103用于存取非易失性存储媒体109的物理地址之间的映射,使得将逻辑地址映射到起作用的存储器单元的物理地址。
在正常服务寿命终止之后,控制器107和/或主机101可提供减小的存储容量以供用户使用。减小的存储容量映射到非易失性存储媒体109的起作用部分。不在减小的存储容量中的存储器单元用作预留存储器单元,其可经重新映射以替换减小的存储容量中的不起作用存储器单元。举例来说,当发现服务于减小的存储容量的存储器单元不起作用时,控制器107调整由主机101使用的逻辑地址与存储器单元在非易失性存储媒体109中的物理地址之间的映射,使得先前对应于主机所用的逻辑地址的不起作用存储器单元替换为根据预留分配的起作用存储器单元以服务于相同的逻辑地址。因此,主机101可继续使用所述逻辑地址。在一些情况下,服务选项108包含减小的存储容量的大小和/或预留存储器单元的大小。
替代地或组合地,控制器107可将不起作用存储器单元的地址映射到要从服务中退出的逻辑地址。控制器107向主机101通知不起作用逻辑地址,使得主机101可避免将数据存储在被识别为不起作用的逻辑地址中。控制器107可调整逻辑地址与物理地址之间的映射,使得不起作用逻辑地址被聚集为逻辑地址块以用于提高识别效率。举例来说,控制器107将不起作用逻辑地址映射到限定了主机所用的逻辑地址的地址空间的最高地址。因此,可通过最高起作用逻辑地址、最低不起作用逻辑地址或起作用逻辑地址的地址空间的大小来识别不起作用逻辑地址的区域。
当所选服务选项108要求实施数据冗余(例如,通过镜像备份、分割法和/或奇偶校验)时,控制器107或主机101可实施冗余操作。举例来说,RAID配置可在非易失性存储媒体109的不同部分或区段上实施以用于可容忍一定程度的数据丢失的数据冗余。数据冗余的实施可显著减小用于存储用户数据的存储容量。
存储装置103的控制器107可具有多个处理器121、…、123。处理器121、…、123中的一或多者可通过固件104配置以实施服务选项108。
图1中说明的主机101通过具有预定协议的通信信道与存储装置103通信。通常,主机101可以是具有一或多个中央处理单元(CPU)的计算机,计算机外围装置(例如存储装置103)可通过互连件(例如计算机总线(例如,外围组件互连(PCI)、扩展PCI(PCI-X)、PCI高速(PCIe))、通信部分和/或计算机网络连接到所述计算机。
计算机存储装置103可用于存储用于主机101的数据。通常,计算机存储装置的实例包含硬盘驱动器(HDD)、固态驱动器(SSD)、快闪存储器、动态随机存取存储器、磁带、网络附接存储装置等。存储装置103具有使用通信信道来实施与主机101的通信的主机接口105。举例来说,在一个实施例中,主机101与存储装置103之间的通信信道是PCIe总线;且主机101和存储装置103使用NVMe协议彼此通信。
在一些实施方案中,主机101与存储装置103之间的通信信道包含计算机网络,例如局域网、无线局域网、无线个人局域网、蜂窝通信网络、宽带高速常连无线通信连接(例如,当前一代或未来一代的移动网络链路);且主机101和存储装置103可经配置以使用类似于NVMe协议中那样的数据存储管理和使用命令来彼此通信。
存储装置103的控制器107运行固件104以响应于来自主机101的通信而执行操作。通常,固件是一种计算机程序,其可提供对工程化计算装置的控制、监测和数据操纵。
通常,存储装置103的非易失性存储媒体109可实施为集成电路中的存储器单元,或涂覆在刚性磁盘上的磁性材料。存储媒体109是非易失性的,因为不需要电力来维持存储在非易失性存储媒体109中的数据/信息,可在非易失性存储媒体109断电然后再次通电之后检索到所述数据/信息。可使用各种存储器/存储装置技术(例如基于NAND门的快闪存储器、相变存储器(PCM)、磁存储器(MRAM)、电阻式随机存取存储器和3D XPoint)来实施存储器单元,使得存储媒体109是非易失性的,且可在没有电力的情况下将其中存储的数据保留数天、数月和/或数年。
存储装置103包含用于存储控制器107所用的运行时数据和指令的易失性动态随机存取存储器(DRAM)106,以改善控制器107的计算性能和/或提供用于主机101与非易失性存储媒体109之间传送的数据的缓冲区。DRAM 106是易失性的,因为它需要电力来维持其中存储的数据/信息,当电力中断时,所述数据/信息立即或快速丢失。
易失性DRAM 106通常具有比非易失性存储媒体109低的时延,但会在电力消除时快速丢失其数据。因此,有利的是,使用易失性DRAM 106以临时存储在其当前计算任务中用于控制器107的指令和数据以改善性能。在一些情况下,易失性DRAM 106替换为在一些应用中使用比DRAM少的电力的易失性静态随机存取存储器(SRAM)。当非易失性存储媒体109具有与易失性DRAM 106相当的数据存取性能(例如,在时延、读取/写入速度方面)时,可消除易失性DRAM 106;且控制器107可通过针对指令和数据对非易失性存储媒体109进行操作而不是对易失性DRAM 106进行操作来执行计算。
举例来说,交叉点存储和存储器装置(例如,3D XPoint存储器)具有与易失性DRAM106相当的数据存取性能。交叉点存储器装置使用无晶体管存储器元件,所述无晶体管存储器元件中的每一者具有在一起堆叠成列的存储器单元和选择器。存储器元件列通过两个垂直线材层连接,其中一个层处于存储器元件列上方,且另一层处于存储器元件列下方。可个别地在两个层中的每一层上的一个线材的交叉点处选择每一存储器元件。交叉点存储器装置是快速且非易失性的,且可用作统一存储器池以供处理和存储。
在一些情况下,控制器107具有处理器内高速缓冲存储器,其数据存取性能优于易失性DRAM 106和/或非易失性存储媒体109。因此,优选在控制器107的计算操作期间将当前计算任务中使用的部分指令和数据高速缓存在控制器107的处理器内高速缓冲存储器中。在一些情况下,控制器107具有多个处理器,每个处理器具有其自身的处理器内高速缓冲存储器。
任选地,控制器107使用存储装置103中组织的数据和/或附加模块133执行数据密集的存储器内处理。举例来说,响应于来自主机101的请求,控制器107对存储在存储装置103中的一组数据执行实时分析,且将减小的数据集传达到主机101作为响应。举例来说,在一些应用中,存储装置103连接到实时传感器以存储传感器输入;且控制器107的处理器经配置以基于传感器输入执行机器学习和/或模式辨识,以支持至少部分通过存储装置103和/或主机101实施的人工智能(AI)系统。
在一些实施方案中,控制器107的处理器在计算机芯片制造中与存储器(例如,106或109)集成,以实现存储器中处理,且因此克服了冯纽曼(von Neumann)瓶颈(其因根据冯纽曼架构单独配置的处理器和存储器之间的数据移动的时延所致的处理量限制而限制了计算性能)。处理和存储器的集成增大了处理速度和存储器传送速率,且减小了时延和功耗。
存储装置103可用在各种计算系统中,例如云计算系统、边缘计算系统、雾计算系统和/或独立计算机。在云计算系统中,远程计算机服务器连接于网络中以存储、管理和处理数据。边缘计算系统通过在接近数据源的计算机网络边缘处执行数据处理来优化云计算,且因此减少与集中式服务器和/或数据存储的数据通信。雾计算系统使用一或多个最终用户装置或近用户边缘装置来存储数据,且因此减少或消除了在集中式数据仓库中存储数据的需求。
本文公开的本发明的至少一些实施例可使用由控制器107执行的计算机指令(例如固件104)实施。在一些情况下,硬件电路可用于实施固件104的至少一些功能。固件104可初始地存储在非易失性存储媒体109或另一非易失性装置中,且被加载到易失性DRAM 106和/或处理器内高速缓冲存储器中以由控制器107执行。
图2展示管理数据存储装置的服务操作的终止的方法。举例来说,图2的方法可实施于图1的系统中。
图2的方法包含:检测201存储装置103已达到正常操作的服务寿命尽头;向用户呈现203在服务寿命终止后使用存储装置103的多个选项;接收205选项108的用户选择;以及根据用户所选选项108,配置207存储装置103以用于服务寿命终止后的操作。
可基于检测到存储装置103的非易失性存储媒体109中大于阈值量的错误、非易失性存储媒体109中大于阈值数目的已达到其编程擦除(P/E)预算的存储器单元和/或非易失性存储媒体109中大于阈值数目的硬件故障来检测服务寿命的终止。
可在确定已达到正常操作的服务寿命尽头之前或之后呈现和/或选择选项。可在服务寿命终止之前或之后改变服务选项108。在一些情况下,存储装置103具有预配置服务选项108(例如,只读),所述预配置服务选项可由用户根据用户对存储装置103的服务寿命终止之后的替代使用模式的需求和/或要求来改变。
图3展示在服务终止后操作数据存储装置的详细方法。举例来说,图3的方法可结合图2的方法实施于图1的系统中。
图3的方法包含:接收221用户所选选项108以配置存储装置103在其正常操作的服务寿命终止之后的延长操作;将用户所选选项108存储223在存储装置103中;确定225已达到存储装置103的服务寿命尽头;识别227存储装置103中的不起作用存储器单元;以及报告229存储装置103减小的存储容量。
如果231用户所选选项108是用于只读操作的模式,则图3的方法还包含拒绝233存储装置103中的写入命令。
如果231用户所选选项108是用于最大化存储以用于可容忍数据错误和丢失的用途的模式,则图3的方法还包含接受239存储装置103中的读取和写入命令。
如果231用户所选选项108是用于平衡容量和可靠性的模式,则图3的方法还包含:分配235用于数据冗余的存储器单元;通过使用经分配存储器单元实施的冗余将数据存储237在存储装置中;以及接受239存储装置103中的读取和写入命令。
举例来说,计算机系统具有主机101和存储装置103。存储装置103具有:与主机101通信的主机接口105;控制器107;非易失性存储媒体109;以及含有控制器107可执行的指令的固件104。所述计算机系统可操作以接受和存储用户指定的服务选项108以及根据用户指定的服务选项108配置存储装置103在服务寿命终止后的操作。
存储装置103可基于检测到非易失性存储媒体109中大于阈值数目的错误、检测到非易失性存储媒体109中大于阈值数目的硬件故障和/或确定非易失性存储媒体109的大于阈值部分已达到预定数目的编程擦除周期来确定服务寿命的终止。
所述计算机系统提供用户界面102以呈现从中选择用户指定的服务选项的选项列表。用户指定的服务选项会替换默认选项或先前指定的服务选项。
存储装置103可预留非易失性存储媒体109的区段,且维持所述区段具有比所述区段外部的非易失性存储媒体更少的耗损。预留区段用于存储用户指定的服务选项108和/或其它数据以用于存储装置103在其正常服务寿命终止后的操作。
举例来说,列表可包含在存储装置103的服务寿命终止之后以只读模式操作存储装置103的选项、在存储装置103的服务寿命终止之后以数据冗余模式操作存储装置103的选项,和/或在存储装置103的服务寿命终止之后以最大化存储容量模式操作存储装置103的选项。
在一些情况下,用户可为非易失性存储媒体109的不同部分指定不同模式。举例来说,用户可请求非易失性存储媒体109的第一部分以只读模式运行、非易失性存储媒体109的第二部分以冗余模式操作以及非易失性存储媒体109的第三部分以最大化容量模式操作。
存储装置103检测非易失性存储媒体109中的不起作用或出现故障的存储器单元,且将主机所用的逻辑地址映射到非易失性存储媒体109的一组减小的存储器单元中,其中减小的组不包含检测到的不起作用存储器单元。
当用户指定的服务选项108需要数据冗余模式时,计算机系统分配非易失性存储媒体的一部分以应用镜像备份技术和/或分割法和奇偶校验技术。
当用户指定的服务选项108以最大化存储容量的模式操作存储装置103时,计算机经配置以根据一组规则监测计算机系统上的数据活动,所述规则将某些类型的数据活动识别为对数据错误或丢失敏感和/或将某些类型的数据活动识别为对数据错误或丢失不敏感。响应于检测到在存储装置103服务寿命终止后在其中存储对错误或丢失敏感的数据的请求,计算机系统生成警示给其用户且任选地阻止所述请求。
一个实施例的存储装置103是固态驱动器,其通过通信总线(例如根据非易失性存储器主机控制器接口规范的外围组件互连高速总线)耦合到主机101。
非暂时性计算机存储媒体可用于存储固件104的指令。当指令由计算机存储装置103的控制器107执行时,所述指令使控制器107执行上文所论述的方法。
在本公开中,各种功能和操作可被描述为由计算机指令执行或引起以简化描述。然而,所属领域的技术人员将认识到,此类表达的意图在于,所述功能因一或多个控制器或处理器(例如,微处理器)执行计算机指令而产生。替代地或组合地,所述功能和操作可在存在或不存在软件指令的情况下使用专用电路系统实施,例如使用专用集成电路(ASIC)或现场可编程门阵列(FPGA)来实施。可在无软件指令或结合软件指令的情况下使用硬接线电路系统实施实施例。因此,技术不限于硬件电路系统和软件的任何特定组合,也不限于由数据处理系统执行的指令的任何特定来源。
虽然一些实施例可在充分起作用的计算机和计算机系统中实施,但各种实施例能够分布为多种形式的计算产品,且不论用于实际上实现所述分布的机器或计算机可读媒体的特定类型如何都能够适用。
所公开的至少一些方面可至少部分体现于软件中。即,技术可在计算机系统或其它数据处理系统中响应于其处理器(例如微处理器或微控制器)而实行,从而执行包含在存储器(例如ROM、易失性RAM、非易失性存储器、高速缓存或远程存储装置)中的指令序列。
经执行以实施实施例的例程可实施为操作系统或特定应用程序、组件、程序、物件、模块或被称作“计算机程序”的指令序列的部分。计算机程序通常在各种时间在计算机中的各种存储器和存储装置中包括一或多个指令集,且所述指令集在由计算机中的一或多个处理器读取和执行时使所述计算机执行对进行涉及各个方面的要素来说必要的操作。
可使用有形的非暂时性计算机存储媒体来存储软件和数据,所述软件和数据在由数据处理系统执行时使所述系统执行各种方法。可执行软件和数据可存储在包含例如ROM、易失性RAM、非易失性存储器和/或高速缓存的各处。所述软件和/或数据的部分可存储在这些存储装置中的任何一者中。此外,数据和指令可从集中式服务器或对等网络获得。数据和指令的不同部分可在不同时间和在不同通信会话或相同通信会话中从不同集中式服务器和/或对等网络获得。可在执行应用程序之前获得全部数据和指令。替代地,可动态地、及时地在需要执行时获得数据和指令的部分。因此,并不要求数据和指令在特定时刻全部处于机器可读媒体上。
计算机可读存储媒体的实例包含但不限于可记录和不可记录类型的媒体,例如易失性和非易失性存储器装置、只读存储器(ROM)、随机存取存储器(RAM)、快闪存储器装置、软性和其它可装卸式磁盘、磁盘存储媒体和光学存储媒体(例如,光盘只读存储器(CDROM)、数字通用光盘(DVD)等)等等。指令可体现在暂时性媒体中,例如电学、光学、声学或其它形式的传播信号,例如载波、红外信号、数字信号等。暂时性媒体通常用于传输指令,但不被视为能够存储所述指令。
在各种实施例中,硬接线电路系统可与软件指令组合使用以实施技术。因此,技术既不限于硬件电路系统和软件的任何特定组合,也不限于由数据处理系统执行的指令的任何特定来源。
尽管图中的一些以特定次序说明数个操作,但可重新排序不依赖于次序的操作,且可组合或分解其它操作。虽然具体提及了一些重新排序或其它分组,但其它情况对于所属领域的技术人员来将显而易见,且因此不呈现详尽的替代方案列表。此外,应认识到,各阶段可用硬件、固件、软件或其任何组合来实施。
以上描述和图式是说明性的,且不应理解为限制性的。描述许多特定细节以提供透彻理解。然而,在某些情况下,未描述众所周知的或常规的细节以免混淆描述。本公开中对一个或一实施例的提及未必是指同一实施例;且此类提及意味着至少一个。
在前文说明书中,已参考本公开的具体示范性实施例描述了本公开。应显而易见的是,可在不脱离如所附权利要求书中阐述的更广精神和范围的情况下对本公开进行各种修改。因此,应在说明性意义上而非限制性意义上看待说明书和附图。

Claims (15)

1.一种计算机系统,其包括:
主机;以及
存储装置,其具有:
主机接口,其与所述主机通信;
控制器;
非易失性存储媒体;和
固件,其含有所述控制器可执行的指令;且
其中所述计算机系统可操作以接受和存储用户指定的服务选项且根据所述用户指定的服务选项配置所述存储装置在服务寿命终止后的操作。
2.根据权利要求1所述的计算机系统,其中所述存储装置基于检测到所述非易失性存储媒体中大于阈值数目的错误、基于检测到所述非易失性存储媒体中大于阈值数目的硬件故障或基于确定所述非易失性存储媒体的大于阈值部分已达到预定数目的编程擦除周期来确定所述服务寿命的所述终止。
3.根据权利要求2所述的计算机系统,其中所述计算机系统提供用户界面以呈现从中选择所述用户指定的服务选项的选项列表。
4.根据权利要求3所述的计算机系统,其中所述选项列表包含以只读模式操作所述存储装置的选项、以数据冗余模式操作所述存储装置的选项或以最大化存储容量模式操作所述存储装置的选项,或其任何组合。
5.根据权利要求4所述的计算机系统,其中所述存储装置检测所述非易失性存储媒体中的不起作用存储器单元且将所述主机所用的逻辑地址映射到所述非易失性存储媒体的减小的一组存储器单元,所述减小的一组不包含检测到的所述不起作用存储器单元中的任一者。
6.根据权利要求4所述的计算机系统,其中当所述用户指定的服务选项要求所述数据冗余模式时,所述计算机系统分配所述非易失性存储媒体的一部分以应用以下中的至少一项:
镜像备份技术;以及
分割法和奇偶校验技术。
7.根据权利要求4所述的计算机系统,其中当所述用户指定的服务选项以所述最大化存储容量模式操作所述存储装置时,所述计算机经配置以监测所述计算机系统上的数据活动,以检测存储对错误或丢失敏感的数据的请求且响应于所述请求而生成警示。
8.根据权利要求4所述的计算机系统,其中所述存储装置是固态驱动器。
9.根据权利要求8所述的计算机系统,其进一步包括:
通信总线,其耦合于所述主机与所述存储装置之间。
10.根据权利要求8所述的计算机系统,其中所述通信总线是外围组件互连高速总线。
11.根据权利要求10所述的计算机系统,其中所述主机根据非易失性存储器主机控制器接口规范与所述存储装置通信。
12.一种实施于存储装置中的方法,所述方法包括:
在耦合到主机的所述存储装置中接收用户指定的服务选项,所述存储装置具有:
主机接口,其与所述主机通信;
控制器;
非易失性存储媒体;和
固件,其含有所述控制器可执行的指令;且
在所述存储装置中存储所述用户指定的服务选项;
检测所述存储装置的服务寿命的终止;以及
根据所述用户指定的服务选项配置所述存储装置在所述服务寿命的所述终止后的操作。
13.根据权利要求12所述的方法,其进一步包括:
提供用户界面以呈现从中选择所述用户指定的服务选项的选项列表。
14.根据权利要求12所述的方法,其中所述用户指定的服务选项的存储替换了先前指定的服务选项。
15.根据权利要求12所述的方法,其进一步包括:
预留所述非易失性存储媒体的区段;以及
维持所述区段具有比所述区段外部的所述非易失性存储媒体更少的耗损;
其中所述用户指定的服务选项存储在所述区段中。
CN201980013545.7A 2018-02-15 2019-01-23 数据存储装置的服务寿命终止 Withdrawn CN111727422A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/898,120 2018-02-15
US15/898,120 US11288116B2 (en) 2018-02-15 2018-02-15 End of service life of data storage devices
PCT/US2019/014774 WO2019160657A1 (en) 2018-02-15 2019-01-23 End of service life of data storage devices

Publications (1)

Publication Number Publication Date
CN111727422A true CN111727422A (zh) 2020-09-29

Family

ID=67540535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980013545.7A Withdrawn CN111727422A (zh) 2018-02-15 2019-01-23 数据存储装置的服务寿命终止

Country Status (3)

Country Link
US (2) US11288116B2 (zh)
CN (1) CN111727422A (zh)
WO (1) WO2019160657A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11275510B2 (en) 2020-02-07 2022-03-15 Samsung Electronics Co., Ltd. Systems and methods for storage device block-level failure prediction
US11734093B2 (en) 2020-06-23 2023-08-22 Samsung Electronics Co., Ltd. Storage device block-level failure prediction-based data placement
US11520656B2 (en) 2021-03-19 2022-12-06 Micron Technology, Inc. Managing capacity reduction and recovery due to storage device failure
US11733884B2 (en) 2021-03-19 2023-08-22 Micron Technology, Inc. Managing storage reduction and reuse with failing multi-level memory cells
US11892909B2 (en) 2021-03-19 2024-02-06 Micron Technology, Inc. Managing capacity reduction due to storage device failure
US11650881B2 (en) * 2021-03-19 2023-05-16 Micron Technology, Inc. Managing storage reduction and reuse in the presence of storage device failures
US11307931B1 (en) 2021-03-19 2022-04-19 Micron Technology, Inc. Using zones to manage capacity reduction due to storage device failure
US11520500B2 (en) 2021-03-19 2022-12-06 Micron Technology, Inc. Managing capacity reduction when downshifting multi-level memory cells

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080198651A1 (en) * 2007-02-16 2008-08-21 Mosaid Technologies Incorporated Non-volatile memory with dynamic multi-mode operation
US20100122200A1 (en) * 2006-05-08 2010-05-13 Siliconsystems, Inc. Systems and methods for measuring the useful life of solid-state storage devices
US20120246403A1 (en) * 2011-03-25 2012-09-27 Dell Products, L.P. Write spike performance enhancement in hybrid storage systems
CN103890724A (zh) * 2011-08-19 2014-06-25 株式会社东芝 信息处理设备、用于控制信息处理设备的方法、存储控制工具的非临时记录介质、主机装置、存储性能评估工具的非临时记录介质、以及用于外部存储装置的性能评估方法
US20160342345A1 (en) * 2015-05-20 2016-11-24 Sandisk Enterprise Ip Llc Variable Bit Encoding Per NAND Flash Cell to Improve Device Endurance and Extend Life of Flash-Based Storage Devices
CN108139871A (zh) * 2015-10-05 2018-06-08 美光科技公司 具有基于存储器寿命周期的可变逻辑容量的固态存储装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7535759B2 (en) * 2004-06-04 2009-05-19 Micron Technology, Inc. Memory system with user configurable density/performance option
US7523013B2 (en) * 2006-05-15 2009-04-21 Sandisk Corporation Methods of end of life calculation for non-volatile memories
US7694188B2 (en) * 2007-02-05 2010-04-06 Microsoft Corporation Disk failure prevention and error correction
TWI359426B (en) 2007-09-17 2012-03-01 Asustek Comp Inc Method for recording parameter of memory and metho
US9146875B1 (en) * 2010-08-09 2015-09-29 Western Digital Technologies, Inc. Hybrid drive converting non-volatile semiconductor memory to read only based on life remaining
KR101801147B1 (ko) 2011-08-30 2017-11-27 삼성전자주식회사 데이터 신뢰성을 개선하는 데이터 관리 방법 및 그에 따른 데이터 저장 장치
US8868824B2 (en) * 2012-04-19 2014-10-21 Microsoft Corporation Solid-state drive management and control
US9251019B2 (en) * 2012-05-29 2016-02-02 SanDisk Technologies, Inc. Apparatus, system and method for managing solid-state retirement
US10372551B2 (en) 2013-03-15 2019-08-06 Netlist, Inc. Hybrid memory system with configurable error thresholds and failure analysis capability
US10114584B2 (en) 2014-12-22 2018-10-30 Sandisk Technologies Llc Removing read disturb signatures for memory analytics

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100122200A1 (en) * 2006-05-08 2010-05-13 Siliconsystems, Inc. Systems and methods for measuring the useful life of solid-state storage devices
US20080198651A1 (en) * 2007-02-16 2008-08-21 Mosaid Technologies Incorporated Non-volatile memory with dynamic multi-mode operation
US20120246403A1 (en) * 2011-03-25 2012-09-27 Dell Products, L.P. Write spike performance enhancement in hybrid storage systems
CN103890724A (zh) * 2011-08-19 2014-06-25 株式会社东芝 信息处理设备、用于控制信息处理设备的方法、存储控制工具的非临时记录介质、主机装置、存储性能评估工具的非临时记录介质、以及用于外部存储装置的性能评估方法
US20160342345A1 (en) * 2015-05-20 2016-11-24 Sandisk Enterprise Ip Llc Variable Bit Encoding Per NAND Flash Cell to Improve Device Endurance and Extend Life of Flash-Based Storage Devices
CN108139871A (zh) * 2015-10-05 2018-06-08 美光科技公司 具有基于存储器寿命周期的可变逻辑容量的固态存储装置

Also Published As

Publication number Publication date
WO2019160657A1 (en) 2019-08-22
US20190250980A1 (en) 2019-08-15
US20220214939A1 (en) 2022-07-07
US11288116B2 (en) 2022-03-29

Similar Documents

Publication Publication Date Title
US20220214939A1 (en) End of Service Life of Data Storage Devices
EP3800554B1 (en) Storage system managing metadata, host system controlling storage system, and storage system operating method
US11704210B2 (en) Custom error recovery in selected regions of a data storage device
US9606915B2 (en) Pool level garbage collection and wear leveling of solid state devices
US11854630B2 (en) Storage device that uses a host memory buffer and a memory management method including the same
US8489806B2 (en) Storage apparatus and method of managing data storage area
WO2021116778A1 (en) Zoned namespace management of non-volatile storage devices
RU2735407C2 (ru) Способ и устройство для записи сохраненных данных на носитель данных на основе флэш-памяти
US9811413B2 (en) Orphan block management in non-volatile memory devices
US11430540B2 (en) Defective memory unit screening in a memory system
JP6515752B2 (ja) ストレージ制御装置、制御方法、および制御プログラム
US20200293221A1 (en) Storage device and computing device including storage device
US20150199152A1 (en) Method of managing redundant array of independent disks (raid) groups in a solid state disk array
US20220129206A1 (en) Resource allocation in memory systems based on operation modes
CN115617581A (zh) 一种存储器故障处理方法及装置
US9569329B2 (en) Cache control device, control method therefor, storage apparatus, and storage medium
CN113811862A (zh) 存储驱动器的动态性能等级调整
JP7079878B2 (ja) 読み出し閾値管理及び較正
US10365836B1 (en) Electronic system with declustered data protection by parity based on reliability and method of operation thereof
CN113934360A (zh) 多存储设备生命周期管理系统
US11550487B2 (en) Data storage device and method for enabling endurance re-evaluation
CN113811846A (zh) 存储驱动器的动态每天写入调整
CN113811861A (zh) 存储驱动器的动态性能等级调整
JP2018156503A (ja) 制御装置、ディスクアレイ装置、制御方法及びプログラム

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20200929