CN1938670A - 双媒体存储装置 - Google Patents

双媒体存储装置 Download PDF

Info

Publication number
CN1938670A
CN1938670A CNA2004800424484A CN200480042448A CN1938670A CN 1938670 A CN1938670 A CN 1938670A CN A2004800424484 A CNA2004800424484 A CN A2004800424484A CN 200480042448 A CN200480042448 A CN 200480042448A CN 1938670 A CN1938670 A CN 1938670A
Authority
CN
China
Prior art keywords
data
storage device
mass storage
volatile mass
scope
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
CNA2004800424484A
Other languages
English (en)
Other versions
CN100487632C (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.)
Delphi International Operations Luxembourg SARL
Original Assignee
SanDisk Corp
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 SanDisk Corp filed Critical SanDisk Corp
Publication of CN1938670A publication Critical patent/CN1938670A/zh
Application granted granted Critical
Publication of CN100487632C publication Critical patent/CN100487632C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3268Power saving in hard disk drive
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Telephonic Communication Services (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种双媒体存储装置。两个独立的非易失性大容量存储装置组合成单个系统,其中所述两个独立的非易失性大容量存储装置中的一者与另一者相比具有更快的存取时间和更低的容量。依据各种条件(其可包括一个大容量存储装置为不可用或用于特定高速缓存方案),存储控制器可将数据流引入一个装置或另一个装置中。

Description

双媒体存储装置
技术领域
本发明一般来说涉及数据存储装置,且更具体地说,涉及双媒体存储装置。
背景技术
通用计算机需要大容量存储系统。与用于直接操纵数据的主存储器不同,大容量存储器用于保存数据。通常,程序存储在大容量存储器中,且当执行程序时,整个程序或程序的部分被复制到主存储器中。系统能够定位程序和其相关数据,并将所述程序和其相关数据从大容量存储装置转移到主存储器中的速度是构成系统的总速度的一部分。
常见的大容量存储装置包括软盘、硬盘、光盘和磁带。每个装置都具有优点和弱点两者,其可与容量、价格、速度和可携带性有关。
另外,例如快闪存储器的其它装置可提供非易失性存储器。快闪存储器是电可擦除可编程只读存储器(EEPROM)类型。尽管快闪存储器通常不如易失性主存储器快,但比硬盘快。
发明者先前已经探究了将独立装置合并成单个大容量存储系统的原理,以最大化每个装置的优点且最小化每个装置的弱点。举例来说,所述发明者又被确定是在1997年12月31日公开的PCT申请案“Memory Device”WO 97/50035的发明者,所述申请案出于所有目的以引用的方式并入本文中。所述PCT申请案描述了一种存储器系统,其包括存取相对较慢的大容量数据存储装置(例如硬盘)和存取相对较快的数据存储装置(例如快闪存储器)两者。在2000年1月18日颁予Daniel Auclair和Eliyahou Harari的美国专利第6,016,530号的″Mass Computer Storage System Having Both Solid State andRotating Disk Types of Memory"的美国专利中已探究了类似原理,其全文出于所有目的以引用的方式并入本文中。
通过组合非易失性闪存装置与非易失性硬盘,所得的大容量存储系统可大于其部分的总和。然而,这种存储器系统特定地限于其中每个数据扇区仅一个版本曾被保存的情形。数据扇区保存在高速存储器中或低速存取大容量数据存储装置中,使得逻辑地址空间等于高速存储器和低速存取大容量存储装置的容量的总和。
如今有很多商业上成功的非易失性存储器产品,其利用形成于一个或一个以上集成电路芯片上的闪存单元阵列。通常(但非必然)位于独立的集成电路芯片上的存储器控制器控制存储器阵列的操作。此类控制器通常包括微处理器、一些非易失性只读存储器(ROM)、易失性随机存取存储器(RAM)和一个或一个以上专用电路,例如在编程和读取操作期间当数据通过控制器时,从数据中计算误差校正码(ECC)的一种专用电路。
典型闪存阵列的存储器单元被划分为一起擦除的离散单元区块。即,擦除区块为擦除单位—可同时擦除的最小数目的单元。每个擦除区块都通常存储一个或一个以上数据页,所述页在不同子阵列或平面中并行编程或读取。每个平面都通常存储一个或一个以上数据扇区,所述扇区的大小由主机系统来界定。实例扇区包括512字节的用户数据,接着为用磁盘驱动器建立的标准。此类存储器通常在每个擦除区块内配置有16、32或更多页,且每个页存储一个或仅几个主机数据扇区。
为了增加编程和读取操作期间的并行度,通常将阵列划分为子阵列,通常称为平面。每个平面可含有其自身的数据寄存器和其它电路以允许并行操作,使得数据扇区可同时编程到所有平面或从所有平面读取。可将单个集成电路上的阵列物理地划分为平面,或每个平面可从独立的一个或一个以上集成电路芯片中形成。这种存储器实施的实例在1998年8月25日颁予Lee等人的美国专利第5,798,968号“Plane decode/virtual sectorarchitecture”和1999年3月30日颁予Lee等人的美国专利第5,890,192号“Concurrentwrite of multiple chunks of data into multiple subarrays of flash EEPROM”中具有描述,其两者的全文出于所有目的以引用的方式并入本文中。
为了进一步有效地管理存储器,可将擦除区块链接到一起以形成虚拟区块或元区块。即,每个元区块都被界定为包括来自每个平面的一个擦除区块。在2002年7月25日的公开案WO02/058074,国际专利申请案“Partial Block Data Programming AndReading Operations In A Non-Volatile Memory”中描述元区块的使用,其全文出于所有目的以引用的方式并入本文中。元区块由主机逻辑区块地址识别为用于编程和读取数据的目标。类似地,元区块的所有擦除区块都一起擦除。由这些大区块和/或元区块操作的存储器系统中的控制器执行很多功能,包括从主机接收到的逻辑区块地址(LBA)与存储器单元阵列内的物理区块数目(PBN)之间的转换。区块内的个别页通常由区块地址内的偏移来识别。
这种类型的快闪存储器系统通常用作便携式应用中的大容量存储装置。快闪存储器装置经由使用例如ATA的协议的逻辑接口与主机系统通信,且通常采用可移除卡的形式。一些商业上可购买的卡为CompactFlashTM(CF)卡、多媒体卡(MMC)、安全数字(SD)卡、智能媒体卡、个人标记(P-Tag)和记忆棒卡(Memory Stick card)。主机包括个人计算机、笔记本计算机、个人数字助理(PDA)、各种数据通信系统和类似类型的设备。除了存储卡实施方案之外,此类型的存储器可以替代方式包含在各种类型的主机系统中。
过去,快闪存储器已经用于各种数据高速缓存功能,用于计算机的BIOS的存储,或用作大容量存储装置的扩展(如在上文的PCT应用中)。其已经在硬盘装置内用于高速缓存写入或读取数据。举例来说,1996年12月17日颁予Lasker等人的美国专利第5,586,291号“Disk controller with volatile and non-volatile cache memories”(其全文出于所有目的以引用的方式并入本文中)描述了将非易失性存储器用作硬盘的写入高速缓存器,数据反映在充当读取高速缓存器的易失性存储器中。1997年6月3日颁予Ramakrishnan等人的美国专利5,636,355“Disk cache management techniques usingnon-volatile storage”和1996年7月30日颁予Mattson等人的美国专利5,542,066“Destaging modified data blocks from cache memory”(其两者全文出于所有目的以引用的方式并入本文中)也描述了将非易失性存储器用作硬盘的写入高速缓存器,和用于将数据从高速缓存器移动到硬盘的清除或降级算法。在作为磁盘高速缓存器的非易失性存储器的已知应用中,由硬盘驱动器中的逻辑地址识别的数据临时映射到非易失性存储器中的物理位置。人们正不断地努力改进大容量存储装置。
发明内容
本发明提供一种数据存储系统,其可包括两个非易失性大容量存储装置和存储控制器。与第一非易失性大容量存储装置相比,第二非易失性大容量存储装置具有较快的存取时间和较低的容量。所述两个非易失性大容量存储装置具有重叠的地址范围。换句话说,任一条数据都可同时在两个大容量存储装置上可用。
一方面,可将第一非易失性大容量存储装置置于可用状态和不可用状态。当第一大容量存储装置处于其不可用状态时,存储控制器仅存取第二大容量存储装置。不可用状态可表示装置物理地不可用(例如,被移除)或仅仅是存储控制器不会对其进行存取,直到其被放回可用状态为止。当第一大容量存储装置处于可用状态时,存储控制器可操作以对第一大容量存储装置或第二大容量存储装置进行存取。
另一方面,存储控制器将输入数据引入第一非易失性大容量存储装置或第二非易失性大容量存储装置中。如果数据被引入第二大容量存储装置中,那么稍后将数据从第二大容量存储装置复制到第一大容量存储装置中。存储控制器的对将输入数据引入到哪个非易失性大容量存储装置中的选择至少部分地取决于第二非易失性大容量存储装置中尚未复制到第一非易失性存储装置中的数据的量。
另一方面,存储控制器用存储在第二非易失性大容量存储装置中的数据,或如果第二非易失性大容量存储装置中不具有所请求的数据,那么用存储在第一非易失性大容量存储装置中的数据来满足外部数据请求。
从说明(以实例方式)本发明原理的结合附图的以下详细描述中,本发明的其它方面和优势将变得明显。
附图说明
最好能参考结合附图的以下描述来理解本发明,其中:
图1A描绘可利用本发明的示范性通用计算机系统;
图1B描绘图1A的通用计算机系统的抽象表示;
图2A描绘根据本发明的示范性实施例的改进的大容量存储装置;
图2B描绘根据本发明的另一示范性实施例的改进的大容量存储装置;
图3描绘环缓冲区的程式化表示;
图4A描绘说明系统性能随着闪存容量增加而受益的图表;和
图4B描绘说明系统性能随着改进的大容量存储装置的利用减少而受益的图表。
应了解,在图式中,相同参考数字表示相同结构元件。同样,应了解,图中的描绘不一定是按比例的。
具体实施方式
在以下描述中,陈述大量具体细节以提供对本发明的全面理解。然而,所属领域的技术人员应了解,可在不具有这些具体细节中的一些或所有的情况下实践本发明。在其它情况下,为了避免不必要地使本发明含糊不清,没有详细描述众所周知的处理步骤。
本发明一般通过组合两个独立的大容量存储装置(其每个都具有其自身的优点和缺点),来改进通常还称为辅助存储器的现有大容量存储装置。例如,当快闪大容量存储装置(“闪存系统”)与硬盘驱动器相比时,快闪存储器系统更抗震且更适合便携式应用,因为快闪存储器系统可在不移动部件的情况下操作。尽管与硬盘驱动器相比,快闪存储器系统具有较快的存取时间,但快闪存储器系统通常不具有等价硬盘驱动器的存储容量。另外,快闪存储器系统通常要求执行定期的垃圾收集操作,这使快闪存储器系统在一段时间内变得不可存取。本发明的改进的大容量存储装置使用快闪存储器系统或硬盘驱动器,视哪个装置更适合特定情况而定。如所属领域的技术人员将了解,任何两个非易失性大容量存储装置都可用于本发明中,只要其中的一者比另一者具有更快的存取时间和更低的容量。
可用改进的大容量存储装置来获得几个不同的优势。在一个实施例中,可为快速系统导入和快速应用启动提供改进的大容量存储装置。主机系统在其导入过程期间所需要的信息,例如操作系统和配置文件,可存储在快闪存储器系统中,其中第二复制视情况存储在硬盘驱动器中。在所述系统中,快闪存储器系统可用作非易失性读取高速缓存器,且其快速随机读取存取特性允许快得多的系统启动。此信息最初可识别为频繁读取的信息,且可在其从硬盘驱动器的初始存取期间复制到快闪存储器系统。可保护此类信息以防止其被使用大容量存储装置中的快闪存储器系统的其它应用覆写。可以同样的方式来处理应用程序软件文件以提供应用的快速启动。
在另一实施例中,改进的大容量存储装置可充当低功率存储装置。通过将最近存取的信息的副本连同最近写入的信息的副本一起保存在快闪存储器系统中,改进的大容量存储装置可将快闪存储器系统用作读取/写入高速缓存器。接着,装置可使磁性硬盘停转以减少便携式应用中的功率,并利用快闪存储器的低功率特性,同时通过快闪存储器中的高速缓存命中率来保持对所需信息的快速响应的高概率。
类似地,改进的大容量存储装置还可提供作为耐震存储装置的优势。当在具有高机械震动风险的环境中时,使磁性硬盘停转将利用半导体存储器的高耐震性,同时保持对存储在快闪存储器系统中的信息的操作能力。
改进的大容量存储装置的另一潜在优势是其提供具有短期备份的高度可靠存储装置的能力。如果快闪存储器系统将最近写入的信息保存在作为写入高速缓存器的快闪存储器系统中,那么即使在信息转移到硬盘驱动器后,信息也保存在快闪存储器系统中。如果信息尽可能长时间地保存,且仅在需要空间时被覆写,那么写入高速缓存器提供最近写入的信息的第二副本的安全性。因此,改进的大容量存储装置可导致可靠的存储装置,其使用高度耐震的半导体存储器来保护尚未备份的最近写入的信息不会由于例如磁盘碰撞的机械故障而产生损失。
图1A描绘可利用本发明的示范性通用计算机系统100。组件包括计算机105、例如鼠标110和键盘115的各种输入装置、和例如监视器120和打印机125的各种输出装置。
图1B描绘图1A的计算机系统100的抽象表示,图1A描绘计算机系统100的基本组件。单个组件130表示用于允许用户与计算机系统100交互的输入装置,例如鼠标和键盘。类似地,单个组件135表示用于显示计算机系统100已完成的内容的输出装置,例如监视器和打印机。计算机系统100的核心为中央处理单元(CPU)140,且为执行指令的组件。主存储器145通常为易失性,且向CPU 140提供要执行的指令和要由所述指令操纵的数据两者。这些组件130、135、140和145是所属领域中众所周知的。
改进的大容量存储装置150允许计算机系统100永久地保存大量数据。组件130、135、140、145和150能够使信息经由主机总线155彼此交换。
图2A描绘根据本发明示范性实施例的改进的大容量存储装置150A。两个大容量存储装置,快闪存储器系统205和硬盘驱动器210并行连接。快闪存储器系统205包括快闪存储器阵列215和闪存控制器220。硬盘驱动器210包括磁性硬盘225和磁盘控制器230。控制器220和230中的每一者负责各个存储器类型特定的操作。举例来说,闪存控制器220控制数据扇区的所有逻辑到物理映射和所有的快闪存储器管理,使得闪存控制器220与快闪存储器阵列215之间的接口250是物理接口。磁盘控制器230管理用于读取和写入的磁性硬盘225的操作。控制器220和230两者经由逻辑接口260和265连接到路由器235。
在另一实施例中,控制器220和230连同路由器235的功能合并在集成控制器装置中。此装置还可包括存储控制器245和主机接口240。然而,此类配置将要求产生新的控制器单元。因此,控制器220和230中的任一者或两者将完全不包括在存储器装置中。虽然此类配置将要求开发新的控制电路,但其还可减少所需总组件的数目。
在图2A中,主机接口240和存储控制器245两者都定位在路由器235的上游,这允许数据和控制信息在主机接口240与磁盘控制器230或闪存控制器220之间以任一方向通过。另外,路由器235可控制数据在磁盘控制器230与闪存控制器220之间以任一方向转移。此类转移可作为独立操作来完成。或者,此类转移可结合主机接口240与大容量存储控制器220或230中的一者之间任一方向上的数据转移来完成。路由器235可为并入控制逻辑电路来用于此类数据转移。
主机接口240提供一通至主机总线155的直接接口,且可提供对主机总线155上所用特定协议的所有支持。由主机接口240、磁盘控制器230和磁性硬盘225形成的子系统,以及由主机接口240、闪存控制器220和快闪存储器阵列215形成的子系统两者形成完整的大容量数据存储系统。路由器235可在不具有来自主机接口240的修改的情况下传递数据和控制信号,或可建立替代协议来用于与控制器220和230的通信。路由器235与大容量存储控制器220或230之间的接口260和265可以是一例如ATA的标准协议,或可以是针对改进的大容量存储装置150而定义的专用接口。接口260和265通常是对快闪存储器系统205和硬盘驱动器210中的个别数据扇区提供随机读取和写入存取的逻辑接口,且不依赖于各个存储媒体的物理特性。
另外,闪存控制器220还可支持接口260上的专用命令或操作,以对快闪存储器阵列215的保留区域提供直接存取,所述保留区域可用于存储由存储控制器245使用的表和信息日志。或者,存储控制器245可具有其自身的非易失性存储器来用于此类表和日志。
存储控制器245是智能控制单元,其指挥主机接口240与大容量存储控制器220和230之间的信息转移。存储控制器245协调将数据存储到快闪存储器系统205或硬盘驱动器210或从快闪存储器系统205或硬盘驱动器210中读取数据。存储控制器245维持存储在快闪存储器阵列215以及(在一些实施例中)磁性硬盘225中的信息的地址表。
在改进的大容量存储装置150的很多组件(包括主机接口240、路由器235、闪存控制器220或磁盘控制器230)中,易失性存储器可充当缓冲器或高速缓冲存储器。可调度单个易失性存储器以在各个组件中操作,或独立的易失性存储器可专用于每个组件。
图2B描绘改进的大容量存储装置的替代实施例150B。逻辑接口260被去除且由直接通至快闪存储器阵列280的物理接口275代替。快闪存储器阵列280的直接控制由集成控制器285实施,集成控制器285可执行存储控制器245和路由器235两者的功能。在此实施例中,不需要快闪存储器控制器220的功能,且快闪存储器阵列280不形成逻辑数据存储装置的一部分,而是直接用作一物理存储。其尤其适合数据流的临时存储。
图3描绘采用环缓冲区300形式的组织快闪存储器阵列280中的数据流中的扇区存储的一种方式。用于写入数据扇区的当前位置由写入指针305界定,在图3中,写入指针305顺时针移动,以无限循环地穿过地址空间。地址空间由元区块(例如310和315)界定,元区块以预设次序或以写入指针305从完整的元区块移动到新的擦除元区块时动态确定的次序来链接(例如320)。类似地,在图3中,擦除指针325顺时针移动,以无限循环穿过地址空间。由擦除指针325识别的元区块以确保已擦除元区块的小集区维持在写入指针305的前面的速率被擦除,用于新的数据扇区的存储。已擦除区块含有环缓冲区300中最近最少写入的数据。
改进的大容量存储装置150可通过将快闪存储器系统205用作存储从磁性硬盘驱动器210读取的所有数据的副本的读取高速缓存器来利用其双重性质。快闪存储器系统205可将其逻辑地址空间的区域分配为读取高速缓存器,或可将其逻辑地址空间完全专用于所述功能。用于将经高速缓存的数据存储在逻辑地址空间的识别区域内的位置可由界定循环缓冲区的前移写入地址指针来确定,或可以是磁性硬盘驱动器210内的数据的逻辑地址的确定性功能。
或者,在大容量存储装置150B中,环缓冲区300可用于将从磁性硬盘驱动器210中读取的所有数据的副本存储在由写入指针界定的位置处。因此,最近读取的数据总是出现在环缓冲区300中,同时当由擦除指针识别出与较旧数据相关联的元区块时,较旧数据被擦除。
或者,从磁盘驱动器中读取的数据可选择性地复制到读取高速缓存器。这可基于读取数据的频率、被读取文件的性质或一些其它标准。
在另一实施例中,改进的大容量存储装置150可在其快闪存储器系统205充当写入高速缓存器的情况下操作。类似于先前对读取高速缓存器所描述的一者的循环缓冲区可用于存储从主机总线155与其对硬盘驱动器210的写入并行地供应的数据。以此方式,输入数据可存储在改进的大容量存储装置150中,从而允许系统100与另外如果将唯一的大容量存储装置作为单个磁性硬盘驱动器210时的可能的情况相比,更快地完成其写入操作。当数据停止在主机系统总线155上发送时,CPU 140可起作用,如同数据已到达其最终目标,尽管改进的大容量存储装置150仍然需要完成从快闪存储器系统205到磁性硬盘驱动器210的数据转移。所述转移将通常发生在大容量存储装置150不另外使用时。然而,如果快闪存储器系统205具有在单个循环期间读取和写入的能力(例如,通过使用双端口存储器结构),转移可发生在写入到快闪存储器系统205期间。
系统性能上的总增加取决于快闪存储器系统205的容量和对改进的大容量存储装置150的存取频繁程度。尚未具备大容量存储装置资格的小容量闪存将仅为快闪高速缓存器的等效物,且不会大大改进系统性能。然而,如图4A中所示,当闪存变得越大时,系统性能受利变得越明显。快闪存储器系统205越大,在活动的突发期间可存储更多的数据。
类似地,图4B绘示随着更多地利用改进的大容量存储装置150,系统性能降级。如果恒定地存取大容量存储装置150,那么不会有足够的时间来将数据从快闪存储器系统205转移到硬盘驱动器210。最终,大容量存储装置150必须停止使用快闪存储器系统205并专门使用硬盘驱动器210。如果这种情况发生,那么系统性能将与仅使用硬盘驱动器210的系统相同。
如所属领域的技术人员将了解,改进的大容量存储装置150应具有错误处理例程,其使数据能够被引入硬盘驱动器210,同时绕过快闪存储器系统205。如果快闪存储器系统205变满,那么改进的大容量存储装置150不能简单地覆写快闪存储器系统205,直到数据成功地转移到硬盘驱动器210为止。如果快闪存储器系统205暂时不可用(例如快闪存储器系统205正从事垃圾收集过程),那么也可利用相同的错误处理例程。
写入高速缓存器可独立于读取高速缓存器而存在,占用快闪存储器系统205的逻辑地址空间的一部分或整个逻辑地址空间,或写入高速缓存器可与读取高速缓存器共存。
改进的大容量存储装置150可操作的另一方式是通过在某些情形下专门地使用快闪存储器系统205。举例来说,在一些情况下,可能希望系统进入一其中更易受震动影响的硬盘驱动器210变得不可用的便携模式。不可用可能仅仅表示未将数据发送到硬盘驱动器210;关闭硬盘驱动器210以节约功率;或从改进的大容量存储装置150中物理移除硬盘驱动器210。如果(例如)硬盘驱动器210是便携式装置的对接站(docking station)的一部分,那么从对接站中移除便携式装置将使硬盘驱动器210不可用。
一旦硬盘驱动器210再次变得不可用,存储控制器245就将促使两个大容量存储装置205和210彼此同步。在便携式装置的情况下,一旦将便携式装置放回其对接站中,硬盘驱动器210就将变得可用。在其它情况下,因为运动检测电路确定系统不再有经历震动的危险,所以硬盘驱动器210可能变得可用。在其它情况下,用户可通过手动地改变系统的模式,或可将系统插入电源插座(electrical outlet)中,来促使系统将硬盘驱动器210置于可用状态下。在其它情况下,系统可凭自身使硬盘驱动器210重新有效,以释放快闪存储器系统205中的空间。在所有情况下,由于在用新的数据进行覆写之前数据一直存在于快闪存储器系统205中,所以快闪存储器系统205可充当临时备份。
读取高速缓存、写入高速缓存和专门的存储都可并入同一装置中。在每种情形下,快闪存储器系统205的逻辑地址空间都是硬盘驱动器210的逻辑地址空间的子集。换句话说,当数据请求来自主机总线155时,所述数据请求与单个逻辑地址相关。与逻辑地址对应的最近的数据可存在于快闪存储器系统205、硬盘驱动器210或两者中。
在一些实施例中,专用于某一操作的快闪存储器系统的部分可根据情形而改变。举例来说,如果硬盘驱动器210在独占式存储模式期间物理上不可用,那么在所述模式期间,不需要将任何快闪存储器系统205专用于高速缓存操作。一旦被对接,系统就可恢复使用快闪存储器系统205来用于高速缓存目的(读取、写入或两者)。
尽管已经以本发明的目前预期的最佳模式描述了本发明,但显然,其易受大量修改、操作模式和实施例的影响,所有这些都在所属领域的技术人员的能力和技术内,且不进行进一步的发明性活动。举例来说,如果某些程序更适合永久地存储在快闪存储器系统中,那么不会有对应的逻辑地址存储在硬盘驱动器中以用于那些程序。此外,其它大容量存储装置可使用除闪存或硬盘驱动器之外的技术,且可包括电池供电的RAM、光盘、奥弗辛斯基电效应统一存储器(ovonics unified memory,OUM)、磁性RAM(MRAM)、铁电聚合物、铁电RAM(FeRAM)、绝缘体上覆硅(SoI)等等。因此,希望在权利要求书中陈述由专利证书保护的内容,且包括属于权利要求书的精神和范围的所有改变和修改。

Claims (18)

1.一种数据存储系统,其包含:
一第一非易失性大容量存储装置,其可被置于一可用状态和一不可用状态下,且具有一第一范围的逻辑地址;
一第二非易失性大容量存储装置,其与所述第一非易失性大容量存储装置相比具有一更快的存取时间和一更低的容量,且具有一第二范围的逻辑地址;和
一存储控制器,在所述第一非易失性大容量存储装置处于所述不可用状态时,所述存储控制器可存取所述第二非易失性大容量存储装置内的数据,且在所述第一非易失性大容量存储装置处于所述可用状态时,可操作来存取所述第一和第二非易失性大容量存储装置两者内的数据;
其中所述第一范围的逻辑地址和所述第二范围的逻辑地址彼此重叠。
2.根据权利要求1所述的数据存储系统,其中当所述数据存储系统进入一便携模式时,启动所述不可用状态。
3.根据权利要求2所述的数据存储系统,其中用运动检测电路来确定所述便携模式。
4.根据权利要求1所述的数据存储系统,其中所述第二范围的逻辑地址的一部分不与所述第一范围的地址重叠,藉此所述第二范围的地址的所述部分含有同样不驻存在所述第一非易失性大容量存储装置上的数据。
5.根据权利要求1所述的数据存储系统,其中在所述第一非易失性大容量存储装置从所述不可用状态转变为所述可用状态后,所述存储控制器使所述第二非易失性大容量存储装置上的所述第二范围的地址中含有的数据与所述第一非易失性大容量存储装置上的所述第一范围的地址同步。
6.根据权利要求1所述的数据存储系统,其中当所述第一非易失性大容量存储装置处于所述可用状态时,所述第二非易失性大容量存储装置能够充当所述第一非易失性大容量存储装置的一高速缓存器。
7.根据权利要求1所述的数据存储系统,其中所述第一非易失性大容量存储装置使用一磁性硬盘来存储数据,且所述第二非易失性大容量存储装置使用一快闪存储器阵列来存储数据。
8.一种数据存储系统,其包含:
一第一非易失性大容量存储装置,其具有一第一范围的逻辑地址;
一第二非易失性大容量存储装置,其与所述第一非易失性大容量存储装置相比具有一更快的存取时间和一更低的容量,且具有一第二范围的逻辑地址,所述第一范围的逻辑地址与所述第二范围的逻辑地址彼此重叠;和
一存储控制器,其将输入数据引入所述第一非易失性大容量存储装置或所述第二非易失性大容量存储装置中;
其中在数据已被引入所述第二非易失性大容量存储装置中后,从所述第二非易失性大容量存储装置中将所述数据复制到所述第一非易失性大容量存储装置中;且
其中,所述存储控制器对将输入数据引入哪个非易失性大容量存储装置中的选择至少部分取决于所述第二非易失性大容量存储装置中尚未复制到所述第一非易失性存储装置中的数据的量。
9.根据权利要求8所述的数据存储系统,其中在不活动时期期间,从所述第二非易失性大容量存储装置中将所述数据复制到所述第一非易失性大容量存储装置中。
10.根据权利要求8所述的数据存储系统,其中:
所述第二非易失性大容量存储装置经历不可存取的时期;且
当所述第二非易失性大容量存储装置处于一不可存取的时期时,所述存储控制器将数据引入所述第一非易失性大容量存储装置中。
11.根据权利要求10所述的数据存储系统,其中所述不可存取的时期至少部分由垃圾收集操作引起。
12.根据权利要求10所述的数据存储系统,其中所述第二非易失性大容量存储装置中的数据存储在一循环缓冲布置中。
13.根据权利要求8所述的数据存储系统,其中所述第一非易失性大容量存储装置使用一磁性硬盘来存储数据,且所述第二非易失性大容量存储装置使用一快闪存储器阵列来存储数据。
14.一种数据存储系统,其包含:
一第一非易失性大容量存储装置,其具有一第一范围的逻辑地址;
一第二非易失性大容量存储装置,其与所述第一存储装置相比具有一更快的存取时间和一更低的容量,且具有一第二范围的逻辑地址,所述第一范围的逻辑地址与所述第二范围的逻辑地址彼此重叠;和
一存储控制器,其用存储在所述第二非易失性大容量存储装置中的数据来满足数据请求,或如果所述第二非易失性大容量存储装置中不具有所请求的数据的话,那么用存储在所述第一非易失性大容量存储装置中的数据来满足数据请求。
15.根据权利要求14所述的数据存储系统,其中根据读取数据的频率来将所述数据从所述第一非易失性大容量存储装置复制到所述第二非易失性大容量存储装置。
16.根据权利要求14所述的数据存储系统,其中根据被读取的数据的性质来将所述数据从所述第一非易失性大容量存储装置复制到所述第二非易失性大容量存储装置。
17.根据权利要求14所述的数据存储系统,其中所述第二非易失性大容量存储装置中的数据存储在一循环缓冲布置中。
18.根据权利要求14所述的数据存储系统,其中所述第一非易失性大容量存储装置使用一磁性硬盘来存储数据,且所述第二非易失性大容量存储装置使用一快闪存储器阵列来存储数据。
CNB2004800424484A 2004-02-04 2004-12-28 双媒体存储装置 Active CN100487632C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/772,855 2004-02-04
US10/772,855 US7136973B2 (en) 2004-02-04 2004-02-04 Dual media storage device

Publications (2)

Publication Number Publication Date
CN1938670A true CN1938670A (zh) 2007-03-28
CN100487632C CN100487632C (zh) 2009-05-13

Family

ID=34808629

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800424484A Active CN100487632C (zh) 2004-02-04 2004-12-28 双媒体存储装置

Country Status (9)

Country Link
US (2) US7136973B2 (zh)
EP (2) EP1711883A1 (zh)
JP (2) JP5129484B2 (zh)
KR (1) KR101105955B1 (zh)
CN (1) CN100487632C (zh)
AU (1) AU2005200321A1 (zh)
CA (1) CA2492921C (zh)
TW (1) TWI380171B (zh)
WO (1) WO2005081093A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009121307A1 (zh) * 2008-04-02 2009-10-08 深圳市朗科科技股份有限公司 计算机及数据存储方法
CN101901190A (zh) * 2009-03-19 2010-12-01 三星电子株式会社 电子装置、用于管理电子装置中的存储器的设备和方法
CN102598141A (zh) * 2009-06-10 2012-07-18 美光科技公司 用于减少存储器阵列中的读取等待时间的存储器操作暂停
WO2012152075A1 (zh) * 2011-10-24 2012-11-15 中兴通讯股份有限公司 一种处理来自计算机的操作指令的方法和接口设备
CN105934747A (zh) * 2013-11-07 2016-09-07 奈特力斯股份有限公司 混合内存模块以及操作混合内存模块的系统和方法
CN106293635A (zh) * 2015-05-13 2017-01-04 华为技术有限公司 指令块处理方法及装置
US11182284B2 (en) 2013-11-07 2021-11-23 Netlist, Inc. Memory module having volatile and non-volatile memory subsystems and method of operation

Families Citing this family (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7108975B2 (en) * 2001-09-21 2006-09-19 Regents Of The University Of Michigan Atlastin
US20050216679A1 (en) * 2004-03-25 2005-09-29 Itzhak Levy Hard disk automatic hardware-based scheduled archiving
US20070094444A1 (en) * 2004-06-10 2007-04-26 Sehat Sutardja System with high power and low power processors and thread transfer
US7730335B2 (en) 2004-06-10 2010-06-01 Marvell World Trade Ltd. Low power computer with main and auxiliary processors
US20070083785A1 (en) * 2004-06-10 2007-04-12 Sehat Sutardja System with high power and low power processors and thread transfer
US7702848B2 (en) * 2004-06-10 2010-04-20 Marvell World Trade Ltd. Adaptive storage system including hard disk drive with flash interface
US7788427B1 (en) 2005-05-05 2010-08-31 Marvell International Ltd. Flash memory interface for disk drive
US20080140921A1 (en) * 2004-06-10 2008-06-12 Sehat Sutardja Externally removable non-volatile semiconductor memory module for hard disk drives
US7634615B2 (en) * 2004-06-10 2009-12-15 Marvell World Trade Ltd. Adaptive storage system
US7617359B2 (en) * 2004-06-10 2009-11-10 Marvell World Trade Ltd. Adaptive storage system including hard disk drive with flash interface
JP4311287B2 (ja) * 2004-06-25 2009-08-12 ソニー株式会社 ブートシステム及びブート方法及びこのブート方法を用いたデータ処理装置
US7472222B2 (en) * 2004-10-12 2008-12-30 Hitachi Global Storage Technologies Netherlands B.V. HDD having both DRAM and flash memory
JP2006146460A (ja) * 2004-11-18 2006-06-08 Sony Corp 通信システム、記憶装置、並びに制御装置
CN100456265C (zh) * 2004-12-14 2009-01-28 国际商业机器公司 移动计算机系统以及操作移动计算机系统的方法
US7933172B2 (en) * 2005-01-10 2011-04-26 Hewlett-Packard Development Company, L.P. Method for playing contents using master and slave optical disc
US9104315B2 (en) 2005-02-04 2015-08-11 Sandisk Technologies Inc. Systems and methods for a mass data storage system having a file-based interface to a host and a non-file-based interface to secondary storage
US7610445B1 (en) * 2005-07-18 2009-10-27 Palm, Inc. System and method for improving data integrity and memory performance using non-volatile media
JP5008845B2 (ja) * 2005-09-01 2012-08-22 株式会社日立製作所 ストレージシステムとストレージ装置及びその制御方法
US7631245B2 (en) 2005-09-26 2009-12-08 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US8291295B2 (en) 2005-09-26 2012-10-16 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US7634585B2 (en) 2005-11-04 2009-12-15 Sandisk Corporation In-line cache using nonvolatile memory between host and disk device
US20070106842A1 (en) * 2005-11-04 2007-05-10 Conley Kevin M Enhanced first level storage caching methods using nonvolatile memory
US7793068B2 (en) 2005-12-21 2010-09-07 Sandisk Corporation Dual mode access for non-volatile storage devices
US7747837B2 (en) 2005-12-21 2010-06-29 Sandisk Corporation Method and system for accessing non-volatile storage devices
US7769978B2 (en) 2005-12-21 2010-08-03 Sandisk Corporation Method and system for accessing non-volatile storage devices
KR100755702B1 (ko) * 2005-12-27 2007-09-05 삼성전자주식회사 비휘발성 메모리가 캐쉬로 사용되는 저장 장치 및 그 동작방법
US20070147115A1 (en) * 2005-12-28 2007-06-28 Fong-Long Lin Unified memory and controller
US7519754B2 (en) * 2005-12-28 2009-04-14 Silicon Storage Technology, Inc. Hard disk drive cache memory and playback device
JP4993911B2 (ja) * 2006-01-05 2012-08-08 ソニー株式会社 情報処理装置、撮像装置、および情報処理方法、並びにコンピュータ・プログラム
SG135056A1 (en) * 2006-02-14 2007-09-28 Trek 2000 Int Ltd Data storage device using two types of storage medium
SG135082A1 (en) * 2006-02-27 2007-09-28 Gueh How Kiap Method and apparatus for removable, ide-ata or scsi flash memory based data storage in a portable computer device
US7694123B2 (en) * 2006-03-28 2010-04-06 Hewlett-Packard Development Company, L.P. Storing files for operating system restoration
US7411757B2 (en) * 2006-07-27 2008-08-12 Hitachi Global Storage Technologies Netherlands B.V. Disk drive with nonvolatile memory having multiple modes of operation
US9052826B2 (en) * 2006-07-28 2015-06-09 Condusiv Technologies Corporation Selecting storage locations for storing data based on storage location attributes and data usage statistics
US20090132621A1 (en) * 2006-07-28 2009-05-21 Craig Jensen Selecting storage location for file storage based on storage longevity and speed
US7870128B2 (en) * 2006-07-28 2011-01-11 Diskeeper Corporation Assigning data for storage based on speed with which data may be retrieved
US20080263324A1 (en) 2006-08-10 2008-10-23 Sehat Sutardja Dynamic core switching
US20080046641A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
US20080046630A1 (en) * 2006-08-21 2008-02-21 Sandisk Il Ltd. NAND flash memory controller exporting a logical sector-based interface
JP4375572B2 (ja) 2006-10-02 2009-12-02 セイコーエプソン株式会社 半導体記憶装置、データ記録装置、半導体記憶装置の制御方法
JP4933211B2 (ja) * 2006-10-10 2012-05-16 株式会社日立製作所 ストレージ装置、制御装置及び制御方法
JP4942446B2 (ja) 2006-10-11 2012-05-30 株式会社日立製作所 ストレージ装置及びその制御方法
KR100866962B1 (ko) * 2007-03-08 2008-11-05 삼성전자주식회사 Hdd를 하이브리드 hdd에서 노멀 hdd로 전환시키는방법
JP2008276626A (ja) * 2007-05-02 2008-11-13 Hitachi Ltd 記憶制御装置及び記憶制御装置の制御方法
US7899987B2 (en) * 2007-05-15 2011-03-01 Sandisk Il Ltd. File storage in a computer system with diverse storage media
US8032699B2 (en) * 2007-06-15 2011-10-04 Seagate Technology Llc System and method of monitoring data storage activity
US8504784B2 (en) * 2007-06-27 2013-08-06 Sandisk Technologies Inc. Scheduling methods of phased garbage collection and housekeeping operations in a flash memory system
US20090006720A1 (en) * 2007-06-27 2009-01-01 Shai Traister Scheduling phased garbage collection and house keeping operations in a flash memory system
US20090002863A1 (en) * 2007-06-29 2009-01-01 Seagate Technology, Llc System and method of monitoring data operations at a data storage device
US8122322B2 (en) 2007-07-31 2012-02-21 Seagate Technology Llc System and method of storing reliability data
JP2009043030A (ja) 2007-08-09 2009-02-26 Hitachi Ltd ストレージシステム
US8164656B2 (en) * 2007-08-31 2012-04-24 Unity Semiconductor Corporation Memory emulation in an image capture device
US7818493B2 (en) * 2007-09-07 2010-10-19 Sandisk Corporation Adaptive block list management
JP5124217B2 (ja) * 2007-09-18 2013-01-23 株式会社日立製作所 ストレージ装置
JP2009134367A (ja) * 2007-11-28 2009-06-18 Hitachi Ltd 記憶制御装置及び記憶制御装置の制御方法
CA2714745A1 (en) 2008-02-12 2009-08-20 Netapp, Inc. Hybrid media storage system architecture
JP2009199199A (ja) * 2008-02-20 2009-09-03 Hitachi Ltd ストレージシステム及びそのデータライト方法
KR101449524B1 (ko) 2008-03-12 2014-10-14 삼성전자주식회사 스토리지 장치 및 컴퓨팅 시스템
JP2009238094A (ja) * 2008-03-28 2009-10-15 Hitachi Ltd ストレージシステム及びデータ保存方法
US8296782B2 (en) * 2008-04-22 2012-10-23 Lsi Corporation System eliminating hardware duplication during application testing of an internal storage array across different operating systems
WO2009131560A1 (en) * 2008-04-22 2009-10-29 Lsi Corporation Distributed cache system in a drive array
US20090327577A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Hybrid storage
US8812805B2 (en) * 2008-08-05 2014-08-19 Broadcom Corporation Mixed technology storage device that supports a plurality of storage technologies
US20100057984A1 (en) * 2008-08-26 2010-03-04 Seagate Technology Llc Memory hierarchy containing only non-volatile cache
CN102272730B (zh) * 2008-10-09 2017-05-24 美光科技公司 经虚拟化错误校正码nand
US8499120B2 (en) * 2008-10-17 2013-07-30 Seagate Technology Llc User selectable caching management
US8316201B2 (en) 2008-12-18 2012-11-20 Sandisk Il Ltd. Methods for executing a command to write data from a source location to a destination location in a memory device
JP5025670B2 (ja) * 2009-01-28 2012-09-12 株式会社東芝 情報処理装置およびデータ記憶装置
TWI371686B (en) * 2009-04-02 2012-09-01 Lsi Corp System and method to reduce drive overhead using a mirrored cache volume in a storage array
US8327076B2 (en) 2009-05-13 2012-12-04 Seagate Technology Llc Systems and methods of tiered caching
US20110035562A1 (en) * 2009-08-10 2011-02-10 Hewlett-Packard Development Company, L.P. Providing mirroring write data
WO2011030290A1 (en) * 2009-09-08 2011-03-17 International Business Machines Corporation Data management in solid-state storage devices and tiered storage systems
US9063886B2 (en) * 2009-09-18 2015-06-23 Apple Inc. Metadata redundancy schemes for non-volatile memories
US8949565B2 (en) * 2009-12-27 2015-02-03 Intel Corporation Virtual and hidden service partition and dynamic enhanced third party data store
US8443263B2 (en) 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
US8595411B2 (en) 2009-12-30 2013-11-26 Sandisk Technologies Inc. Method and controller for performing a sequence of commands
US8463984B2 (en) * 2009-12-31 2013-06-11 Seagate Technology Llc Dynamic data flow management in a multiple cache architecture
US8726126B2 (en) * 2010-03-23 2014-05-13 Apple Inc. Non-regular parity distribution detection via metadata tag
US9465745B2 (en) 2010-04-09 2016-10-11 Seagate Technology, Llc Managing access commands by multiple level caching
US9311018B2 (en) * 2010-05-11 2016-04-12 Taejin Info Tech Co., Ltd. Hybrid storage system for a multi-level RAID architecture
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
JP5520747B2 (ja) * 2010-08-25 2014-06-11 株式会社日立製作所 キャッシュを搭載した情報装置及びコンピュータ読み取り可能な記憶媒体
US8892981B2 (en) 2010-09-30 2014-11-18 Apple Inc. Data recovery using outer codewords stored in volatile memory
US8549219B1 (en) * 2010-12-07 2013-10-01 Hewlett-Packard Development Company, L.P. Preventing hard drive failure and data loss due to vibration
US20120185642A1 (en) * 2011-01-18 2012-07-19 International Business Machines Corporation Assigning a data item to a storage location in a computing environment
US8954647B2 (en) 2011-01-28 2015-02-10 Apple Inc. Systems and methods for redundantly storing metadata for non-volatile memory
JP5505329B2 (ja) * 2011-02-22 2014-05-28 日本電気株式会社 ディスクアレイ装置及びその制御方法
US9229816B2 (en) * 2011-03-14 2016-01-05 Taejin Info Tech Co., Ltd. Hybrid system architecture for random access memory
US9477597B2 (en) 2011-03-25 2016-10-25 Nvidia Corporation Techniques for different memory depths on different partitions
US8701057B2 (en) 2011-04-11 2014-04-15 Nvidia Corporation Design, layout, and manufacturing techniques for multivariant integrated circuits
US9529712B2 (en) * 2011-07-26 2016-12-27 Nvidia Corporation Techniques for balancing accesses to memory having different memory types
US10198350B2 (en) 2011-07-28 2019-02-05 Netlist, Inc. Memory module having volatile and non-volatile memory subsystems and method of operation
US10380022B2 (en) 2011-07-28 2019-08-13 Netlist, Inc. Hybrid memory module and system and method of operating the same
US10838646B2 (en) 2011-07-28 2020-11-17 Netlist, Inc. Method and apparatus for presearching stored data
US8713357B1 (en) 2011-09-06 2014-04-29 Western Digital Technologies, Inc. Systems and methods for detailed error reporting in data storage systems
US8707104B1 (en) 2011-09-06 2014-04-22 Western Digital Technologies, Inc. Systems and methods for error injection in data storage systems
US8700834B2 (en) 2011-09-06 2014-04-15 Western Digital Technologies, Inc. Systems and methods for an enhanced controller architecture in data storage systems
US9195530B1 (en) 2011-09-06 2015-11-24 Western Digital Technologies, Inc. Systems and methods for improved data management in data storage systems
CN102331958A (zh) * 2011-11-02 2012-01-25 赵玉燕 Linux系统下硬盘启动的方法
US8977804B1 (en) 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Varying data redundancy in storage systems
US8977803B2 (en) 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Disk drive data caching using a multi-tiered memory
US9268701B1 (en) 2011-11-21 2016-02-23 Western Digital Technologies, Inc. Caching of data in data storage systems by managing the size of read and write cache based on a measurement of cache reliability
US8904091B1 (en) 2011-12-22 2014-12-02 Western Digital Technologies, Inc. High performance media transport manager architecture for data storage systems
US9053008B1 (en) 2012-03-26 2015-06-09 Western Digital Technologies, Inc. Systems and methods for providing inline parameter service in data storage devices
US8760922B2 (en) 2012-04-10 2014-06-24 Sandisk Technologies Inc. System and method for micro-tiering in non-volatile memory
US9009392B2 (en) * 2012-04-25 2015-04-14 International Business Machines Corporation Leveraging a hybrid infrastructure for dynamic memory allocation and persistent file storage
US8898376B2 (en) 2012-06-04 2014-11-25 Fusion-Io, Inc. Apparatus, system, and method for grouping data stored on an array of solid-state storage elements
US9104578B2 (en) 2012-07-06 2015-08-11 Seagate Technology Llc Defining address ranges used to cache speculative read data
US9594685B2 (en) 2012-07-06 2017-03-14 Seagate Technology Llc Criteria for selection of data for a secondary cache
US9390020B2 (en) * 2012-07-06 2016-07-12 Seagate Technology Llc Hybrid memory with associative cache
US9529724B2 (en) 2012-07-06 2016-12-27 Seagate Technology Llc Layered architecture for hybrid controller
US9477591B2 (en) 2012-07-06 2016-10-25 Seagate Technology Llc Memory access requests in hybrid memory system
US9772948B2 (en) 2012-07-06 2017-09-26 Seagate Technology Llc Determining a criterion for movement of data from a primary cache to a secondary cache
US9564186B1 (en) * 2013-02-15 2017-02-07 Marvell International Ltd. Method and apparatus for memory access
US9189409B2 (en) * 2013-02-19 2015-11-17 Avago Technologies General Ip (Singapore) Pte. Ltd. Reducing writes to solid state drive cache memories of storage controllers
US9069695B2 (en) 2013-03-14 2015-06-30 Apple Inc. Correction of block errors for a system having non-volatile memory
CN105144025B (zh) * 2013-05-31 2019-02-12 惠普发展公司,有限责任合伙企业 大容量存储设备
US9785564B2 (en) 2013-08-20 2017-10-10 Seagate Technology Llc Hybrid memory with associative cache
US9367247B2 (en) 2013-08-20 2016-06-14 Seagate Technology Llc Memory access requests in hybrid memory system
US9507719B2 (en) 2013-08-20 2016-11-29 Seagate Technology Llc Garbage collection in hybrid memory system
US9348747B2 (en) * 2013-10-29 2016-05-24 Seagate Technology Llc Solid state memory command queue in hybrid device
US10248328B2 (en) 2013-11-07 2019-04-02 Netlist, Inc. Direct data move between DRAM and storage on a memory module
US9665633B2 (en) 2014-02-19 2017-05-30 Snowflake Computing, Inc. Data management systems and methods
US9652384B2 (en) * 2014-12-16 2017-05-16 Intel Corporation Apparatus, system and method for caching compressed data
US10318175B2 (en) * 2017-03-07 2019-06-11 Samsung Electronics Co., Ltd. SSD with heterogeneous NVM types
JP6981019B2 (ja) * 2017-03-14 2021-12-15 日本電気株式会社 ストレージ装置、ストレージシステム、ストレージ装置の制御方法、プログラム
KR102369402B1 (ko) * 2017-09-20 2022-03-02 삼성전자주식회사 스토리지 장치, 이의 동작 방법 및 스토리지 장치를 포함하는 스토리지 시스템
US11132145B2 (en) * 2018-03-14 2021-09-28 Apple Inc. Techniques for reducing write amplification on solid state storage devices (SSDs)
US11221955B2 (en) * 2018-09-06 2022-01-11 International Business Machines Corporation Metadata track selection switching in a data storage system
US20240152463A1 (en) * 2022-11-09 2024-05-09 Andes Technology Corporation Configurable memory system and memory managing method thereof

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4896262A (en) * 1984-02-24 1990-01-23 Kabushiki Kaisha Meidensha Emulation device for converting magnetic disc memory mode signal from computer into semiconductor memory access mode signal for semiconductor memory
JPS6367661A (ja) * 1986-09-09 1988-03-26 Hitachi Ltd キヤツシユメモリのデ−タ保護方式
US4807120A (en) * 1987-04-30 1989-02-21 Texas Instruments Incorporated Temporal garbage collector with indirection cells
JPH0453060A (ja) * 1990-06-20 1992-02-20 Yokogawa Electric Corp ミラードディスク装置
JPH0679293B2 (ja) * 1990-10-15 1994-10-05 富士通株式会社 計算機システム
GB2251324B (en) * 1990-12-31 1995-05-10 Intel Corp File structure for a non-volatile semiconductor memory
US5778418A (en) * 1991-09-27 1998-07-07 Sandisk Corporation Mass computer storage system having both solid state and rotating disk types of memory
JPH06103001A (ja) * 1992-09-18 1994-04-15 Hitachi Ltd 磁気ディスクサブシステム
JPH06161673A (ja) * 1992-11-17 1994-06-10 Fujitsu Ltd 二重化ディスクを使用する計算機システム
JPH06175922A (ja) * 1992-12-08 1994-06-24 Oki Electric Ind Co Ltd キャッシュ管理装置
JPH06236241A (ja) * 1993-02-09 1994-08-23 Sharp Corp フラッシュメモリを用いたハードディスク装置
US5636355A (en) * 1993-06-30 1997-06-03 Digital Equipment Corporation Disk cache management techniques using non-volatile storage
US5542066A (en) * 1993-12-23 1996-07-30 International Business Machines Corporation Destaging modified data blocks from cache memory
JPH07253935A (ja) * 1994-03-15 1995-10-03 Toshiba Corp コンピュータのデータ保護装置
US6125578A (en) * 1994-05-03 2000-10-03 Southpac Trust International, Inc. Floral sleeve having expandable sidewalls
JPH0883148A (ja) * 1994-09-13 1996-03-26 Nec Corp 磁気ディスク装置
US5586291A (en) * 1994-12-23 1996-12-17 Emc Corporation Disk controller with volatile and non-volatile cache memories
US5708846A (en) * 1995-02-24 1998-01-13 Intel Corporation System for retrieving initial data sequence corresponding to next data sequence while locating next data sequence when branch point is reached during current data sequence
US6728851B1 (en) * 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5754888A (en) * 1996-01-18 1998-05-19 The Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations System for destaging data during idle time by transferring to destage buffer, marking segment blank , reodering data in buffer, and transferring to beginning of segment
JPH09297659A (ja) * 1996-04-30 1997-11-18 Toshiba Corp 不揮発性記憶装置およびその制御方法
US5732238A (en) * 1996-06-12 1998-03-24 Storage Computer Corporation Non-volatile cache for providing data integrity in operation with a volatile demand paging cache in a data storage system
JPH1011881A (ja) * 1996-06-20 1998-01-16 Ekushingu:Kk 耐振動情報提供装置
GB9613088D0 (en) 1996-06-21 1996-08-28 Memory Corp Plc Memory device
US5798968A (en) * 1996-09-24 1998-08-25 Sandisk Corporation Plane decode/virtual sector architecture
US5890192A (en) * 1996-11-05 1999-03-30 Sandisk Corporation Concurrent write of multiple chunks of data into multiple subarrays of flash EEPROM
JPH10154101A (ja) * 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
US6424486B2 (en) * 1997-12-17 2002-07-23 Texas Instruments Incorporated Method and apparatus for positioning a read/write head of a hard disk drive
US6286056B1 (en) * 1998-06-26 2001-09-04 Seagate Technology Llc Data storage device with small computer system interface providing persistent reservations
US6408357B1 (en) * 1999-01-15 2002-06-18 Western Digital Technologies, Inc. Disk drive having a cache portion for storing write data segments of a predetermined length
US6370614B1 (en) * 1999-01-26 2002-04-09 Motive Power, Inc. I/O cache with user configurable preload
US20010047473A1 (en) * 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
GB2379538B (en) * 2000-06-23 2005-01-12 Intel Corp Non-volatile cache
TW576966B (en) * 2000-06-23 2004-02-21 Intel Corp Non-volatile cache integrated with mass storage device
JP3832223B2 (ja) * 2000-09-26 2006-10-11 株式会社日立製作所 ディスクアレイのディスク障害復旧方法
JP4523150B2 (ja) * 2000-12-27 2010-08-11 レノボ シンガポール プライヴェート リミテッド データサーバシステム、コンピュータ装置、記憶媒体
US6763424B2 (en) 2001-01-19 2004-07-13 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
JP2002259062A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd 記憶装置システム及び記憶装置システムにおけるデータの複写方法
US6631456B2 (en) * 2001-03-06 2003-10-07 Lance Leighnor Hypercache RAM based disk emulation and method
GB0123412D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Memory system sectors
JP3730907B2 (ja) * 2001-12-04 2006-01-05 日本電気株式会社 ディスクアレイ装置間の遠隔データコピー方式
JP2003173240A (ja) * 2001-12-05 2003-06-20 Hitachi Ltd 記憶装置システム及びそのデータバックアップ方法
US7152078B2 (en) * 2001-12-27 2006-12-19 Hitachi, Ltd. Systems, methods and computer program products for backup and restoring storage volumes in a storage area network
US6728898B2 (en) * 2002-03-06 2004-04-27 Marathon Technologies Corporation Producing a mirrored copy using incremental-divergence
JP2003316625A (ja) * 2002-04-26 2003-11-07 Hitachi Ltd データ移行方法
US7006318B2 (en) * 2002-08-29 2006-02-28 Freescale Semiconductor, Inc. Removable media storage system with memory for storing operational data
US6646948B1 (en) * 2002-08-29 2003-11-11 Motorola, Inc. Data storage system utilizing a non-volatile IC based memory for reduction of data retrieval time
US7096378B2 (en) * 2002-08-29 2006-08-22 Freescale Semiconductor, Inc. Data storage system having a non-volatile IC based memory for storing user data
US7024614B1 (en) 2002-12-24 2006-04-04 Western Digital Technologies, Inc. Disk drive employing a configuration data structure comprising a plurality of configuration parameters to facilitate disk commands
WO2005041044A1 (en) * 2003-09-24 2005-05-06 Seagate Technology Llc Multi-level caching in data storage devices
US20050125602A1 (en) * 2003-12-04 2005-06-09 Ehrlich Richard M. HDD with storage of critical data in FLASH
US20050125600A1 (en) * 2003-12-04 2005-06-09 Ehrlich Richard M. Method for storing HDD critical data in flash
US20050125603A1 (en) * 2003-12-04 2005-06-09 Ehrlich Richard M. Method for rapid availability of critical data through re-allocation
US7170707B2 (en) * 2004-11-09 2007-01-30 Matsushita Electric Industrial Co., Ltd. Systems and methods for reducing power dissipation in a disk drive including an adjustable output voltage regulator

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009121307A1 (zh) * 2008-04-02 2009-10-08 深圳市朗科科技股份有限公司 计算机及数据存储方法
CN101551779B (zh) * 2008-04-02 2014-11-05 深圳市朗科科技股份有限公司 计算机及数据存储方法
CN101901190A (zh) * 2009-03-19 2010-12-01 三星电子株式会社 电子装置、用于管理电子装置中的存储器的设备和方法
CN101901190B (zh) * 2009-03-19 2015-04-01 三星电子株式会社 电子装置、用于管理电子装置中的存储器的设备和方法
CN102598141A (zh) * 2009-06-10 2012-07-18 美光科技公司 用于减少存储器阵列中的读取等待时间的存储器操作暂停
WO2012152075A1 (zh) * 2011-10-24 2012-11-15 中兴通讯股份有限公司 一种处理来自计算机的操作指令的方法和接口设备
CN105934747A (zh) * 2013-11-07 2016-09-07 奈特力斯股份有限公司 混合内存模块以及操作混合内存模块的系统和方法
US11182284B2 (en) 2013-11-07 2021-11-23 Netlist, Inc. Memory module having volatile and non-volatile memory subsystems and method of operation
US11243886B2 (en) 2013-11-07 2022-02-08 Netlist, Inc. Hybrid memory module and system and method of operating the same
CN106293635A (zh) * 2015-05-13 2017-01-04 华为技术有限公司 指令块处理方法及装置
CN106293635B (zh) * 2015-05-13 2018-10-30 华为技术有限公司 指令块处理方法及装置

Also Published As

Publication number Publication date
CN100487632C (zh) 2009-05-13
WO2005081093A1 (en) 2005-09-01
AU2005200321A1 (en) 2005-08-25
JP2007525753A (ja) 2007-09-06
US7302534B2 (en) 2007-11-27
CA2492921A1 (en) 2005-08-05
EP2254022A1 (en) 2010-11-24
TWI380171B (en) 2012-12-21
US20070022241A1 (en) 2007-01-25
TW200604795A (en) 2006-02-01
JP2011222030A (ja) 2011-11-04
JP5129484B2 (ja) 2013-01-30
CA2492921C (en) 2009-04-14
KR20060123573A (ko) 2006-12-01
EP1711883A1 (en) 2006-10-18
KR101105955B1 (ko) 2012-01-18
US20050172074A1 (en) 2005-08-04
US7136973B2 (en) 2006-11-14

Similar Documents

Publication Publication Date Title
CN100487632C (zh) 双媒体存储装置
US10126959B2 (en) Systems and methods for a mass data storage system having a file-based interface to a host and a non-file-based interface to secondary storage
US7127549B2 (en) Disk acceleration using first and second storage devices
US8489803B2 (en) Efficient use of flash memory in flash drives
KR101395778B1 (ko) 메모리 카드 및 그것을 포함하는 메모리 시스템 그리고그것의 동작 방법
US7529879B2 (en) Incremental merge methods and memory systems using the same
US20150089103A1 (en) Non-volatile memory controller processing new request before completing current operation, system including same, and method
CN103635968A (zh) 包含存储器系统控制器的设备和相关方法
US8060669B2 (en) Memory controller with automatic command processing unit and memory system including the same
CN104572478A (zh) 数据存取方法和数据存取装置
CN104346290A (zh) 存储装置、计算机系统及其操作方法
CN103650054A (zh) 包含存储器系统控制器的设备和相关方法
CN101297276A (zh) 具有本地执行功能和存储功能的大容量存储设备
CN103270500A (zh) 事务日志恢复
US20120179863A1 (en) Memory system
US20120210045A1 (en) Data access method, and memory controller and memory storage apparatus using the same
CN111324287A (zh) 一种存储器
US20240020224A1 (en) Memory system, memory controller and operation method thereof
CN115509950A (zh) 存储器系统、包括存储器系统的数据处理系统及操作方法

Legal Events

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

Owner name: SANDISK TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SANDISK CORP.

Effective date: 20120323

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

Effective date of registration: 20120323

Address after: American Texas

Patentee after: Sandisk Corp.

Address before: American California

Patentee before: Sandisk Corp.

C56 Change in the name or address of the patentee

Owner name: SANDISK TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: SANDISK TECHNOLOGIES, INC.

CP01 Change in the name or title of a patent holder

Address after: American Texas

Patentee after: Sandisk Corp.

Address before: American Texas

Patentee before: Sandisk Corp.

C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: American Texas

Patentee after: DELPHI INT OPERATIONS LUX SRL

Address before: American Texas

Patentee before: Sandisk Corp.