CN102428452A - 分割快闪存储器数据存储装置 - Google Patents

分割快闪存储器数据存储装置 Download PDF

Info

Publication number
CN102428452A
CN102428452A CN2010800204899A CN201080020489A CN102428452A CN 102428452 A CN102428452 A CN 102428452A CN 2010800204899 A CN2010800204899 A CN 2010800204899A CN 201080020489 A CN201080020489 A CN 201080020489A CN 102428452 A CN102428452 A CN 102428452A
Authority
CN
China
Prior art keywords
memory chip
subclass
storage device
data storage
subregion
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.)
Pending
Application number
CN2010800204899A
Other languages
English (en)
Inventor
阿尔贝特·T·博尔歇斯
安德鲁·T·斯温
罗伯特·S·斯普林科
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN102428452A publication Critical patent/CN102428452A/zh
Pending legal-status Critical Current

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/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • 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/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling

Abstract

一种分割具有多个存储器芯片(118a、118b、218、318)的数据存储装置(100、302)的方法包括:确定所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的数目;经由耦合到所述数据存储装置(100、302)的主机(106、350)界定所述数据存储装置(100、302)的第一分区(321、331),其中所述第一分区(321、331)包括所述多个存储器芯片(118a、118b、218、318)的第一子集;经由所述主机(106、350)界定所述数据存储装置(100、302)的第二分区(322、332),其中所述第二分区(322、332)包括所述多个存储器芯片(118a、118b、218、318)的第二子集,使得所述第一子集不包括所述第二子集中的任何存储器芯片(118a、118b、218、318)且其中所述第二子集不包括所述第一子集中的任何存储器芯片(118a、118b、218、318)。

Description

分割快闪存储器数据存储装置
相关申请案交叉参考
本申请案请求对在2009年4月8日提出申请且标题为“数据存储装置(DATASTORAGE DEVICE)”的第61/167,709号美国临时申请案及在2009年6月17日提出申请且标题为“快闪存储器数据存储装置中的分割及剥离(PARTITIONING ANDSTRIPING IN A FLASH MEMORY DATA STORAGE DEVICE)”的第61/187,835号美国临时申请案的权益,其两者以整体引用的方式并入本文中。
技术领域
本说明涉及一种数据存储装置。
背景技术
可使用数据存储装置来存储数据。数据存储装置可与计算装置一同使用以提供所述计算装置的数据存储需要。在某些实例中,可期望在数据存储装置上存储大量数据。此外,可期望快速地执行从所述数据存储装置读取数据及向所述数据存储装置写入数据的命令。
发明内容
根据一个一般方面,揭示一种分割包括多个存储器芯片的数据存储装置的方法。所述方法包括确定所述数据存储装置中的存储器芯片的数目。耦合到所述数据存储装置的主机界定所述数据存储装置的第一分区及第二分区,其中所述第一分区包括所述多个存储器芯片的第一子集且其中所述第二分区包括所述多个存储器芯片的第二子集。所述第一子集不包括所述第二子集中的任何存储器芯片,且其中所述第二子集不包括所述第一子集中的任何存储器芯片。
在另一一般方面中,揭示一种分割包括多个存储器芯片的数据存储装置的方法,其中读取:所述数据存储装置的物理配置,其中包括所述数据存储装置中的存储器芯片的数目;及所述数据存储装置的分割方案。耦合到所述数据存储装置的主机界定所述数据存储装置的第一分区及第二分区,其中所述第一分区包括所述多个存储器芯片的第一子集且所述第二分区包括所述多个存储器芯片的第二子集,且其中所述第一子集不包括所述第二子集中的任何存储器芯片且其中所述第二子集不包括所述第一子集中的任何存储器芯片。针对所述第一分区分配逻辑/物理存储器映射且针对所述第二分区分配逻辑/物理存储器映射。
实施方案可包括以下特征中的一者或一者以上。可在从所述第二分区读取数据的同时将数据写入到所述第一分区。确定所述数据存储装置中的存储器芯片的数目可包括将指示所述数据存储装置中的存储器芯片的所述数目的信息从所述数据存储装置传输到所述主机。所述主机可界定所述数据存储装置中的将从所述主机向其写入数据的地址位置,其中所述地址位置规定将所述数据写入到所述多个存储器芯片中的特定一者。
所述数据存储装置可包括用于在所述主机与所述多个存储器芯片之间传递数据的多个物理通道,每一通道可操作地连接到不同多个所述存储器芯片,且接着可确定物理通道的所述数目。可界定所述通道的第一子集及第二子集,其中所述通道的所述第一子集中的通道仅可操作地连接到存储器芯片的所述第一子集中的存储器芯片且其中所述通道的所述第二子集中的通道仅可操作地连接到存储器芯片的所述第二子集中的存储器芯片。且所述主机可界定所述数据存储装置中的将从所述主机向其写入数据的地址位置,其中所述地址位置规定经由特定通道将所述数据写入到所述多个存储器芯片中的特定一者。所述第一分区可包括可操作地连接到单个通道的存储器芯片。
所述主机可将所述数据存储装置的所述第一分区重新界定为包括所述多个存储器芯片的第三子集,其中所述第三子集不同于所述第一子集,且其中所述第三子集不包括所述第二子集中的任何存储器芯片且其中所述第二子集不包括所述第三子集中的任何存储器芯片。可接收所述第一子集中的所述存储器芯片中的一者已出故障或接近出故障的指示,且接着重新界定所述第一分区可包括将所述第三子集界定为所述第一子集的除已出故障或接近出故障的所述存储器芯片以外的存储器芯片。
在另一一般方面中,一种设备包括:数据存储装置,其包括多个存储器芯片;及主机,其经由接口可操作地耦合到所述数据存储装置。所述主机包括:配置检测引擎,其经配置以检测所述数据存储装置中的存储器芯片的数目;及分区引擎。所述分区引擎经配置以:界定所述数据存储装置的第一分区,其中所述第一分区包括所述多个存储器芯片的第一子集;及界定所述数据存储装置的第二分区,其中所述第二分区包括所述多个存储器芯片的第二子集,且其中所述第一子集不包括所述第二子集中的任何存储器芯片且其中所述第二子集不包括所述第一子集中的任何存储器芯片。
在另一一般方面中,一种设备包括:数据存储装置,其包括多个存储器芯片;及主机,其经由接口可操作地耦合到所述数据存储装置。所述主机包括配置检测引擎,所述配置检测引擎经配置以读取所述数据存储装置的物理配置,其中包括所述数据存储装置中的存储器芯片的数目,且经配置以读取所述数据存储装置的分割方案。所述主机还包括分区引擎,所述分区引擎经配置以:界定所述数据存储装置的第一分区,其中所述第一分区包括所述多个存储器芯片的第一子集;及界定所述数据存储装置的第二分区,其中所述第二分区包括所述多个存储器芯片的第二子集,且经配置以分配所述第一分区的逻辑/物理存储器映射且分配所述第二分区的逻辑/物理存储器映射。所述第一子集不包括所述第二子集中的任何存储器芯片,且所述第二子集不包括所述第一子集中的任何存储器芯片。
实施方案可包括以下特征中的一者或一者以上。举例来说,所述数据存储装置可经配置以在从所述主机接收到命令后即刻将指示所述数据存储装置中的存储器芯片的所述数目的信息从所述数据存储装置传输到所述主机。所述主机还可包括经配置以给待写入到所述数据存储装置的数据指派存储器地址的地址指派引擎,其中所述所指派存储器地址规定将所述数据写入到所述多个存储器芯片中的特定一者。
所述数据存储装置可包括用于在所述主机与所述多个存储器芯片之间传递数据的多个物理通道,其中每一通道可操作地连接到不同多个所述存储器芯片。接着,所述配置检测引擎可进一步经配置以检测所述数据存储装置中的通道的所述数目,且所述分区引擎可进一步经配置以界定所述通道的第一子集,其中通道的所述第一子集中的通道仅可操作地连接到存储器芯片的所述第一子集中的存储器芯片,且其中所述分区引擎可进一步经配置以界定所述通道的第二子集,其中通道的所述第二子集中的通道仅可操作地连接到存储器芯片的所述第二子集中的存储器芯片。
所述主机可进一步包括经配置以给待写入到所述数据存储装置的数据指派存储器地址的地址指派引擎,其中所述所指派存储器地址规定经由特定通道将所述数据写入到所述多个存储器芯片中的特定一者。所述第一分区可包括可操作地连接到单个通道的存储器芯片。所述分区引擎可进一步经配置以将所述数据存储装置的所述第一分区重新界定为包括所述多个存储器芯片的第三子集,其中所述第三子集不同于所述第一子集,且其中所述第三子集不包括所述第二子集中的任何存储器芯片且其中所述第二子集不包括所述第三子集中的任何存储器芯片。所述分区引擎可进一步经配置以接收所述第一子集中的所述存储器芯片中的一者已出故障或接近出故障的指示;且将所述第一分区重新界定为包括所述多个存储器芯片的所述第三子集可包括将所述第三子集界定为所述第一子集的除已出故障或接近出故障的所述存储器芯片以外的存储器芯片。
附图说明
图1是数据存储装置的示范性框图。
图2是可在图1的数据存储装置中使用的FPGA控制器的示范性框图。
图3A是与图1的数据存储装置一同使用的示范性计算装置的示范性框图。
图3B是与图1的数据存储装置一同使用的示范性计算装置的示范性框图。
图4是图解说明图1的数据存储装置的实例性过程的示范性流程图。
图5是图解说明分割图1的数据存储装置的实例性过程的另一示范性流程图。
具体实施方式
本文件描述用于数据存储的设备、系统及技术。此数据存储设备可包括可与一个或一个以上不同存储器板一同使用的控制器的控制器板,其中所述存储器板中的每一者具有多个快闪存储器芯片。所述数据存储设备可使用所述控制器板上的接口来与主机进行通信。以此方式,所述控制器板上的所述控制器可经配置以使用所述接口来从所述主机接收命令且使用所述存储器板上的所述快闪存储器芯片来执行这些命令。
图1是数据存储装置100的框图。数据存储装置100可包括控制器板102以及一个或一个以上存储器板104a及104b。数据存储装置100可经由接口108与主机106进行通信。接口108可在主机106与控制器板102之间。控制器板102可包括控制器110、DRAM 111、多个通道112、电力模块114及存储器模块116。存储器板104a及104b可包括所述存储器板中的每一者上的多个快闪存储器芯片118a及118b。存储器板104a及104b还可包括存储器装置120a及120b。
一般来说,数据存储装置100可经配置以将数据存储于快闪存储器芯片118a及118b上。主机106可将数据写入到快闪存储器芯片118a及118b及从快闪存储器芯片118a及118b读取数据,并且引起将关于快闪存储器芯片118a及118b执行的其它操作。可经由控制器板102上的控制器110来处理且由控制器110来控制主机106与快闪存储器芯片118a及118b之间的数据读取及写入以及其它操作。控制器110可从主机106接收命令且致使使用存储器板104a及104b上的快闪存储器芯片118a及118b来执行这些命令。主机106与控制器110之间的通信可经由接口108。控制器110可使用通道112来与快闪存储器芯片118a及118b进行通信。
控制器板102可包括DRAM 111。DRAM 111可为可操作地耦合到控制器110且可用以存储信息。举例来说,DRAM 111可用以存储逻辑地址到物理地址映射及坏块信息。DRAM 111还可经配置以用作主机106与快闪存储器芯片118a及118b之间的缓冲器。
在一个示范性实施方案中,控制器板102以及存储器板104a及104b中的每一者为物理上单独的印刷电路板(PCB)。存储器板104a可在可操作地连接到控制器板102PCB的一个PCB上。举例来说,存储器板104a可物理及/或电连接到控制器板102。类似地,存储器板104b可为与存储器板104a分开的PCB且可为可操作地连接到控制器板102PCB。举例来说,存储器板104b可物理及/或电连接到控制器板102。
存储器板104a及104b每一者可单独地与控制器板102断开及从控制器板102移除。举例来说,存储器板104a可从控制器板102断开且由另一存储器板(未展示)替换,其中所述另一存储器板可操作地连接到控制器板102。在此实例中,可用其它存储器板换出存储器板104a及104b中的任一者或两者,使得所述其它存储器板可与同一控制器板102及控制器110一同操作。
在一个示范性实施方案中,控制器板102以及存储器板104a及104b中的每一者可以磁盘驱动器形状因数物理连接。所述磁盘驱动器形状因数可包括不同大小,例如(举例来说)3.5″磁盘驱动器形状因数及2.5″磁盘驱动器形状因数。
在一个示范性实施方案中,控制器板102以及存储器板104a及104b中的每一者可使用高密度球栅阵列(BGA)连接器电连接。可使用BGA连接器的其它变化形式,其中包括(举例来说)细球栅阵列(FBGA)连接器、超细球栅阵列(UBGA)连接器及微球栅阵列(MBGA)连接器。也可使用其它类型的电连接构件。
接口108可包括控制器110与主机106之间的高速接口。所述高速接口可使得能够在主机106与快闪存储器芯片118a及118b之间快速传送数据。在一个示范性实施方案中,所述高速接口可包括外围组件互连高速(“PCIe”)接口。举例来说,所述PCIe接口可为PCIe x4接口或PCIe x8接口。PCIe接口108可包括到主机106的PCIe连接器电缆组合件。在此实例中,控制器110可包括经配置以在主机106与接口108介接的接口控制器。所述接口控制器可包括PCIe端点控制器。也可使用其它高速接口、连接器及连接器组合件。
在一个示范性实施方案中,控制器板102与存储器板104a及104b上的快闪存储器芯片118a及118b之间的通信可布置及配置成多个通道112。通道112中的每一者可与一个或一个以上快闪存储器芯片118a及118b通信。控制器110可经配置而使得从主机106接收的命令可由控制器110使用通道112中的每一者同时或至少实质上同时执行。以此方式,可在不同通道112上同时执行多个命令,此可改善数据存储装置100的吞吐量。
在图1的实例中,图解说明二十(20)个通道112。完全实线图解说明控制器110与存储器板104a上的快闪存储器芯片118a之间的十(10)个通道。混合的实线与虚线图解说明控制器110与存储器板104b上的快闪存储器芯片118b之间的十(10)个通道。如图1中所图解说明,通道112中的每一者可支持多个快闪存储器芯片。举例来说,通道112中的每一者可支持多达32个快闪存储器芯片。在一个示范性实施方案中,所述20个通道中的每一者可经配置以支持6个快闪存储器芯片并与其通信。在此实例中,存储器板104a及104b中的每一者将各自包括60个快闪存储器芯片。依据快闪存储器芯片118a及118b的类型及数目,数据存储100装置可经配置以存储多达多个数据太字节且包括多个数据太字节在内。
控制器110可包括微控制器、FPGA控制器、其它类型的控制器或这些控制器的组合。在一个示范性实施方案中,控制器110为微控制器。可以硬件、软件或硬件与软件的组合来实施所述微控制器。举例来说,可从存储器(例如,存储器模块116)给所述微控制器加载计算机程序产品,所述计算机程序产品包括在被执行时可致使所述微控制器以某一方式执行的指令。所述微控制器可经配置以使用接口108从主机106接收命令且执行所述命令。举例来说,所述命令可包括用以使用快闪存储器芯片118a及118b读取、写入、拷贝及擦除数据块的命令以及其它命令。
在另一示范性实施方案中,控制器110为FPGA控制器。可以硬件、软件或硬件与软件的组合来实施所述FPGA控制器。举例来说,可从存储器(例如,存储器模块116)给所述FPGA控制器加载固件,所述固件包括在被执行时可致使所述FPGA控制器以某一方式执行的指令。所述FPGA控制器可经配置以使用接口108从主机106接收命令且执行所述命令。举例来说,所述命令可包括用以使用快闪存储器芯片118a及118b读取、写入、拷贝及擦除数据块的命令以及其它命令。
存储器模块116可经配置以存储数据,可将所述数据加载到控制器110。举例来说,存储器模块116可经配置以存储FPGA控制器的一个或一个以上图像,其中所述图像包括供所述FPGA控制器使用的固件。存储器模块116可与主机106介接以与主机106通信。存储器模块116可与主机106直接介接及/或可经由控制器110间接与主机106介接。举例来说,主机106可将固件的一个或一个以上图像传递到存储器模块116以进行存储。在一个示范性实施方案中,存储器模块116包括电可擦除可编程只读存储器(EEPROM)。存储器模块116还可包括其它类型的存储器模块。
存储器板104a及104b可经配置以与不同类型的快闪存储器芯片118a及118b一同操作。在一个示范性实施方案中,快闪存储器芯片118a及快闪存储器芯片118b可为相同类型的快闪存储器芯片,其中包括需要来自电力模块114的相同电压及来自相同快闪存储器芯片销售商。术语销售商与制造商在本文件通篇中可互换使用。
在另一示范性实施方案中,存储器板104a上的快闪存储器芯片118a可为与存储器板104b上的快闪存储器芯片118b不同的类型的快闪存储器芯片。举例来说,存储器板104a可包括SLC NAND快闪存储器芯片且存储器板104b可包括MLC NAND快闪存储器芯片。在另一实例中,存储器板104a可包括来自一个快闪存储器芯片制造商的快闪存储器芯片且存储器板104b可包括来自不同快闪存储器芯片制造商的快闪存储器芯片。具有全部相同类型的快闪存储器芯片或具有不同类型的快闪存储器芯片的灵活性使得能够使数据存储装置100适合主机106正在使用的不同应用程序。
在另一示范性实施方案中,存储器板104a及104b可在同一存储器板上包括不同类型的快闪存储器芯片。举例来说,存储器板104a可在同一PCB上包括SLC NAND芯片及MLC NAND芯片两者。类似地,存储器板104b可包括SLC NAND芯片及MLC NAND芯片两者。以此方式,数据存储装置100可有利地经定制以满足主机106的规格。
在另一示范性实施方案中,存储器板104a及104b可包括其它类型的存储器装置,其中包括非快闪存储器芯片。举例来说,存储器板104a及104b可包括随机存取存储器(RAM),例如(举例来说)动态RAM(DRAM)及静态RAM(SRAM)以及其它类型的RAM及其它类型的存储器装置。在一个示范性实施方案中,存储器板104a及104b两者可包括RAM。在另一示范性实施方案中,所述存储器板中的一者可包括RAM且另一存储器板可包括快闪存储器芯片。此外,所述存储器板中的一者可包括RAM及快闪存储器芯片两者。
存储器板104a及104b上的存储器模块120a及120b可分别用以存储与快闪存储器芯片118a及118b相关的信息。在一个示范性实施方案中,存储器模块120a及120b可存储快闪存储器芯片的装置特性。所述装置特性可包括所述芯片为SLC芯片还是MLC芯片、所述芯片为NAND还是NOR芯片、芯片选择的数目、块的数目、每块页的数目、每页字节的数目及所述芯片的速度。
在一个示范性实施方案中,存储器模块120a及120b可包括串行EEPROM。EEPROM可存储装置特性。可针对任何给定类型的快闪存储器芯片汇编一次装置特性且可用所述装置特性产生适当EEPROM图像。当存储器板104a及104b可操作地连接到控制器板102时,则可从EEPROM读取所述装置特性,使得控制器110可自动辨识控制器110正在控制的快闪存储器芯片118a及118b的类型。另外,可针对特定类型的快闪存储器芯片118a及118b使用所述装置特性来将控制器110配置为适当参数。
如上文所论述,控制器110可包括FPGA控制器。参照图2,其图解说明FPGA控制器210的示范性框图。FPGA控制器可经配置以按上文关于图1的控制器110所描述的方式操作。FPGA控制器210可包括用以将多个通道112连接到快闪存储器芯片218的多个通道控制器250。快闪存储器芯片218被图解说明为连接到通道控制器250中的每一者的多个快闪存储器芯片。快闪存储器芯片218表示图1的快闪存储器芯片118a及118b,快闪存储器芯片118a及118b在图1的单独存储器板104a及104b上。所述单独存储器板未在图2的实例中展示。FPGA控制器210可包括PCIe接口模块208、双向直接存储器存取(DMA)控制器252、动态随机存取存储器(DRAM)控制器254、命令处理器/队列256及信息与配置接口模块258。
可使用接口与主机(例如,图1的主机106)传递信息。在此实例(图2)中,FPGA控制器210包括用以与主机及PCIe接口模块208通信的PCIe接口。PCIe接口模块208可经布置及配置以从主机接收命令且将命令发送到主机。PCIe接口模块208可在主机与数据存储装置之间提供数据流控制。PCIe接口模块208可使得能够在主机与控制器210且最终快闪存储器芯片218之间高速传送数据。在一个示范性实施方案中,PCIe接口及PCIe接口模块208可包括64位总线。双向直接存储器存取(DMA)控制器252可经布置及配置以控制PCIe接口模块208与命令处理器/队列256之间的总线的操作。
双向DMA控制器252可经配置以与PCIe接口208及通道控制器250中的每一者介接。双向DMA控制器252使得能够在主机106与快闪存储器芯片218之间进行双向直接存储器存取。
DRAM控制器254可经布置及配置以控制逻辑地址到物理地址的翻译。举例来说,在其中主机使用逻辑地址来寻址存储器空间的实施方案中,DRAM控制器254可借助将由主机使用的逻辑地址翻译成快闪存储器芯片218中的实际物理地址(与正被写入到快闪存储器芯片218或从快闪存储器芯片218读取的数据相关)来辅助命令处理器/队列256。从主机接收的逻辑地址可翻译成快闪存储器芯片218中的一者中的位置的物理地址。类似地,快闪存储器芯片218中的一者中的位置的物理地址可翻译成逻辑地址且被传递到主机。
命令处理器/队列256可经布置及配置以经由PCIe接口模块208从主机接收命令且经由通道控制器250控制所述命令的执行。命令处理器/队列256可维持待执行的若干个命令的队列且使用有序列表来对所述命令进行排序以确保可首先处理最老命令。命令处理器100可维持指定给同一快闪存储器芯片的命令的次序且可对指定给不同快闪存储器芯片的命令进行重新排序。以此方式,可同时执行多个命令且可同时或至少实质同时使用通道112中的每一者。
命令处理器/队列256可经配置以无序地处理不同通道112的命令且保持按通道命令排序。举例来说,命令处理器/队列256可无序地处理从主机接收且指定给不同通道的命令。以此方式,可保持所述通道忙碌。可按命令处理器/队列256从主机接收命令的次序来处理从主机接收以在同一通道上进行处理的命令。在一个示范性实施方案中,命令处理器/队列256可经配置以将从主机接收的命令的列表维持为先进先出排序列表,以确保所述命令的及时执行。
通道控制器250可经布置及配置以处理来自命令处理器/队列256的命令。通道控制器250中的每一者可经配置以处理多个快闪存储器芯片218的命令。在一个示范性实施方案中,通道控制器250中的每一者可经配置以处理多达32个快闪存储器芯片218(且包括32个快闪存储器芯片218在内)的命令。
通道控制器250可经配置以按命令处理器/队列256指定的次序来处理来自命令处理器/队列256的命令。可处理的命令的实例包括但不限于读取快闪页、编程快闪页、拷贝快闪页、擦除快闪块、读取快闪块的元数据、映射快闪存储器芯片的坏块及复位快闪存储器芯片。
信息与配置接口模块258可经布置及配置以与存储器模块(例如,图1的存储器模块116)介接以接收FPGA控制器210的配置信息。举例来说,信息与配置接口模块258可从所述存储器模块接收一个或一个以上图像以将固件提供到FPGA控制器210。对所述图像及对所述固件的修改可由主机经由信息与配置接口模块258提供到控制器210。经由信息与配置接口模块258接收的修改可应用于控制器210的组件中的任一者,其中包括(举例来说)PCIe接口模块208、双向直接存储器存取(DMA)控制器252、DRAM控制器254、命令处理器/队列256及通道控制器250。信息与配置接口模块258可包括一个或一个以上寄存器,可视需要通过来自主机的指令修改所述一个或一个以上寄存器。
FPGA控制器210可经布置及配置以结合主机协作及处理命令。FPGA控制器210可执行或至少辅助执行错误校正、坏块管理、逻辑/物理映射、无用单元收集、损耗均衡、与快闪存储器芯片218相关的分割及低级格式化。
图3A是设备300的示意性框图,设备300包括具有组织成第一分区321及第二分区322的多个快闪存储器芯片318a、318b、318c、318d、318e、318f、318g、318h、318i、318j、318k、318l的数据存储装置302。第一及第二分区321及322界定数据存储装置302中的存储空间的不同物理区域,使得可将不同种类的目录及文件分类在不同分区中,或使得一个分区可用于不同于另一分区的目的。第一分区可包括第一子集快闪存储器芯片318a到318f,而第二分区可包括第二子集快闪存储器芯片318g到318l,其中不存在任何为两个分区的部分的快闪存储器芯片。也就是说,在个别快闪存储器芯片之间划出分区321与分区322之间的边界,以确保个别快闪存储器芯片不属于一个以上分区。
将数据存储装置组织成两个或两个以上分区可用于若干个目的。举例来说,可保持存储于一个分区上的操作系统文件与存储于另一分区上的用户文件分离。可动态且快速地改变大小(可能使文件系统满)的高速缓冲存储器及日志文件可存储于一个分区上且保持与存储于不同分区上的其它文件分离。分区可用于多重引导设置,其允许用户在单个计算机上具有一个以上操作系统。举例来说,用户可在同一数据存储装置的不同分区上安装Linux、Mac OS X及Microsoft Windows或操作系统且具有在加电时引导到任何操作系统(由硬件支持)中的选择。可使用分区来保护或隔离文件以使得更容易地恢复遭破坏文件系统或操作系统安装。举例来说,如果一个分区遭破坏但任何其它文件系统均不受影响,那么所述存储装置上的数据仍可为可挽回的。针对只读数据使用单独的分区还减少所述分区上的文件系统遭破坏的机会。分区还可提高其中较小文件系统更高效的系统上的总体计算机性能。举例来说,仅具有一个NTFS文件系统的大硬盘驱动器通常具有非常大的顺序存取的主文件表(MFT),且通常比较小分区的较小MFT花费更多的时间来读取此MFT。
在另一实例性实施例中,数据存储装置302可用以存储必须从所述数据存储装置快速读取且将其供应到主机的大量数据(例如,许多千兆字节或太字节的数据)。举例来说,所述数据存储装置可用以高速缓冲存储大量的公开可存取信息(例如,来自万维网的网页的大语料库、书籍的电子版本的大库或表示大量电信的数字信息等),所述大量的公开可存取信息可由主机响应于查询而提取。因此,可为重要的是响应于主机所发出的读取命令而非常快速地存取并返回相关数据。然而,还可需要随相关信息改变而不断地更新数据存储装置中所存储的信息以保持所述信息为最近的。举例来说,如果存储装置上的信息与网页的语料库相关,那么可需要随网页改变且随新网页被创建而更新存储装置上所存储的信息。
在此系统中,经分割快闪存储器数据存储装置302可提供优越性能。在快闪存储器存储装置中,到快闪存储器芯片的写入操作比从快闪存储器芯片的读取操作花费更长的时间(例如,长10到100倍)。因此,将数据存储装置的芯片318a到318l组织成两个或两个以上分区(其中,在不同芯片之间的边界处界定所述分区)提供用以确保快速读取操作同时还允许实时更新所述数据存储装置上所存储的信息的方式。举例来说,分区321及322两者可用以存储待响应于查询而提供的数据语料库(例如,网页语料库),且个别分区可在服务于请求与用新信息更新之间交替。举例来说,在第一时间周期中,第一分区321可用以将信息提供到主机(例如,可响应于用户查询而请求的信息),同时更新第二分区322上的数据(例如,响应于对语料库的网页的改变或增加)。接着,在第二时间周期中,最近经更新的第二分区322可用以将信息提供到主机,同时更新第一分区321上的数据。可重复此过程,使得数据总是从充当只读装置的分区来提供,且因此提供对来自主机的读取命令的非常快速的响应,而不会因写入命令减慢,同时正在用新信息更新另一分区。界定分区而使得个别快闪存储器芯片仅包括于一个分区中确保没有快闪芯片将具有在实质相同时间向其写入且从其读取的数据,此将导致对来自主机350的读取请求的响应的延迟。
如上文所论述,存储器芯片318a到318l可连接到可包括FPGA控制器310的控制器。所述FPGA控制器可经配置以按上文关于图1控制器110或图2的FPGA 210所描述的方式操作。FPGA控制器310可包括用以将多个通道112连接到快闪存储器芯片318a到318l的多个通道控制器312a、312b、312c、312d、312e、312f。当然,如上文所描述,存储装置可包括12个以上快闪存储器芯片、六个以上通道控制器,且远多于两个快闪存储器芯片可为跨越物理通道可操作地连接到通道控制器。因此,图3A及图3B中所示的实施方案仅为示意性的,以用于说明的清晰性目的。
在一个实施方案中,通道控制器312a、312b、312c、312d、312e、312f可控制可操作地连接到为每一分区321及322的部分的快闪存储器芯片的通道。举例来说,通道控制器312a可为可操作地连接到存储器芯片318a(其为第一分区321的部分),且还可操作地连接到存储器芯片318g(其为第二分区322的部分)。在此配置中,第一分区321中的至少一个存储器芯片连接到数据存储装置302与主机之间的每一通信通道,且第二分区322中的至少一个存储器芯片连接到数据存储装置302与主机350之间的每一通信通道。此配置产生分区321或322与主机之间的通信的最大并行性,此可产生从数据存储装置302的快速读取存取时间及向数据存储装置302的快速写入时间。
在另一实施方案中,大约一半通道控制器可为可操作地连接到第一分区中的快闪存储器芯片且大约一半通道控制器可为可操作地连接到第二分区中的快闪存储器芯片。
在图3B中所示的另一实施方案中,快闪存储器芯片318a、318b、318c、318d、318e、318f、318g、318h、318i、318j、318k、318l可组织成第一分区331、第二分区332、第三分区333及第四分区334,其中不同分区界定数据存储装置302中的存储空间的不同物理区域,使得不同种类的目录及文件可存储于不同分区中,或使得一个分区可用于不同于另一分区的目的。第一分区331可包括第一子集快闪存储器芯片318a到318c。第二分区332可包括第二子集快闪存储器芯片318d到318f。第三分区333可包括第三子集快闪存储器芯片318g到318i。第四分区334可包括第四子集快闪存储器芯片318j到318l。在不同分区331、332、333及334当中,不存在任何其物理存储器地址空间为两个或两个以上分区的部分的个别快闪存储器芯片。也就是说,在个别快闪存储器芯片之间划出分区331、332、333及334之间的边界,以确保个别快闪存储器芯片不属于一个以上分区。
在图3B的系统中,经分割快闪存储器数据存储装置302可提供优越性能(例如,当用以存储待响应于查询而提供的数据语料库(例如,网页语料库)时)且个别分区可在服务于请求与用新信息更新之间交替。举例来说,在第一时间周期中,第一、第二及第三分区331、332及333可用以将信息提供到主机(例如,可响应于用户查询而请求的信息),同时更新第四分区334上的数据(例如,响应于对语料库的网页的改变或增加)。接着,在第二时间周期中,最近经更新的第四分区334连同第二及第三分区332及333可用以将信息提供到主机,同时更新第一分区331上的数据。因此,可以循环方式更新每一分区上的数据,同时由其它分区服务于查询请求。可重复此过程,使得数据总是从充当只读装置的分区来提供,且因此提供对来自主机的读取命令的非常快速的响应,而不会因写入命令减慢,同时正在用新信息更新另一分区。界定四个分区产生数据存储装置上所存储的信息的冗余,使得如果一分区、通道或个别存储器芯片出故障而导致一个分区不再可用,那么剩余三个分区可继续用以提供数据存储装置,其中轮流更新所述剩余分区中的每一者,同时其它剩余分区服务于数据请求。
如上文所描述,数据存储装置302可经由接口308连接到主机350,接口308可为高速接口,例如(举例来说)PCIe接口。主机可包括(举例来说)处理器352、第一存储器354、第二存储器356及分区引擎360。第一存储器354可包括(举例来说)适于存储可由处理器352执行的机器可读、可执行代码指令的非易失性存储器装置(例如,硬磁盘)。第一存储器354上所存储的代码指令可加载到第二存储器(例如,易失性存储器,例如随机存取存储器)356中,在此处其可由处理器352执行以创建存储器装置检测引擎358及分区引擎360。第二存储器可包括专用于用户模式应用程序的“用户空间”的逻辑块及专用于运行用户级应用程序必须控制以执行其功能的较低级资源的“核心空间”364的逻辑块。存储器装置检测引擎358及分区引擎360可驻存于第二存储器356的核心空间364中。
配置检测引擎358可经配置以检测数据存储装置302上的快闪存储器芯片318的数目,且分区引擎360可经配置以界定所述数据存储装置的第一分区321及第二分区322。因此,在主机350上运行的配置检测引擎358及分区引擎360可由主机用来发现数据存储装置302的硬件装置性质且接着经由主机界定分区321及322。在一个实施方案中,配置检测引擎358可向数据存储装置发出查询命令,且响应于所述查询命令,数据存储装置可将关于(举例来说)快闪存储器芯片318的数目、每一芯片的大小(例如,按字节测量)、数据存储装置中的通道的数目及每一通道控制器312a到312e可操作地连接到的快闪存储器芯片的信息返回到主机。此信息可存储于FPGA 310的EEPROM 116上及/或数据存储装置302的快闪板的EEPROM 120a上。配置检测引擎可轮询EEPROM116或EEPROM 120a(例如,在主机350的启动操作期间)以致使数据存储装置将此信息返回到主机350。在另一实施方案中,主机可轮询快闪存储器芯片318以提供关于(举例来说)快闪存储器芯片318的数目、每一芯片的大小(例如,按字节测量)、数据存储装置中的通道的数目、每一通道控制器312a到312e可操作地连接到的快闪存储器芯片的信息。
分区引擎360可从存储器装置检测引擎358接收关于快闪芯片318的数目、每一快闪芯片的大小、通道的数目及每一通道可操作地连接到的存储器芯片的信息,且基于此信息,分区引擎可界定数据存储装置302中的第一分区321及第二分区322。在主机350上运行的分区引擎可将第一分区界定为包括从存储器芯片318的第一子集抽取的存储器块及从存储器芯片318的第二子集抽取的第二分区存储器块,其中所述第一子集不包括所述第二子集中的任何个别快闪芯片且所述第二子集不包括所述第一子集中的任何个别快闪芯片。分区引擎360接着可将物理存储器块地址(其可包括(举例来说)唯一通道编号、唯一快闪存储器芯片编号及快闪存储器芯片内的块地址)映射到可由在用户空间中运行的应用程序使用的逻辑地址,使得在主机350上运行的用户空间应用程序可参照逻辑空间地址从数据存储装置302读取数据及向数据存储装置302写入数据。
在已界定多个分区的分区方案且已将数据存储于数据存储装置100的快闪存储器芯片上之后,所述装置可将关于分割方案的信息存储于(例如)存储器116上,使得当在稍后时间引导所述装置时,其可将所述分割方案传递到主机106以供主机使用。举例来说,所述装置可维持关于所述数据存储装置的物理配置的信息(包括所述装置中的快闪存储器芯片的数目)及关于所述分割方案的信息(包括哪些快闪存储器存储芯片及通道与存储器116上的哪些分区相关联)。接着,当引导包括主机106及数据存储装置100的系统时,存储装置100可(例如)响应于由主机106的配置检测引擎358执行的读取操作而将此信息传递到主机106。主机106的分割引擎360接着可界定在主机上运行的操作系统及应用程序的分区。举例来说,分割引擎360可基于从存储装置100读取的信息来界定第一及第二分区,其中所述第一及第二分区不包括相同存储器芯片中的任一者。分割引擎360还可分配第一及第二分区的逻辑/物理存储器映射,使得用户级应用程序可使用逻辑地址,所述逻辑地址接着被映射到存储装置100的快闪存储器芯片的物理存储器地址。
分区引擎360还可用以将数据存储装置的第一分区重新界定为包括所述多个快闪存储器芯片的第三子集,其中所述第三子集不同于所述第一子集,且其中所述第三子集不包括所述第二子集中的任何快闪存储器芯片且其中所述第二子集不包括所述第三子集中的任何快闪存储器芯片。举例来说,参照图3A及图3B,用户可决定图3A中所示的原始分区方案不适合他或她的需要,且因此可使用主机来重新界定分区321及322(例如,以在特定分区中包括更多或更少的快闪存储器芯片)或向所述方案添加额外分区。在一个实施方案中,第一分区321可重新界定为分区331及333。允许用户经由主机界定分区而非迫使用户接受由控制器310预界定或预加载于控制器310中的分区方案给予用户按照他或她的期望来界定分区且在需要产生时改变分区方案的灵活性。在另一实施方案中,主机可检测快闪存储器芯片中的一者(例如,318a)的即将来临的故障,且响应于此信息,分区引擎可将第一分区321重新界定为从分区排除快闪存储器芯片318a,即重新界定为除存储器芯片318a以外的原始界定的第一分区。因此,可界定任何数目个分区(多达存储装置100中的快闪存储器芯片118a及118b的数目),且分区方案内的不同分区可包括不同数目个快闪存储器芯片且可包括不同量的存储器空间。
主机还可包括地址指派引擎366,地址指派引擎366可存在于核心364中且可给待写入到数据存储装置302的数据指派物理存储器地址。举例来说,在用户空间362中运行的应用程序可要求将数据从主机350写入到数据存储装置302,且用户空间应用程序可规定将数据写入到特定逻辑存储器地址。地址指派引擎366可将逻辑地址翻译成物理地址,所述物理地址可包括(举例来说)应将数据写入到的特定通道、可操作地连接到应将数据写入到其的所述所规定通道的特定快闪存储器芯片及应将数据写入到其的所述所规定存储器芯片的特定物理块地址。在此实施方案中,逻辑地址到物理存储器空间地址的翻译可由地址指派引擎366来执行,使得FPGA 210的DRAM控制器254的作用减小或不相关。
图4是图解说明分割图1的数据存储装置的实例性过程400的示范性流程图,其中所述装置包括多个快闪存储器芯片。过程400可包括确定数据存储装置中的快闪存储器芯片的数目402。举例来说,配置检测引擎可查询数据存储装置以收集关于数据存储装置中的快闪存储器芯片的数目的信息。可经由耦合到数据存储装置的主机来界定数据存储装置的第一分区,其中所述第一分区包括所述多个快闪存储器芯片的第一子集404。可经由主机来界定数据存储装置的第二分区,其中所述第二分区包括所述多个快闪存储器芯片的第二子集406。作为此过程的结果,确保第一子集不包括第二子集中的任何快闪存储器芯片且第二子集不包括第一子集中的任何快闪存储器芯片。
任选地,过程400可包括在从第二分区读取数据的同时将数据写入到第一分区408。确定数据存储装置中的快闪存储器芯片的数目可包括将指示数据存储装置中的快闪存储器芯片的数目的信息从数据存储装置传输到主机410。可在主机中界定所述数据存储装置中的将从主机向其写入数据的地址位置,其中所述地址位置规定将所述数据写入到所述多个存储器芯片中的特定一者412。
当数据存储装置包括用于在主机与多个快闪存储器芯片之间传递数据的多个物理通道时,其中每一通道可操作地连接到不同多个所述存储器芯片,过程400可进一步包括:确定物理通道的数目414;确定所述通道的第一子集,其中所述通道的所述第一子集中的通道仅可操作地连接到存储器芯片的第一子集中的存储器芯片416;确定所述通道的第二子集,其中所述通道的所述第二子集中的通道仅可操作地连接到存储器芯片的第二子集中的存储器芯片418;及在主机中界定数据存储装置中的将从主机向其写入数据的地址位置,其中所述地址位置规定经由特定通道将数据写入到所述多个存储器芯片中的特定一者420。另外,过程400可包括经由耦合到数据存储装置的主机将数据存储装置的第一分区重新界定为包括所述多个快闪存储器芯片的第三子集422。
图5是图解说明分割包括多个快闪存储器芯片的数据存储装置的实例性过程500的另一示范性流程图。过程500可包括读取所述数据存储装置的物理配置,其中包括所述数据存储装置中的快闪存储器芯片的数目502。所述过程还可包括读取所述数据存储装置的分割方案504。举例来说,配置检测引擎可从所述数据存储装置的存储器116读取所述物理配置及所述分割方案。耦合到所述数据存储装置的主机可界定所述数据存储装置的第一分区,其中所述第一分区包括所述多个快闪存储器芯片的第一子集506,且可分配所述第一分区的逻辑/物理存储器映射508。所述主机可界定所述数据存储装置的第二分区,其中所述第二分区包括所述多个快闪存储器芯片的第二子集510,且其中所述第一子集不包括所述第二子集中的任何快闪存储器芯片,且其中所述第二子集不包括所述第一子集中的任何快闪存储器芯片,且可分配所述第二分区的逻辑/物理存储器映射512。
本文中所描述的各种技术的实施方案可以数字电子电路或者以计算机硬件、固件、软件或其组合来实施。实施方案可实施为计算机程序产品,即,有形地体现于信息载体中(例如,体现于机器可读存储装置中)的计算机程序,以由数据处理设备(例如,可编程处理器、一计算机或多个计算机)执行或控制所述数据处理设备的操作。可以任何形式的编程语言(包含编译语言或解译语言)来编写计算机程序(例如,上文所描述的计算机程序),且可以任何形式来部署所述计算机程序,包含部署为独立程序或部署为模块、组件、子例程或适合在计算环境中使用的其它单元。计算机程序可经部署以在一个计算机上或在位于一个位点处或跨越多个位点分布且由通信网络互连的多个计算机上执行。
方法步骤可由执行计算机程序的一个或一个以上可编程处理器执行,以通过对输入数据进行操作并产生输出来执行功能。方法步骤还可由专用逻辑电路(例如,FPGA或ASIC(专用集成电路))执行,且设备可实施为专用逻辑电路。
举例来说,适合执行计算机程序的处理器包括通用及专用微处理器两者,以及任何种类的数字计算机的任何一个或一个以上处理器。一般来说,处理器将从只读存储器或随机存取存储器或两者接收指令及数据。计算机的元件可包括用于执行指令的至少一个处理器及用于存储指令及数据的一个或一个以上存储器装置。一般来说,计算机还可包括用于存储数据的一个或一个以上大容量存储装置(例如,磁盘、磁光盘或光盘),或经操作地耦合以从所述一个或一个以上大容量存储装置接收数据或向其传送数据或既接收数据又传送数据。适合包含计算机程序指令及数据的信息载体包括所有形式的非易失性存储器,其中包括(举例来说):半导体存储器装置,例如EPROM、EEPROM及快闪存储器装置;磁盘,例如内部硬磁盘或可抽换式磁盘;磁光盘;及CD-ROM及DVD-ROM光盘。所述处理器及存储器可由专用逻辑电路补充或并入于专用逻辑电路中。
为提供与用户的交互,实施方案可实施于计算机上,所述计算机具有用于向所述用户显示信息的显示装置(例如,阴极射线管(CRT)或液晶显示器(LCD)监视器)及所述用户可通过其来向计算机提供输入的键盘及指向装置(例如,鼠标或轨迹球)。也可使用其它种类的装置来提供与用户的交互;举例来说,提供给所述用户的反馈可为任何形式的感观反馈,例如,视觉反馈、听觉反馈或触觉反馈;且来自所述用户的输入可以任何形式来接收,其中包括声音、语音或触觉输入。
实施方案可实施于计算系统(包括后端组件,例如,作为数据服务器;或包括中间件组件,例如,应用程序服务器;或包括前端组件,例如,具有用户可经由其来与实施方案交互的图形用户接口或Web浏览器的客户端计算机)或此类后端、中间件或前端组件的任一组合中。组件可由任何数字数据通信形式或媒体(例如,通信网络)互连。通信网络的实例包括局域网(LAN)及广域网(WAN),例如因特网。
虽然本文已图解说明及描述了所描述实施方案的某些特征,然而所属领域的技术人员现在将能想出许多修改、替代、改变及等效形式。因此,应理解,所附权利要求书打算涵盖归属于本发明的范围内的所有此类修改及改变。

Claims (23)

1.一种分割数据存储装置(100、302)的方法,其中所述装置包括多个存储器芯片(118a、118b、218、318),所述方法包含:
确定(402)所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的数目;
经由耦合到所述数据存储装置(100、302)的主机(106、350)界定(404)所述数据存储装置(100、302)的第一分区(321、331),其中所述第一分区(321、331)包括所述多个存储器芯片(118a、118b、218、318)的第一子集;
经由耦合到所述数据存储装置(100、302)的所述主机(106、350)界定(406)所述数据存储装置(100、302)的第二分区(322、332),其中所述第二分区(322、332)包括所述多个存储器芯片(118a、118b、218、318)的第二子集;
其中所述第一子集不包括所述第二子集中的任何存储器芯片(118a、118b、218、318),且其中所述第二子集不包括所述第一子集中的任何存储器芯片(118a、118b、218、318)。
2.根据权利要求1所述的方法,其进一步包含:
在从所述第二分区(322、332)读取数据的同时将数据写入到所述第一分区(321、331)。
3.根据前述权利要求中任一权利要求所述的方法,其中确定所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的数目包括将指示所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的所述数目的信息从所述数据存储装置(100、302)传输到所述主机(106、350)。
4.根据前述权利要求中任一权利要求所述的方法,其进一步包含在所述主机(106、350)中界定(412)所述数据存储装置(100、302)中的将从所述主机(106、350)向其写入数据的地址位置,其中所述地址位置规定将所述数据写入到所述多个存储器芯片(118a、118b、218、318)中的特定一者。
5.根据前述权利要求中任一权利要求所述的方法,其中所述数据存储装置(100、302)包括用于在所述主机(106、350)与所述多个存储器芯片(118a、118b、218、318)之间传递数据的多个物理通道(112),每一通道可操作地连接到不同多个所述存储器芯片(118a、118b、218、318),所述方法进一步包含:
确定(414)物理通道(112)的数目;
确定(416)所述通道(112)的第一子集,其中所述通道(112)的所述第一子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第一子集中的存储器芯片(118a、118b、218、318);
确定(418)所述通道(112)的第二子集,其中所述通道(112)的所述第二子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第二子集中的存储器芯片(118a、118b、218、318);及
在所述主机(106、350)中界定(420)所述数据存储装置(100、302)中的将从所述主机(106、350)向其写入数据的地址位置,其中所述地址位置规定经由特定通道将所述数据写入到所述多个存储器芯片(118a、118b、218、318)中的特定一者。
6.根据前述权利要求中任一权利要求所述的方法,其中所述第一分区(321、331)包括可操作地连接到单个通道的存储器芯片(118a、118b、218、318)。
7.根据前述权利要求中任一权利要求所述的方法,其进一步包含:
经由耦合到所述数据存储装置(100、302)的所述主机(106、350)将所述数据存储装置(100、302)的所述第一分区(321、331)重新界定(422)为包括所述多个存储器芯片(118a、118b、218、318)的第三子集,
其中所述第三子集不同于所述第一子集,且
其中所述第三子集不包括所述第二子集中的任何存储器芯片(118a、118b、218、318),且其中所述第二子集不包括所述第三子集中的任何存储器芯片(118a、118b、218、318)。
8.根据前述权利要求中任一权利要求所述的方法,其进一步包含:
接收所述第一子集中的所述存储器芯片(118a、118b、218、318)中的一者已出故障或接近出故障的指示;
其中重新界定(422)所述第一分区(321、331)包括将所述第三子集界定为所述第一子集的除已出故障或接近出故障的所述存储器芯片以外的存储器芯片(118a、118b、218、318)。
9.一种设备,其包含:
数据存储装置(100、302),其包括多个存储器芯片(118a、118b、218、318);
主机(106、350),其经由接口可操作地耦合到所述数据存储装置(100、302),所述主机(106、350)包含:
配置检测引擎(358),其经配置以检测所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的数目;
分区引擎(360),其配置以:界定所述数据存储装置(100、302)的第一分区(321、331),其中所述第一分区(321、331)包括所述多个存储器芯片(118a、118b、218、318)的第一子集;及界定所述数据存储装置(100、302)的第二分区(322、332),其中所述第二分区(322、332)包括所述多个存储器芯片(118a、118b、218、318)的第二子集;
其中所述第一子集不包括所述第二子集中的任何存储器芯片(118a、118b、218、318),且其中所述第二子集不包括所述第一子集中的任何存储器芯片(118a、118b、218、318)。
10.根据权利要求9所述的设备,其中所述数据存储装置(100、302)经配置以在从所述主机(106、350)接收到命令后即刻将指示所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的所述数目的信息从所述数据存储装置(100、302)传输到所述主机(106、350)。
11.根据权利要求9到10中任一权利要求所述的设备,其中所述主机(106、350)进一步包含经配置以给待写入到所述数据存储装置(100、302)的数据指派存储器地址的地址指派引擎(366),其中所述所指派存储器地址规定将所述数据写入到所述多个存储器芯片(118a、118b、218、318)中的特定一者。
12.根据权利要求9到11中任一权利要求所述的设备,其中所述数据存储装置(100、302)包括用于在所述主机(106、350)与所述多个存储器芯片(118a、118b、218、318)之间传递数据的多个物理通道(112),每一通道可操作地连接到不同多个所述存储器芯片(118a、118b、218、318),且
其中所述配置检测引擎(358)进一步经配置以检测所述数据存储装置(100、302)中的通道(112)的数目;
其中所述分区引擎(360)进一步经配置以界定所述通道(112)的第一子集,其中所述通道(112)的所述第一子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第一子集中的存储器芯片(118a、118b、218、318);且
其中所述分区引擎(360)进一步经配置以界定所述通道(112)的第二子集,其中所述通道(112)的所述第二子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第二子集中的存储器芯片(118a、118b、218、318)。
13.根据权利要求9到12中任一权利要求所述的设备,其中所述主机(106、350)进一步包含经配置以给待写入到所述数据存储装置(100、302)的数据指派存储器地址的地址指派引擎(366),其中所述所指派存储器地址规定经由特定通道将所述数据写入到所述多个存储器芯片(118a、118b、218、318)中的特定一者。
14.根据权利要求9到13中任一权利要求所述的设备,其中所述第一分区(321、331)包括可操作地连接到单个通道的存储器芯片(118a、118b、218、318)。
15.根据权利要求9到14中任一权利要求所述的设备,其中所述分区引擎(360)进一步经配置以将所述数据存储装置(100、302)的所述第一分区(321、331)重新界定为包括所述多个存储器芯片(118a、118b、218、318)的第三子集,
其中所述第三子集不同于所述第一子集,且
其中所述第三子集不包括所述第二子集中的任何存储器芯片(118a、118b、218、318),且其中所述第二子集不包括所述第三子集中的任何存储器芯片(118a、118b、218、318)。
16.根据权利要求15所述的设备,其中所述分区引擎(360)进一步经配置以接收所述第一子集中的所述存储器芯片(118a、118b、218、318)中的一者已出故障或接近出故障的指示;且
其中将所述第一分区(321、331)重新界定为包括所述多个存储器芯片(118a、118b、218、318)的所述第三子集包括将所述第三子集界定为所述第一子集的除已出故障或接近出故障的所述存储器芯片以外的存储器芯片(118a、118b、218、318)。
17.一种分割数据存储装置(100、302)的方法,其中所述装置包括多个存储器芯片(118a、118b、218、318),所述方法包含:
读取(502)所述数据存储装置(100、302)的物理配置,其中包括所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的数目;
读取(504)所述数据存储装置(100、302)的分割方案;
经由耦合到所述数据存储装置(100、302)的主机(106、350)界定(506)所述数据存储装置(100、302)的第一分区(321、331),其中所述第一分区(321、331)包括所述多个存储器芯片(118a、118b、218、318)的第一子集;
分配(508)所述第一分区(321、331)的逻辑/物理存储器映射;
经由耦合到所述数据存储装置(100、302)的所述主机(106、350)界定(510)所述数据存储装置(100、302)的第二分区(322、332),其中所述第二分区(322、332)包括所述多个存储器芯片(118a、118b、218、318)的第二子集;及
分配(512)所述第二分区(322、332)的逻辑/物理存储器映射,
其中所述第一子集不包括所述第二子集中的任何存储器芯片(118a、118b、218、318),且其中所述第二子集不包括所述第一子集中的任何存储器芯片(118a、118b、218、318)。
18.根据权利要求17所述的方法,其进一步包含:
在从所述第二分区(322、332)读取数据的同时将数据写入到所述第一分区(321、331)。
19.根据权利要求17到18中任一权利要求所述的方法,其中所述数据存储装置(100、302)包括用于在所述主机(106、350)与所述多个存储器芯片(118a、118b、218、318)之间传递数据的多个物理通道(112),每一通道可操作地连接到不同多个所述存储器芯片(118a、118b、218、318),其中所述数据存储装置(100、302)的所述物理配置进一步包括所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的所述数目,所述方法进一步包含:
确定所述通道(112)的第一子集,其中所述通道(112)的所述第一子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第一子集中的存储器芯片(118a、118b、218、318);
确定所述通道(112)的第二子集,其中所述通道(112)的所述第二子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第二子集中的存储器芯片(118a、118b、218、318);及
在所述主机(106、350)中界定所述数据存储装置(100、302)中的将从所述主机(106、350)向其写入数据的地址位置,其中所述地址位置规定经由特定通道将所述数据写入到所述多个存储器芯片(118a、118b、218、318)中的特定一者。
20.一种设备,其包含:
数据存储装置(100、302),其包括多个存储器芯片(118a、118b、218、318);
主机(106、350),其经由接口可操作地耦合到所述数据存储装置(100、302),所述主机(106、350)包含:
配置检测引擎(358),其经配置以读取所述数据存储装置(100、302)的物理配置,其中包括所述数据存储装置(100、302)中的存储器芯片(118a、118b、218、318)的数目,且经配置以读取所述数据存储装置(100、302)的分割方案;
分区引擎(360),其经配置以:界定所述数据存储装置(100、302)的第一分区(321、331),其中所述第一分区(321、331)包括所述多个存储器芯片(118a、118b、218、318)的第一子集;及界定所述数据存储装置(100、302)的第二分区(322、332),其中所述第二分区(322、332)包括所述多个存储器芯片(118a、118b、218、318)的第二子集,且经配置以分配所述第一分区(321、331)的逻辑/物理存储器映射且分配所述第二分区(322、332)的逻辑/物理存储器映射;
其中所述第一子集不包括所述第二子集中的任何存储器芯片(118a、118b、218、318),且其中所述第二子集不包括所述第一子集中的任何存储器芯片(118a、118b、218、318)。
21.根据权利要求20所述的设备,其中所述数据存储装置(100、302)经配置以在从所述主机(106、350)接收到命令后即刻将指示所述数据存储装置(100、302)的所述物理配置的信息从所述数据存储装置(100、302)传输到所述主机(106、350)。
22.根据权利要求20到21中任一权利要求所述的设备,其中所述数据存储装置(100、302)包括用于在所述主机(106、350)与所述多个存储器芯片(118a、118b、218、318)之间传递数据的多个物理通道(112),每一通道可操作地连接到不同多个所述存储器芯片(118a、118b、218、318),且
其中所述数据存储装置(100、302)的所述物理配置进一步包括所述数据存储装置(100、302)中的通道(112)的数目;
其中所述分区引擎(360)进一步经配置以界定所述通道(112)的第一子集,其中所述通道(112)的所述第一子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第一子集中的存储器芯片(118a、118b、218、318);且
其中所述分区引擎(360)进一步经配置以界定所述通道(112)的第二子集,其中所述通道(112)的所述第二子集中的通道(112)仅可操作地连接到存储器芯片(118a、118b、218、318)的所述第二子集中的存储器芯片(118a、118b、218、318)。
23.根据权利要求21到22中任一权利要求所述的设备,其中所述第一分区(321、331)包括可操作地连接到单个通道的存储器芯片(118a、118b、218、318)。
CN2010800204899A 2009-04-08 2010-04-05 分割快闪存储器数据存储装置 Pending CN102428452A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US16770909P 2009-04-08 2009-04-08
US61/167,709 2009-04-08
US18783509P 2009-06-17 2009-06-17
US61/187,835 2009-06-17
US12/537,741 2009-08-07
US12/537,741 US8639871B2 (en) 2009-04-08 2009-08-07 Partitioning a flash memory data storage device
PCT/US2010/029917 WO2010117929A1 (en) 2009-04-08 2010-04-05 Partitioning a flash memory data storage device

Publications (1)

Publication Number Publication Date
CN102428452A true CN102428452A (zh) 2012-04-25

Family

ID=42935237

Family Applications (6)

Application Number Title Priority Date Filing Date
CN2010800205069A Pending CN102428454A (zh) 2009-04-08 2010-04-01 数据存储装置
CN201080020319.0A Active CN102428451B (zh) 2009-04-08 2010-04-01 用于数据存储装置的命令及中断分组
CN201711055987.7A Pending CN107832010A (zh) 2009-04-08 2010-04-01 数据存储装置
CN2010800204884A Pending CN102428455A (zh) 2009-04-08 2010-04-05 快闪存储器数据存储装置中的数据分条
CN2010800205073A Pending CN102428453A (zh) 2009-04-08 2010-04-05 用于在快闪存储器数据存储装置中存储数据的方法及设备
CN2010800204899A Pending CN102428452A (zh) 2009-04-08 2010-04-05 分割快闪存储器数据存储装置

Family Applications Before (5)

Application Number Title Priority Date Filing Date
CN2010800205069A Pending CN102428454A (zh) 2009-04-08 2010-04-01 数据存储装置
CN201080020319.0A Active CN102428451B (zh) 2009-04-08 2010-04-01 用于数据存储装置的命令及中断分组
CN201711055987.7A Pending CN107832010A (zh) 2009-04-08 2010-04-01 数据存储装置
CN2010800204884A Pending CN102428455A (zh) 2009-04-08 2010-04-05 快闪存储器数据存储装置中的数据分条
CN2010800205073A Pending CN102428453A (zh) 2009-04-08 2010-04-05 用于在快闪存储器数据存储装置中存储数据的方法及设备

Country Status (7)

Country Link
US (13) US8205037B2 (zh)
EP (6) EP2728488B1 (zh)
JP (6) JP5922016B2 (zh)
CN (6) CN102428454A (zh)
AU (5) AU2010234772B2 (zh)
DE (6) DE202010017661U1 (zh)
WO (5) WO2010117878A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104885062A (zh) * 2012-12-10 2015-09-02 谷歌公司 使用逻辑到物理映射以与数据存储装置进行直接用户空间通信
CN107533865A (zh) * 2015-05-18 2018-01-02 长瀬产业株式会社 半导体装置及信息写入/读取方法
CN111984186A (zh) * 2019-05-23 2020-11-24 爱思开海力士有限公司 装置及其操作方法

Families Citing this family (322)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019940B2 (en) 2006-12-06 2011-09-13 Fusion-Io, Inc. Apparatus, system, and method for a front-end, distributed raid
US8935302B2 (en) 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching data
US7975109B2 (en) 2007-05-30 2011-07-05 Schooner Information Technology, Inc. System including a fine-grained memory and a less-fine-grained memory
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
US9519540B2 (en) 2007-12-06 2016-12-13 Sandisk Technologies Llc Apparatus, system, and method for destaging cached data
US8732386B2 (en) * 2008-03-20 2014-05-20 Sandisk Enterprise IP LLC. Sharing data fabric for coherent-distributed caching of multi-node shared-distributed flash memory
US8229945B2 (en) 2008-03-20 2012-07-24 Schooner Information Technology, Inc. Scalable database management software on a cluster of nodes using a shared-distributed flash memory
JP2010015195A (ja) * 2008-06-30 2010-01-21 Toshiba Corp 記憶制御装置及び記憶制御方法
WO2010005430A1 (en) * 2008-07-08 2010-01-14 Hewlett-Packard Development Company, L.P. Adaptable external drive
TWI385672B (zh) * 2008-11-05 2013-02-11 Lite On It Corp 儲存裝置之適應性多通道控制器及其方法
TWI385517B (zh) * 2008-12-05 2013-02-11 Apacer Technology Inc Storage device and data management method
US20100287217A1 (en) * 2009-04-08 2010-11-11 Google Inc. Host control of background garbage collection in a data storage device
US8205037B2 (en) 2009-04-08 2012-06-19 Google Inc. Data storage device capable of recognizing and controlling multiple types of memory chips operating at different voltages
US8447918B2 (en) 2009-04-08 2013-05-21 Google Inc. Garbage collection for failure prediction and repartitioning
KR101516580B1 (ko) 2009-04-22 2015-05-11 삼성전자주식회사 컨트롤러, 이를 포함하는 데이터 저장 장치 및 데이터 저장 시스템, 및 그 방법
EP2254280A1 (en) 2009-05-19 2010-11-24 Electrolux Home Products Corporation N.V. Bus control for a domestic appliance
EP2476055B1 (en) 2009-09-08 2020-01-22 SanDisk Technologies LLC Apparatus, system, and method for caching data on a solid-state storage device
US9223514B2 (en) 2009-09-09 2015-12-29 SanDisk Technologies, Inc. Erase suspend/resume for memory
EP2476079A4 (en) 2009-09-09 2013-07-03 Fusion Io Inc APPARATUS, SYSTEM, AND METHOD FOR STORAGE ALLOCATION
US8289801B2 (en) * 2009-09-09 2012-10-16 Fusion-Io, Inc. Apparatus, system, and method for power reduction management in a storage device
US8972627B2 (en) 2009-09-09 2015-03-03 Fusion-Io, Inc. Apparatus, system, and method for managing operations for data storage media
US8601222B2 (en) 2010-05-13 2013-12-03 Fusion-Io, Inc. Apparatus, system, and method for conditional and atomic storage operations
US9021158B2 (en) 2009-09-09 2015-04-28 SanDisk Technologies, Inc. Program suspend/resume for memory
US9122579B2 (en) 2010-01-06 2015-09-01 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for a storage layer
TWI454906B (zh) * 2009-09-24 2014-10-01 Phison Electronics Corp 資料讀取方法、快閃記憶體控制器與儲存系統
US8244946B2 (en) * 2009-10-16 2012-08-14 Brocade Communications Systems, Inc. Interrupt moderation
US8307151B1 (en) * 2009-11-30 2012-11-06 Micron Technology, Inc. Multi-partitioning feature on e-MMC
US8285946B2 (en) * 2009-12-15 2012-10-09 International Business Machines Corporation Reducing access contention in flash-based memory systems
KR101008923B1 (ko) * 2010-01-15 2011-01-17 주식회사 노바칩스 다양한 종류의 반도체 메모리 장치들을 구비하는 반도체 메모리 시스템 및 이의 제어 방법
US8819208B2 (en) 2010-03-05 2014-08-26 Solidfire, Inc. Data deletion in a distributed data storage system
US8725931B1 (en) 2010-03-26 2014-05-13 Western Digital Technologies, Inc. System and method for managing the execution of memory commands in a solid-state memory
US10210162B1 (en) * 2010-03-29 2019-02-19 Carbonite, Inc. Log file management
US9047351B2 (en) 2010-04-12 2015-06-02 Sandisk Enterprise Ip Llc Cluster of processing nodes with distributed global flash memory using commodity server technology
US8856593B2 (en) 2010-04-12 2014-10-07 Sandisk Enterprise Ip Llc Failure recovery using consensus replication in a distributed flash memory system
US8725951B2 (en) 2010-04-12 2014-05-13 Sandisk Enterprise Ip Llc Efficient flash memory-based object store
US9164554B2 (en) * 2010-04-12 2015-10-20 Sandisk Enterprise Ip Llc Non-volatile solid-state storage system supporting high bandwidth and random access
US8868487B2 (en) 2010-04-12 2014-10-21 Sandisk Enterprise Ip Llc Event processing in a flash memory-based object store
US20110252263A1 (en) * 2010-04-13 2011-10-13 Byungcheol Cho Semiconductor storage device
US8782327B1 (en) * 2010-05-11 2014-07-15 Western Digital Technologies, Inc. System and method for managing execution of internal commands and host commands in a solid-state memory
US9026716B2 (en) 2010-05-12 2015-05-05 Western Digital Technologies, Inc. System and method for managing garbage collection in solid-state memory
US8954385B2 (en) 2010-06-28 2015-02-10 Sandisk Enterprise Ip Llc Efficient recovery of transactional data stores
US8725934B2 (en) 2011-12-22 2014-05-13 Fusion-Io, Inc. Methods and appratuses for atomic storage operations
WO2012016089A2 (en) 2010-07-28 2012-02-02 Fusion-Io, Inc. Apparatus, system, and method for conditional and atomic storage operations
US8677028B2 (en) * 2010-08-23 2014-03-18 Qualcomm Incorporated Interrupt-based command processing
US8417877B2 (en) 2010-08-31 2013-04-09 Micron Technology, Inc Stripe-based non-volatile multilevel memory operation
US8984216B2 (en) 2010-09-09 2015-03-17 Fusion-Io, Llc Apparatus, system, and method for managing lifetime of a storage device
US9164886B1 (en) 2010-09-21 2015-10-20 Western Digital Technologies, Inc. System and method for multistage processing in a memory storage subsystem
US9021192B1 (en) 2010-09-21 2015-04-28 Western Digital Technologies, Inc. System and method for enhancing processing of memory access requests
US9003153B2 (en) 2010-11-08 2015-04-07 Greenliant Llc Method of storing blocks of data in a plurality of memory devices in a redundant manner, a memory controller and a memory system
US20120117305A1 (en) * 2010-11-08 2012-05-10 Greenliant Llc Method Of Storing Blocks Of Data In A Plurality Of Memory Devices For High Speed Sequential Read, A Memory Controller And A Memory System
JP5720204B2 (ja) * 2010-11-26 2015-05-20 富士通株式会社 アクセス制御プログラム、アクセス制御方法および情報処理装置
WO2012073071A1 (en) * 2010-12-02 2012-06-07 Freescale Semiconductor, Inc. Error correcting device, method for monitoring an error correcting device and data processing system
US10817421B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent data structures
US10817502B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent memory management
WO2012082792A2 (en) 2010-12-13 2012-06-21 Fusion-Io, Inc. Apparatus, system, and method for auto-commit memory
US9208071B2 (en) 2010-12-13 2015-12-08 SanDisk Technologies, Inc. Apparatus, system, and method for accessing memory
US9218278B2 (en) 2010-12-13 2015-12-22 SanDisk Technologies, Inc. Auto-commit memory
US9047178B2 (en) 2010-12-13 2015-06-02 SanDisk Technologies, Inc. Auto-commit memory synchronization
US8601313B1 (en) 2010-12-13 2013-12-03 Western Digital Technologies, Inc. System and method for a data reliability scheme in a solid state memory
US8615681B2 (en) 2010-12-14 2013-12-24 Western Digital Technologies, Inc. System and method for maintaining a data redundancy scheme in a solid state memory in the event of a power loss
US8601311B2 (en) 2010-12-14 2013-12-03 Western Digital Technologies, Inc. System and method for using over-provisioned data capacity to maintain a data redundancy scheme in a solid state memory
WO2012083308A2 (en) 2010-12-17 2012-06-21 Fusion-Io, Inc. Apparatus, system, and method for persistent data management on a non-volatile storage media
US8473708B1 (en) * 2010-12-23 2013-06-25 Netapp, Inc. Method and system for managing storage units
US8694733B2 (en) 2011-01-03 2014-04-08 Sandisk Enterprise Ip Llc Slave consistency in a synchronous replication environment
US8700950B1 (en) 2011-02-11 2014-04-15 Western Digital Technologies, Inc. System and method for data error recovery in a solid state subsystem
US9003104B2 (en) 2011-02-15 2015-04-07 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a file-level cache
US8874823B2 (en) 2011-02-15 2014-10-28 Intellectual Property Holdings 2 Llc Systems and methods for managing data input/output operations
US9201677B2 (en) 2011-05-23 2015-12-01 Intelligent Intellectual Property Holdings 2 Llc Managing data input/output operations
US9141527B2 (en) 2011-02-25 2015-09-22 Intelligent Intellectual Property Holdings 2 Llc Managing cache pools
US8700951B1 (en) * 2011-03-09 2014-04-15 Western Digital Technologies, Inc. System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata
WO2012129191A2 (en) 2011-03-18 2012-09-27 Fusion-Io, Inc. Logical interfaces for contextual storage
US9563555B2 (en) 2011-03-18 2017-02-07 Sandisk Technologies Llc Systems and methods for storage allocation
US8601085B1 (en) * 2011-03-28 2013-12-03 Emc Corporation Techniques for preferred path determination
US8924627B2 (en) * 2011-03-28 2014-12-30 Western Digital Technologies, Inc. Flash memory device comprising host interface for processing a multi-command descriptor block in order to exploit concurrency
US8874515B2 (en) 2011-04-11 2014-10-28 Sandisk Enterprise Ip Llc Low level object version tracking using non-volatile memory write generations
US8694857B2 (en) * 2011-04-13 2014-04-08 Inphi Corporation Systems and methods for error detection and correction in a memory module which includes a memory buffer
US8954670B1 (en) * 2011-04-18 2015-02-10 American Megatrends, Inc. Systems and methods for improved fault tolerance in RAID configurations
US9817700B2 (en) * 2011-04-26 2017-11-14 International Business Machines Corporation Dynamic data partitioning for optimal resource utilization in a parallel data processing system
US9396106B2 (en) * 2011-05-12 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US9417894B1 (en) 2011-06-15 2016-08-16 Ryft Systems, Inc. Methods and apparatus for a tablet computer system incorporating a reprogrammable circuit module
US20120324143A1 (en) 2011-06-15 2012-12-20 Data Design Corporation Methods and apparatus for data access by a reprogrammable circuit module
US10966339B1 (en) 2011-06-28 2021-03-30 Amazon Technologies, Inc. Storage system with removable solid state storage devices mounted on carrier circuit boards
US8806112B2 (en) 2011-07-14 2014-08-12 Lsi Corporation Meta data handling within a flash media controller
US20130019052A1 (en) * 2011-07-14 2013-01-17 Vinay Ashok Somanache Effective utilization of flash interface
US8868867B2 (en) * 2011-09-15 2014-10-21 The Regents Of The University Of California Method for reducing latency of accessing data stored in a file system on a computer storage device by caching file system permission information in the computer storage device
US8966172B2 (en) 2011-11-15 2015-02-24 Pavilion Data Systems, Inc. Processor agnostic data storage in a PCIE based shared storage enviroment
US8842122B2 (en) * 2011-12-15 2014-09-23 Qualcomm Incorporated Graphics processing unit with command processor
US8719647B2 (en) * 2011-12-15 2014-05-06 Micron Technology, Inc. Read bias management to reduce read errors for phase change memory
US8904091B1 (en) * 2011-12-22 2014-12-02 Western Digital Technologies, Inc. High performance media transport manager architecture for data storage systems
CN102521160B (zh) * 2011-12-22 2015-04-01 上海交通大学 写缓冲检测器、并行通道写入方法
US9274937B2 (en) 2011-12-22 2016-03-01 Longitude Enterprise Flash S.A.R.L. Systems, methods, and interfaces for vector input/output operations
CN102567257B (zh) * 2011-12-26 2014-08-27 华中科技大学 一种控制多通道固态盘数据读写的方法
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
US9251086B2 (en) 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US10359972B2 (en) 2012-08-31 2019-07-23 Sandisk Technologies Llc Systems, methods, and interfaces for adaptive persistence
US9652182B2 (en) 2012-01-31 2017-05-16 Pavilion Data Systems, Inc. Shareable virtual non-volatile storage device for a server
US9378150B2 (en) * 2012-02-28 2016-06-28 Apple Inc. Memory management unit with prefetch ability
US9135064B2 (en) 2012-03-07 2015-09-15 Sandisk Enterprise Ip Llc Fine grained adaptive throttling of background processes
US9135192B2 (en) 2012-03-30 2015-09-15 Sandisk Technologies Inc. Memory system with command queue reordering
KR20130114354A (ko) 2012-04-09 2013-10-18 삼성전자주식회사 메모리 시스템 및 컨트롤러의 동작 방법
US20130339583A1 (en) * 2012-06-19 2013-12-19 Marvell World Trade Ltd. Systems and methods for transferring data out of order in next generation solid state drive controllers
US10339056B2 (en) 2012-07-03 2019-07-02 Sandisk Technologies Llc Systems, methods and apparatus for cache transfers
US9612966B2 (en) 2012-07-03 2017-04-04 Sandisk Technologies Llc Systems, methods and apparatus for a virtual machine cache
US9389999B2 (en) * 2012-08-17 2016-07-12 Infineon Technologies Ag System and method for emulating an EEPROM in a non-volatile memory device
US9122401B2 (en) * 2012-08-23 2015-09-01 Apple Inc. Efficient enforcement of command execution order in solid state drives
KR20140027859A (ko) 2012-08-27 2014-03-07 삼성전자주식회사 호스트 장치 및 이를 포함하는 시스템
US9009566B2 (en) * 2012-09-12 2015-04-14 Macronix International Co., Ltd. Outputting information of ECC corrected bits
US9471484B2 (en) 2012-09-19 2016-10-18 Novachips Canada Inc. Flash memory controller having dual mode pin-out
US10509776B2 (en) 2012-09-24 2019-12-17 Sandisk Technologies Llc Time sequence data management
US10318495B2 (en) 2012-09-24 2019-06-11 Sandisk Technologies Llc Snapshots for a non-volatile device
US8925098B2 (en) 2012-11-15 2014-12-30 Elwha Llc Data security and access tracking in memory
US9323499B2 (en) 2012-11-15 2016-04-26 Elwha Llc Random number generator functions in memory
US8996951B2 (en) 2012-11-15 2015-03-31 Elwha, Llc Error correction with non-volatile memory on an integrated circuit
US9582465B2 (en) * 2012-11-15 2017-02-28 Elwha Llc Flexible processors and flexible memory
US8966310B2 (en) 2012-11-15 2015-02-24 Elwha Llc Redundancy for loss-tolerant data in non-volatile memory
US9442854B2 (en) 2012-11-15 2016-09-13 Elwha Llc Memory circuitry including computational circuitry for performing supplemental functions
US9026719B2 (en) 2012-11-15 2015-05-05 Elwha, Llc Intelligent monitoring for computation in memory
CN103853629A (zh) * 2012-11-29 2014-06-11 艺伦半导体技术股份有限公司 数据流存储方法及现场可编程门阵列
US9448883B1 (en) * 2012-12-04 2016-09-20 Cadence Design Systems, Inc. System and method for allocating data in memory array having regions of varying storage reliability
US9069658B2 (en) 2012-12-10 2015-06-30 Google Inc. Using a virtual to physical map for direct user space communication with a data storage device
US9236136B2 (en) * 2012-12-14 2016-01-12 Intel Corporation Lower page read for multi-level cell memory
US9842660B1 (en) 2012-12-28 2017-12-12 Virident Systems, Llc System and method to improve enterprise reliability through tracking I/O performance metrics in non-volatile random access memory
US9286002B1 (en) * 2012-12-28 2016-03-15 Virident Systems Inc. Dynamic restriping in nonvolatile memory systems
US8965288B2 (en) 2012-12-31 2015-02-24 Elwha Llc Cost-effective mobile connectivity protocols
US9832628B2 (en) 2012-12-31 2017-11-28 Elwha, Llc Cost-effective mobile connectivity protocols
US9781664B2 (en) 2012-12-31 2017-10-03 Elwha Llc Cost-effective mobile connectivity protocols
US9635605B2 (en) 2013-03-15 2017-04-25 Elwha Llc Protocols for facilitating broader access in wireless communications
US9980114B2 (en) 2013-03-15 2018-05-22 Elwha Llc Systems and methods for communication management
US9713013B2 (en) 2013-03-15 2017-07-18 Elwha Llc Protocols for providing wireless communications connectivity maps
US9451394B2 (en) 2012-12-31 2016-09-20 Elwha Llc Cost-effective mobile connectivity protocols
US9876762B2 (en) 2012-12-31 2018-01-23 Elwha Llc Cost-effective mobile connectivity protocols
CN103942219A (zh) * 2013-01-22 2014-07-23 鸿富锦精密工业(深圳)有限公司 存储卡分区系统及方法
US9652376B2 (en) 2013-01-28 2017-05-16 Radian Memory Systems, Inc. Cooperative flash memory control
US10642505B1 (en) 2013-01-28 2020-05-05 Radian Memory Systems, Inc. Techniques for data migration based on per-data metrics and memory degradation
US11249652B1 (en) 2013-01-28 2022-02-15 Radian Memory Systems, Inc. Maintenance of nonvolatile memory on host selected namespaces by a common memory controller
US10445229B1 (en) 2013-01-28 2019-10-15 Radian Memory Systems, Inc. Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies
US9110592B2 (en) * 2013-02-04 2015-08-18 Microsoft Technology Licensing, Llc Dynamic allocation of heterogenous memory in a computing system
US8949537B2 (en) 2013-02-25 2015-02-03 Hitachi, Ltd. Storage control apparatus and method for detecting write completion of data
US9866706B2 (en) 2013-03-15 2018-01-09 Elwha Llc Protocols for facilitating broader access in wireless communications
US9706060B2 (en) 2013-03-15 2017-07-11 Elwha Llc Protocols for facilitating broader access in wireless communications
US9813887B2 (en) 2013-03-15 2017-11-07 Elwha Llc Protocols for facilitating broader access in wireless communications responsive to charge authorization statuses
US9807582B2 (en) 2013-03-15 2017-10-31 Elwha Llc Protocols for facilitating broader access in wireless communications
US9781554B2 (en) 2013-03-15 2017-10-03 Elwha Llc Protocols for facilitating third party authorization for a rooted communication device in wireless communications
US9021188B1 (en) 2013-03-15 2015-04-28 Virident Systems Inc. Small block write operations in non-volatile memory systems
US9843917B2 (en) 2013-03-15 2017-12-12 Elwha, Llc Protocols for facilitating charge-authorized connectivity in wireless communications
US9693214B2 (en) 2013-03-15 2017-06-27 Elwha Llc Protocols for facilitating broader access in wireless communications
US9596584B2 (en) 2013-03-15 2017-03-14 Elwha Llc Protocols for facilitating broader access in wireless communications by conditionally authorizing a charge to an account of a third party
US9706382B2 (en) 2013-03-15 2017-07-11 Elwha Llc Protocols for allocating communication services cost in wireless communications
US10073626B2 (en) 2013-03-15 2018-09-11 Virident Systems, Llc Managing the write performance of an asymmetric memory system
US9135164B2 (en) 2013-03-15 2015-09-15 Virident Systems Inc. Synchronous mirroring in non-volatile memory systems
US9842053B2 (en) 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
CN103226976A (zh) * 2013-03-19 2013-07-31 中国科学院声学研究所 一种基于FPGA实现多片Nandflash存储及读取的装置
CN104102599A (zh) * 2013-04-11 2014-10-15 华邦电子股份有限公司 快闪存储器装置与数据传输方法
US10558561B2 (en) 2013-04-16 2020-02-11 Sandisk Technologies Llc Systems and methods for storage metadata management
US10102144B2 (en) 2013-04-16 2018-10-16 Sandisk Technologies Llc Systems, methods and interfaces for data virtualization
US9842128B2 (en) 2013-08-01 2017-12-12 Sandisk Technologies Llc Systems and methods for atomic storage operations
US20150058529A1 (en) * 2013-08-21 2015-02-26 Sandisk Technologies Inc. Systems and methods of processing access requests at a data storage device
US9535870B2 (en) 2013-09-18 2017-01-03 HGST Netherlands B.V. Acknowledgement-less protocol for solid state drive interface
US9513869B2 (en) 2013-09-18 2016-12-06 HGST Netherlands B.V. Doorbell-less endpoint-initiated protocol for storage devices
TWI486775B (zh) * 2013-09-18 2015-06-01 Dexin Corp 輸入裝置及其資料傳輸方法
US9778859B2 (en) 2013-09-18 2017-10-03 Western Digital Technologies, Inc. Doorless protocol having multiple queue read requests in flight
CN105706071A (zh) * 2013-09-26 2016-06-22 英特尔公司 持久性存储器的块存储孔
US10019320B2 (en) 2013-10-18 2018-07-10 Sandisk Technologies Llc Systems and methods for distributed atomic storage operations
US10073630B2 (en) 2013-11-08 2018-09-11 Sandisk Technologies Llc Systems and methods for log coordination
CN103559156B (zh) * 2013-11-11 2016-04-06 北京大学 一种fpga与计算机之间的通信系统
US9529710B1 (en) * 2013-12-06 2016-12-27 Western Digital Technologies, Inc. Interleaved channels in a solid-state drive
CN103744744B (zh) * 2014-02-08 2017-08-25 威盛电子股份有限公司 数据储存装置以及易失性存储器的数据校验方法
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
US9666244B2 (en) 2014-03-01 2017-05-30 Fusion-Io, Inc. Dividing a storage procedure
US9423979B2 (en) 2014-03-10 2016-08-23 Kabushiki Kaisha Toshiba Memory system and memory controller for determining whether one or plurality of pointers can be stored in a second buffer and for executing data transfer between data buffer and host using the pointers
US9337869B2 (en) * 2014-04-30 2016-05-10 Storart Technology Co. Ltd. Encoding and syndrome computing co-design circuit for BCH code and method for deciding the same
US10481946B2 (en) * 2014-05-12 2019-11-19 Hitachi, Ltd. Information-processing device, processing method thereof, and input/output device
KR102211709B1 (ko) 2014-05-19 2021-02-02 삼성전자주식회사 신호 송수신 특성을 향상한 불휘발성 메모리 시스템, 호스트 장치, 불휘발성 메모리 시스템 및 호스트의 동작방법
US9460019B2 (en) 2014-06-26 2016-10-04 Intel Corporation Sending packets using optimized PIO write sequences without SFENCEs
US9477631B2 (en) 2014-06-26 2016-10-25 Intel Corporation Optimized credit return mechanism for packet sends
JP2016014972A (ja) * 2014-07-01 2016-01-28 富士通株式会社 通信制御装置,ストレージ装置及び通信制御プログラム
US10146482B2 (en) 2014-08-01 2018-12-04 Toshiba Memory Corporation Global error recovery system
US10552085B1 (en) 2014-09-09 2020-02-04 Radian Memory Systems, Inc. Techniques for directed data migration
US9542118B1 (en) 2014-09-09 2017-01-10 Radian Memory Systems, Inc. Expositive flash memory control
JP2016057876A (ja) * 2014-09-10 2016-04-21 富士通株式会社 情報処理装置、入出力制御プログラム、及び入出力制御方法
US9582201B2 (en) 2014-09-26 2017-02-28 Western Digital Technologies, Inc. Multi-tier scheme for logical storage management
TWI556254B (zh) * 2014-10-14 2016-11-01 慧榮科技股份有限公司 資料儲存裝置及其資料存取方法
US9632702B2 (en) 2014-10-15 2017-04-25 International Business Machines Corporation Efficient initialization of a thinly provisioned storage array
KR20160051367A (ko) * 2014-11-03 2016-05-11 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
US9712619B2 (en) 2014-11-04 2017-07-18 Pavilion Data Systems, Inc. Virtual non-volatile memory express drive
US9565269B2 (en) 2014-11-04 2017-02-07 Pavilion Data Systems, Inc. Non-volatile memory express over ethernet
KR101620260B1 (ko) * 2015-01-12 2016-05-12 엘지전자 주식회사 네트워크 시스템 및 그 제어방법
US9933950B2 (en) 2015-01-16 2018-04-03 Sandisk Technologies Llc Storage operation interrupt
CN105808444B (zh) * 2015-01-19 2019-01-01 东芝存储器株式会社 存储装置及非易失性存储器的控制方法
US10175885B2 (en) 2015-01-19 2019-01-08 Toshiba Memory Corporation Memory device managing data in accordance with command and non-transitory computer readable recording medium
WO2016122602A1 (en) * 2015-01-30 2016-08-04 Hewlett Packard Enterprise Development Lp Systems and methods for sharing non-volatile memory between multiple access models
US9946607B2 (en) 2015-03-04 2018-04-17 Sandisk Technologies Llc Systems and methods for storage error management
KR102364381B1 (ko) * 2015-03-06 2022-02-18 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작방법
KR102309798B1 (ko) * 2015-04-16 2021-10-06 삼성전자주식회사 Sr-iov 기반 비휘발성 메모리 컨트롤러 및 그 비휘발성 메모리 컨트롤러에 의해 큐에 리소스를 동적 할당하는 방법
CN104811235B (zh) * 2015-05-13 2018-07-06 朱洋 双架构的直升机远程通信域互动装置
US10169258B2 (en) 2015-06-09 2019-01-01 Rambus Inc. Memory system design using buffer(s) on a mother board
US9547441B1 (en) * 2015-06-23 2017-01-17 Pure Storage, Inc. Exposing a geometry of a storage device
US10552058B1 (en) 2015-07-17 2020-02-04 Radian Memory Systems, Inc. Techniques for delegating data processing to a cooperative memory controller
CA3034395A1 (en) * 2015-08-24 2017-03-02 Src Labs, Llc System and method for retaining dram data when reprogramming reconfigurable devices with dram memory controllers incorporating a data maintenance block colocated with a memory module or subsystem
US9578054B1 (en) * 2015-08-31 2017-02-21 Newman H-R Computer Design, LLC Hacking-resistant computer design
US9697320B2 (en) * 2015-09-24 2017-07-04 Qualcomm Incorporated Rectilinear macros having non-uniform channel spacing
US10073652B2 (en) * 2015-09-24 2018-09-11 International Business Machines Corporation Performance optimized storage vaults in a dispersed storage network
US9977623B2 (en) 2015-10-15 2018-05-22 Sandisk Technologies Llc Detection of a sequential command stream
US10467155B2 (en) * 2015-10-26 2019-11-05 Micron Technology, Inc. Command packets for the direct control of non-volatile memory channels within a solid state drive
JP2017084063A (ja) * 2015-10-27 2017-05-18 Tdk株式会社 メモリコントローラ、フラッシュメモリシステム及び電源電圧供給制御方法
US9996262B1 (en) 2015-11-09 2018-06-12 Seagate Technology Llc Method and apparatus to abort a command
US10572180B1 (en) * 2015-11-09 2020-02-25 Seagate Technology Llc Method and apparatus to perform a function level reset in a memory controller
US10282103B1 (en) * 2015-11-09 2019-05-07 Seagate Technology Llc Method and apparatus to delete a command queue
US9779043B2 (en) 2015-11-16 2017-10-03 International Business Machines Corporation Techniques for handling queued interrupts in a data processing system
US10210298B2 (en) 2015-11-24 2019-02-19 Altera Corporation Embedded memory blocks with adjustable memory boundaries
KR102446677B1 (ko) 2015-11-26 2022-09-23 삼성전자주식회사 스토리지 컨트롤러의 동작 방법 및 상기 스토리지 컨트롤러를 포함하는 데이터 저장 장치의 동작 방법
US10817528B2 (en) * 2015-12-15 2020-10-27 Futurewei Technologies, Inc. System and method for data warehouse engine
EP3377978A4 (en) * 2016-01-13 2019-06-05 Hewlett-Packard Enterprise Development LP RESTRUCTURED INPUT / OUTPUT REQUIREMENTS
JP6544246B2 (ja) * 2016-01-15 2019-07-17 富士通株式会社 不揮発性ストレージおよび不揮発性ストレージの処理方法
US9946596B2 (en) 2016-01-29 2018-04-17 Toshiba Memory Corporation Global error recovery system
US9817586B2 (en) * 2016-02-23 2017-11-14 Samsung Electronics Co., Ltd. Method of application aware IO completion mode changer for key value device
US10198315B2 (en) 2016-02-29 2019-02-05 Sandisk Technologies Llc Non-volatile memory with corruption recovery
US10192633B2 (en) * 2016-03-01 2019-01-29 Intel Corporation Low cost inbuilt deterministic tester for SOC testing
TWI610171B (zh) * 2016-03-22 2018-01-01 群聯電子股份有限公司 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
US10191358B2 (en) * 2016-04-13 2019-01-29 Angela Jorgensen Moving head projector system
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
TWI592864B (zh) * 2016-06-21 2017-07-21 慧榮科技股份有限公司 資料儲存裝置及其資料維護方法
US20180046409A1 (en) * 2016-08-10 2018-02-15 International Business Machines Corporation Mass storage devices packages and software-defined arrays of such packages
US10445018B2 (en) 2016-09-09 2019-10-15 Toshiba Memory Corporation Switch and memory device
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
US11874691B1 (en) 2016-09-26 2024-01-16 Splunk Inc. Managing efficient query execution including mapping of buckets to search nodes
US11550847B1 (en) 2016-09-26 2023-01-10 Splunk Inc. Hashing bucket identifiers to identify search nodes for efficient query execution
US11250056B1 (en) * 2016-09-26 2022-02-15 Splunk Inc. Updating a location marker of an ingestion buffer based on storing buckets in a shared storage system
US11860940B1 (en) 2016-09-26 2024-01-02 Splunk Inc. Identifying buckets for query execution using a catalog of buckets
US10956415B2 (en) 2016-09-26 2021-03-23 Splunk Inc. Generating a subquery for an external data system using a configuration file
US11163758B2 (en) 2016-09-26 2021-11-02 Splunk Inc. External dataset capability compensation
US11461334B2 (en) 2016-09-26 2022-10-04 Splunk Inc. Data conditioning for dataset destination
US11599541B2 (en) 2016-09-26 2023-03-07 Splunk Inc. Determining records generated by a processing task of a query
US11281706B2 (en) 2016-09-26 2022-03-22 Splunk Inc. Multi-layer partition allocation for query execution
US11620336B1 (en) 2016-09-26 2023-04-04 Splunk Inc. Managing and storing buckets to a remote shared storage system based on a collective bucket size
US11567993B1 (en) 2016-09-26 2023-01-31 Splunk Inc. Copying buckets from a remote shared storage system to memory associated with a search node for query execution
US11321321B2 (en) 2016-09-26 2022-05-03 Splunk Inc. Record expansion and reduction based on a processing task in a data intake and query system
US11593377B2 (en) 2016-09-26 2023-02-28 Splunk Inc. Assigning processing tasks in a data intake and query system
US11294941B1 (en) 2016-09-26 2022-04-05 Splunk Inc. Message-based data ingestion to a data intake and query system
US10353965B2 (en) 2016-09-26 2019-07-16 Splunk Inc. Data fabric service system architecture
US11442935B2 (en) 2016-09-26 2022-09-13 Splunk Inc. Determining a record generation estimate of a processing task
US20180089324A1 (en) 2016-09-26 2018-03-29 Splunk Inc. Dynamic resource allocation for real-time search
US11663227B2 (en) 2016-09-26 2023-05-30 Splunk Inc. Generating a subquery for a distinct data intake and query system
US11580107B2 (en) 2016-09-26 2023-02-14 Splunk Inc. Bucket data distribution for exporting data to worker nodes
US11269939B1 (en) 2016-09-26 2022-03-08 Splunk Inc. Iterative message-based data processing including streaming analytics
US11615104B2 (en) 2016-09-26 2023-03-28 Splunk Inc. Subquery generation based on a data ingest estimate of an external data system
US11243963B2 (en) 2016-09-26 2022-02-08 Splunk Inc. Distributing partial results to worker nodes from an external data system
US11222066B1 (en) 2016-09-26 2022-01-11 Splunk Inc. Processing data using containerized state-free indexing nodes in a containerized scalable environment
US11106734B1 (en) 2016-09-26 2021-08-31 Splunk Inc. Query execution using containerized state-free search nodes in a containerized scalable environment
US11562023B1 (en) 2016-09-26 2023-01-24 Splunk Inc. Merging buckets in a data intake and query system
US11232100B2 (en) 2016-09-26 2022-01-25 Splunk Inc. Resource allocation for multiple datasets
US11604795B2 (en) 2016-09-26 2023-03-14 Splunk Inc. Distributing partial results from an external data system between worker nodes
US11586627B2 (en) 2016-09-26 2023-02-21 Splunk Inc. Partitioning and reducing records at ingest of a worker node
US11314753B2 (en) 2016-09-26 2022-04-26 Splunk Inc. Execution of a query received from a data intake and query system
US11023463B2 (en) 2016-09-26 2021-06-01 Splunk Inc. Converting and modifying a subquery for an external data system
US11126632B2 (en) 2016-09-26 2021-09-21 Splunk Inc. Subquery generation based on search configuration data from an external data system
KR20180064588A (ko) * 2016-12-05 2018-06-15 에스케이하이닉스 주식회사 메모리 제어 장치 및 방법
JP6667629B2 (ja) 2016-12-29 2020-03-18 華為技術有限公司Huawei Technologies Co.,Ltd. 記憶システムおよびソリッドステートディスク
CN107102818A (zh) * 2017-03-16 2017-08-29 山东大学 一种基于sd卡的高速数据存储方法
US20180321855A1 (en) * 2017-05-03 2018-11-08 Samsung Electronics Co., Ltd. Multistreaming in heterogeneous environments
US9905294B1 (en) 2017-05-03 2018-02-27 Seagate Technology Llc Writing logically offset pages of data to N-level memory cells coupled to a common word line
CN107256363B (zh) * 2017-06-13 2020-03-06 杭州华澜微电子股份有限公司 一种由加解密模块阵列组成的高速加解密装置
US10606484B2 (en) * 2017-06-23 2020-03-31 Google Llc NAND flash storage device with NAND buffer
US11921672B2 (en) 2017-07-31 2024-03-05 Splunk Inc. Query execution at a remote heterogeneous data store of a data fabric service
CN108064374B (zh) 2017-08-10 2021-04-09 华为技术有限公司 一种数据访问方法、装置和系统
US11609623B2 (en) 2017-09-01 2023-03-21 Qualcomm Incorporated Ultra-low power neuromorphic artificial intelligence computing accelerator
US10896182B2 (en) 2017-09-25 2021-01-19 Splunk Inc. Multi-partitioning determination for combination operations
TWI685847B (zh) * 2017-10-12 2020-02-21 慧榮科技股份有限公司 資料儲存裝置之非揮發式記憶體的命名空間規劃
CN109656833B (zh) 2017-10-12 2022-11-11 慧荣科技股份有限公司 数据储存装置
US10908832B2 (en) * 2017-10-31 2021-02-02 Micron Technology, Inc. Common pool management
CN107728953B (zh) * 2017-11-03 2021-03-02 记忆科技(深圳)有限公司 一种提升固态硬盘混合读写性能的方法
CN107943726A (zh) * 2017-11-16 2018-04-20 郑州云海信息技术有限公司 一种基于PCIe接口的数据传输系统及方法
DE102018123494A1 (de) 2017-11-17 2019-05-23 Samsung Electronics Co., Ltd. Speichervorrichtung, die zum aktualisieren einesfeldprogrammierbaren gate-arrays ausgestaltetist, und betriebsverfahren dafür
CN108092730B (zh) * 2017-12-27 2019-04-26 中国电子科技集团公司第五十四研究所 一种适用于多设备的时序控制方法
US10628359B2 (en) * 2018-03-01 2020-04-21 EMC IP Holding Company LLC Storage management system and method
KR101936951B1 (ko) 2018-04-11 2019-01-11 주식회사 맴레이 메모리 제어 장치 및 이를 포함하는 메모리 시스템
US11334543B1 (en) 2018-04-30 2022-05-17 Splunk Inc. Scalable bucket merging for a data intake and query system
EP3573030B1 (en) * 2018-05-23 2023-10-11 Diebold Nixdorf Systems GmbH System and method to control the access on information of a peripheral storage device
KR102560251B1 (ko) 2018-06-20 2023-07-26 삼성전자주식회사 반도체 장치 및 반도체 시스템
US10884662B2 (en) * 2018-08-06 2021-01-05 Silicon Motion, Inc. Method for performing storage control in a storage server, associated memory device and memory controller thereof, and associated storage server
US11574659B2 (en) * 2018-09-11 2023-02-07 Micron Technology, Inc. Parallel access to volatile memory by a processing device for machine learning
CN110968449A (zh) * 2018-09-28 2020-04-07 方一信息科技(上海)有限公司 用于多通道闪存控制器的bch ecc纠错资源共享系统及方法
WO2020069074A1 (en) * 2018-09-28 2020-04-02 Burlywood, Inc. Write stream separation into multiple partitions
KR102576373B1 (ko) 2018-09-28 2023-09-07 에스케이하이닉스 주식회사 저장 공간을 동적으로 할당하는 제어 장치 및 이를 포함하는 데이터 저장 장치
US10817430B2 (en) * 2018-10-02 2020-10-27 Micron Technology, Inc. Access unit and management segment memory operations
KR20200053204A (ko) 2018-11-08 2020-05-18 삼성전자주식회사 저장 장치, 저장 장치의 동작 방법 및 저장 장치를 제어하는 호스트의 동작 방법
US10871907B2 (en) * 2018-12-31 2020-12-22 Micron Technology, Inc. Sequential data optimized sub-regions in storage devices
CN109979498A (zh) * 2019-01-24 2019-07-05 深圳市景阳信息技术有限公司 磁盘视频数据写入、读取的方法及装置
CN110046114B (zh) * 2019-03-06 2020-08-14 上海熠知电子科技有限公司 基于pcie协议的dma控制器及dma数据传输方法
CN109933291B (zh) * 2019-03-20 2022-05-06 浪潮商用机器有限公司 一种sram数据的处理方法、装置、设备及存储介质
JP7074705B2 (ja) * 2019-03-20 2022-05-24 キオクシア株式会社 メモリ装置及びメモリ装置の制御方法
WO2020220216A1 (en) 2019-04-29 2020-11-05 Splunk Inc. Search time estimate in data intake and query system
JP2022522437A (ja) * 2019-04-30 2022-04-19 長江存儲科技有限責任公司 コントローラ、機器および方法
EP3915030B1 (en) * 2019-04-30 2023-10-18 Hewlett-Packard Development Company, L.P. Storage of network credentials
CN110209606B (zh) * 2019-04-30 2021-01-22 杭州电子科技大学 一种基于PCIe的多接口存储设备的控制方法
US11715051B1 (en) 2019-04-30 2023-08-01 Splunk Inc. Service provider instance recommendations using machine-learned classifications and reconciliation
CN110175056B (zh) * 2019-05-30 2022-02-11 西安微电子技术研究所 一种异构平台远程动态加载多目标fpga的控制装置及控制方法
KR20200142219A (ko) 2019-06-12 2020-12-22 삼성전자주식회사 전자 장치 및 그의 저장 공간 이용 방법
KR20210012305A (ko) * 2019-07-24 2021-02-03 삼성전자주식회사 집적회로 장치, 시스템 온 칩 및 패킷 처리 방법
CN112394887A (zh) * 2019-08-17 2021-02-23 森大(深圳)技术有限公司 Onepass打印数据高效率处理方法、装置、设备及存储介质
CN110673989B (zh) * 2019-08-27 2023-05-16 国网浙江省电力有限公司电力科学研究院 一种背板系统的子板卡识别装置与方法
US11494380B2 (en) 2019-10-18 2022-11-08 Splunk Inc. Management of distributed computing framework components in a data fabric service system
KR20210054187A (ko) * 2019-11-05 2021-05-13 에스케이하이닉스 주식회사 메모리 시스템, 메모리 장치 및 메모리 시스템의 동작 방법
US11175984B1 (en) 2019-12-09 2021-11-16 Radian Memory Systems, Inc. Erasure coding techniques for flash memory
US11892956B2 (en) * 2019-12-31 2024-02-06 Micron Technology, Inc. Performance of memory system background operations
US11922222B1 (en) 2020-01-30 2024-03-05 Splunk Inc. Generating a modified component for a data intake and query system using an isolated execution environment image
KR20210156985A (ko) 2020-06-19 2021-12-28 삼성전자주식회사 일 함수 층들을 갖는 반도체 소자들
KR20210158607A (ko) 2020-06-24 2021-12-31 삼성전자주식회사 캡핑층을 포함하는 반도체 소자
KR20210158615A (ko) 2020-06-24 2021-12-31 삼성전자주식회사 게이트 라인을 포함하는 집적회로 소자
US11704313B1 (en) 2020-10-19 2023-07-18 Splunk Inc. Parallel branch operation using intermediary nodes
KR20220067872A (ko) * 2020-11-18 2022-05-25 에스케이하이닉스 주식회사 컨트롤러 및 컨트롤러의 동작방법
US11513980B2 (en) * 2021-01-21 2022-11-29 Silicon Motion, Inc. Method and apparatus for performing access management of memory device with aid of universal asynchronous receiver-transmitter connection
US20220350933A1 (en) * 2021-04-29 2022-11-03 EMC IP Holding Company LLC Methods and systems for securing data in a distributed storage system
US20230008974A1 (en) * 2021-07-08 2023-01-12 Toshiba Global Commerce Solutions Holdings Corporation Methods, systems, and computer program products configured to provide consistent look and feel for user input
CN115843379A (zh) * 2021-07-21 2023-03-24 美光科技公司 用来改进顺序存储器命令性能的存储器命令聚合
US20230120600A1 (en) * 2021-10-20 2023-04-20 Western Digital Technologies, Inc. Data Storage Devices, Systems, and Related Methods for Grouping Commands of Doorbell Transactions from Host Devices
KR102385572B1 (ko) 2021-11-02 2022-04-13 삼성전자주식회사 컨트롤러, 스토리지 장치 및 스토리지 장치의 동작 방법
CN116501670A (zh) * 2022-01-18 2023-07-28 联发科技(新加坡)私人有限公司 传感装置的中断处理方法及其集成电路
US20230266897A1 (en) * 2022-02-24 2023-08-24 Micron Technology, Inc. Dynamic zone group configuration at a memory sub-system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1440555A (zh) * 2000-06-29 2003-09-03 英特尔公司 块级边读边写的方法及装置
US20080065815A1 (en) * 2006-09-12 2008-03-13 Hiroshi Nasu Logical volume management method and logical volume management program
US20080320214A1 (en) * 2003-12-02 2008-12-25 Super Talent Electronics Inc. Multi-Level Controller with Smart Storage Transfer Manager for Interleaving Multiple Single-Chip Flash Memory Devices
US20090164698A1 (en) * 2007-12-24 2009-06-25 Yung-Li Ji Nonvolatile storage device with NCQ supported and writing method for a nonvolatile storage device

Family Cites Families (165)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4449182A (en) * 1981-10-05 1984-05-15 Digital Equipment Corporation Interface between a pair of processors, such as host and peripheral-controlling processors in data processing systems
US4777595A (en) * 1982-05-07 1988-10-11 Digital Equipment Corporation Apparatus for transferring blocks of information from one node to a second node in a computer network
EP0617363B1 (en) * 1989-04-13 2000-01-26 SanDisk Corporation Defective cell substitution in EEprom array
JPH0398972A (ja) * 1989-09-08 1991-04-24 Mitsubishi Electric Corp エレベータの制御装置
US5663901A (en) * 1991-04-11 1997-09-02 Sandisk Corporation Computer memory cards using flash EEPROM integrated circuit chips and memory-controller systems
EP0610677A3 (en) * 1993-02-12 1995-08-02 Ibm Communication device management module operating in two modes.
US5619687A (en) * 1994-02-22 1997-04-08 Motorola Inc. Queue system having a time-out feature and method therefor
JPH07234764A (ja) * 1994-02-22 1995-09-05 Toshiba Corp スケジューラ
JP3209634B2 (ja) * 1994-03-28 2001-09-17 株式会社日立製作所 計算機システム
JP3561002B2 (ja) * 1994-05-18 2004-09-02 富士通株式会社 ディスク装置
JPH0997124A (ja) * 1995-09-29 1997-04-08 Fujitsu Ltd 電子装置、メモリボード並びにメモリ装着機構
US5708814A (en) * 1995-11-21 1998-01-13 Microsoft Corporation Method and apparatus for reducing the rate of interrupts by generating a single interrupt for a group of events
JPH09305330A (ja) * 1996-05-15 1997-11-28 Oki Electric Ind Co Ltd ディスクアレイ装置
JPH10214221A (ja) * 1997-01-31 1998-08-11 Hitachi Ltd 制御装置及びメモリシステム
US6003112A (en) * 1997-06-30 1999-12-14 Intel Corporation Memory controller and method for clearing or copying memory utilizing register files to store address information
US5941998A (en) * 1997-07-25 1999-08-24 Samsung Electronics Co., Ltd. Disk drive incorporating read-verify after write method
US7088387B1 (en) * 1997-08-05 2006-08-08 Mitsubishi Electric Research Laboratories, Inc. Video recording device responsive to triggering event
US7158167B1 (en) * 1997-08-05 2007-01-02 Mitsubishi Electric Research Laboratories, Inc. Video recording device for a targetable weapon
DE19740525C1 (de) * 1997-09-15 1999-02-04 Siemens Ag Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug
JP3534585B2 (ja) * 1997-10-21 2004-06-07 株式会社日立製作所 フラッシュメモリを複数使用した外部記憶装置のデータ記憶制御方法及び装置
US6009478A (en) * 1997-11-04 1999-12-28 Adaptec, Inc. File array communications interface for communicating between a host computer and an adapter
US6175900B1 (en) * 1998-02-09 2001-01-16 Microsoft Corporation Hierarchical bitmap-based memory manager
NL1011442C2 (nl) * 1998-03-26 1999-09-28 Franciscus Hubertus Johannes M Frontwerktuigbesturing.
US6172676B1 (en) * 1998-07-17 2001-01-09 International Business Machines Corporation Method and computer program product for implementing multiple drag and drop operations for large objects without blocking an operating system interface
US6313522B1 (en) * 1998-08-28 2001-11-06 Micron Technology, Inc. Semiconductor structure having stacked semiconductor devices
JP2000357125A (ja) * 1999-06-16 2000-12-26 Matsushita Electric Ind Co Ltd バッファメモリ制御方法及び制御装置
US6866581B2 (en) * 1999-09-24 2005-03-15 Igt Video gaming apparatus for wagering with universal computerized controller and I/O interface for unique architecture
US6757797B1 (en) * 1999-09-30 2004-06-29 Fujitsu Limited Copying method between logical disks, disk-storage system and its storage medium
US7000245B1 (en) * 1999-10-29 2006-02-14 Opentv, Inc. System and method for recording pushed data
US6678463B1 (en) 2000-08-02 2004-01-13 Opentv System and method for incorporating previously broadcast content into program recording
ES2211641T3 (es) 1999-10-29 2004-07-16 Opentv, Corp. Sistema y metodo para el registro de datos "pushed".
US8250617B2 (en) * 1999-10-29 2012-08-21 Opentv, Inc. System and method for providing multi-perspective instant replay
US20020053004A1 (en) * 1999-11-19 2002-05-02 Fong Pong Asynchronous cache coherence architecture in a shared memory multiprocessor with point-to-point links
US7024695B1 (en) * 1999-12-30 2006-04-04 Intel Corporation Method and apparatus for secure remote system management
US8037234B2 (en) * 2003-12-02 2011-10-11 Super Talent Electronics, Inc. Command queuing smart storage transfer manager for striping data to raw-NAND flash modules
US8266367B2 (en) 2003-12-02 2012-09-11 Super Talent Electronics, Inc. Multi-level striping and truncation channel-equalization for flash-memory system
US20050160218A1 (en) * 2004-01-20 2005-07-21 Sun-Teck See Highly integrated mass storage device with an intelligent flash controller
US6317330B1 (en) * 2000-02-15 2001-11-13 Bitmicro Networks, Inc. Printed circuit board assembly
US6434660B1 (en) 2000-05-23 2002-08-13 Centennial Technologies, Inc. Emulating one tape protocol of flash memory to a different type protocol of flash memory
IL137085A (en) * 2000-06-29 2004-08-31 Eci Telecom Ltd Method for effective utilizing of shared resources in computerized systems
US7104804B2 (en) * 2000-07-03 2006-09-12 Advanced Interconnect Solutions Method and apparatus for memory module circuit interconnection
JP2002023962A (ja) * 2000-07-07 2002-01-25 Fujitsu Ltd ディスク装置及び制御方法
JP2004536480A (ja) 2000-08-02 2004-12-02 オープンティブイ・インコーポレーテッド 多視点即時リプレイ機能を実現するシステムと方法
JP4609680B2 (ja) * 2000-08-09 2011-01-12 ソニー株式会社 データ蓄積装置
US6820148B1 (en) * 2000-08-17 2004-11-16 Sandisk Corporation Multiple removable non-volatile memory cards serially communicating with a host
US6640274B1 (en) * 2000-08-21 2003-10-28 Intel Corporation Method and apparatus for reducing the disk drive data transfer interrupt service latency penalty
US6865631B2 (en) * 2000-12-14 2005-03-08 International Business Machines Corporation Reduction of interrupts in remote procedure calls
JP4818812B2 (ja) * 2006-05-31 2011-11-16 株式会社日立製作所 フラッシュメモリストレージシステム
US6931498B2 (en) 2001-04-03 2005-08-16 Intel Corporation Status register architecture for flexible read-while-write device
US20020178307A1 (en) * 2001-05-25 2002-11-28 Pua Khein Seng Multiple memory card adapter
US6781914B2 (en) * 2001-08-23 2004-08-24 Winbond Electronics Corp. Flash memory having a flexible bank partition
ITRM20010524A1 (it) * 2001-08-30 2003-02-28 Micron Technology Inc Struttura a schiera di memoria flash.
US7631084B2 (en) 2001-11-02 2009-12-08 Juniper Networks, Inc. Method and system for providing secure access to private networks with client redirection
KR100449708B1 (ko) * 2001-11-16 2004-09-22 삼성전자주식회사 플래시 메모리 관리방법
JP3802411B2 (ja) * 2001-12-20 2006-07-26 株式会社東芝 不揮発性半導体記憶装置のデータコピー方法
US6938188B1 (en) * 2002-01-29 2005-08-30 Advanced Digital Information Corporation Method for verifying functional integrity of computer hardware, particularly data storage devices
US6854022B1 (en) * 2002-02-22 2005-02-08 Western Digital Technologies, Inc. Disk drive using rotational position optimization algorithm to facilitate write verify operations
US7080245B2 (en) * 2002-05-23 2006-07-18 Hewlett-Packard Development Company, L.P. Method and system of switching between two or more images of firmware on a host device
US7114051B2 (en) * 2002-06-01 2006-09-26 Solid State System Co., Ltd. Method for partitioning memory mass storage device
US20040078729A1 (en) * 2002-06-26 2004-04-22 Siemens Aktiengesellschaft Method, computer, and computer program for detecting a bad block on a hard disk
JP2004071033A (ja) 2002-08-05 2004-03-04 Mitsubishi Electric Corp フラッシュメモリのデータ記録法
EP1396792B1 (en) * 2002-09-06 2005-06-15 Sun Microsystems, Inc. Memory copy command specifying source and destination of data executed in the memory controller
US7137118B2 (en) * 2002-09-27 2006-11-14 Texas Instruments Incorporated Data synchronization hardware primitive in an embedded symmetrical multiprocessor computer
US7296213B2 (en) * 2002-12-11 2007-11-13 Nvidia Corporation Error correction cache for flash memory
US6901461B2 (en) * 2002-12-31 2005-05-31 Intel Corporation Hardware assisted ATA command queuing
CN1432929A (zh) * 2003-02-14 2003-07-30 威盛电子股份有限公司 多微处理器系统内响应中断服务要求的仲裁结构及方法
JP4165747B2 (ja) * 2003-03-20 2008-10-15 株式会社日立製作所 記憶システム、制御装置及び制御装置のプログラム
US7136938B2 (en) * 2003-03-27 2006-11-14 International Business Machines Corporation Command ordering based on dependencies
KR100543447B1 (ko) * 2003-04-03 2006-01-23 삼성전자주식회사 에러정정기능을 가진 플래쉬메모리장치
US7159104B2 (en) * 2003-05-20 2007-01-02 Nvidia Corporation Simplified memory detection
US7320100B2 (en) * 2003-05-20 2008-01-15 Cray Inc. Apparatus and method for memory with bit swapping on the fly and testing
US7200688B2 (en) * 2003-05-29 2007-04-03 International Business Machines Corporation System and method asynchronous DMA command completion notification by accessing register via attached processing unit to determine progress of DMA command
JP4653960B2 (ja) * 2003-08-07 2011-03-16 ルネサスエレクトロニクス株式会社 メモリカードおよび不揮発性メモリ混載マイコン
CN2662316Y (zh) * 2003-11-28 2004-12-08 中国科学院空间科学与应用研究中心 嵌入式计算机系统用的系统主板
US7865809B1 (en) 2004-03-11 2011-01-04 Super Talent Electronics, Inc. Data error detection and correction in non-volatile memory devices
US8176238B2 (en) 2003-12-02 2012-05-08 Super Talent Electronics, Inc. Command queuing smart storage transfer manager for striping data to raw-NAND flash modules
JP2005190106A (ja) * 2003-12-25 2005-07-14 Hitachi Ltd 論理ボリュームを管理する記憶制御サブシステム
US7370230B1 (en) * 2004-01-08 2008-05-06 Maxtor Corporation Methods and structure for error correction in a processor pipeline
US8108870B2 (en) * 2004-01-29 2012-01-31 Klingman Edwin E Intelligent memory device having ASCII-named task registers mapped to addresses of a task
US7127549B2 (en) 2004-02-04 2006-10-24 Sandisk Corporation Disk acceleration using first and second storage devices
US7984316B2 (en) * 2004-02-24 2011-07-19 Paul Kaler Solid state disk with hot-swappable components
US7328304B2 (en) * 2004-02-27 2008-02-05 Intel Corporation Interface for a block addressable mass storage system
CA2557641A1 (en) 2004-02-27 2005-09-15 Tigi Corporation System and method for data manipulation
US7406572B1 (en) * 2004-03-26 2008-07-29 Cypress Semiconductor Corp. Universal memory circuit architecture supporting multiple memory interface options
US20080147931A1 (en) * 2006-10-17 2008-06-19 Smart Modular Technologies, Inc. Data striping to flash memory
US7490283B2 (en) 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
US7205532B2 (en) * 2004-08-24 2007-04-17 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Integrated ball grid array optical mouse sensor packaging
US20060053308A1 (en) * 2004-09-08 2006-03-09 Raidy 2 Go Ltd. Secured redundant memory subsystem
US7283074B2 (en) 2004-09-21 2007-10-16 Telegent Systems, Inc. Pilot-tone calibration for time-interleaved analog-to-digital converters
KR100667780B1 (ko) * 2004-11-22 2007-01-11 삼성전자주식회사 검정 방법, 기록/재생 장치 및 정보 저장 매체
US7730257B2 (en) 2004-12-16 2010-06-01 Broadcom Corporation Method and computer program product to increase I/O write performance in a redundant array
KR100621631B1 (ko) 2005-01-11 2006-09-13 삼성전자주식회사 반도체 디스크 제어 장치
JP2006195569A (ja) * 2005-01-11 2006-07-27 Sony Corp 記憶装置
US7562366B2 (en) 2005-02-03 2009-07-14 Solarflare Communications, Inc. Transmit completion event batching
CN101142630A (zh) * 2005-02-11 2008-03-12 圣迪斯克以色列有限公司 Nand闪速存储器系统结构
TWI266988B (en) 2005-03-01 2006-11-21 Sunplus Technology Co Ltd Method and system for accessing A/V data in computer apparatus
US20060211388A1 (en) * 2005-03-07 2006-09-21 Lambert Grady D Stackable printed circuit boards
US20080126658A1 (en) * 2006-05-28 2008-05-29 Phison Electronics Corp. Inlayed flash memory module
US7822912B2 (en) * 2005-03-14 2010-10-26 Phision Electronics Corp. Flash storage chip and flash array storage system
US7225289B2 (en) * 2005-03-14 2007-05-29 Phison Electronics Corporation Virtual IDE storage with PCI express interface
JP2007004775A (ja) * 2005-05-23 2007-01-11 Toshiba Corp 半導体メモリカード
KR100690804B1 (ko) 2005-06-13 2007-03-09 엘지전자 주식회사 휴대단말기의 메모리 정리 방법
TWI319160B (en) * 2005-07-11 2010-01-01 Via Tech Inc Memory card capable of supporting various voltage supply and control chip and method of supporting voltage thereof
US7660306B1 (en) 2006-01-12 2010-02-09 Chelsio Communications, Inc. Virtualizing the operation of intelligent network interface circuitry
US20070079098A1 (en) * 2005-10-03 2007-04-05 Hitachi, Ltd. Automatic allocation of volumes in storage area networks
KR100993664B1 (ko) * 2005-10-17 2010-11-10 르네사스 일렉트로닉스 가부시키가이샤 반도체 장치 및 그의 제조 방법
JP2009521045A (ja) 2005-12-21 2009-05-28 エヌエックスピー ビー ヴィ ブロック消去可能なメモリ場所を有する不揮発性メモリ
US20100299494A1 (en) 2005-12-22 2010-11-25 Nxp B.V. Memory with block-erasable locations and a linked chain of pointers to locate blocks with pointer information
US20100165562A1 (en) * 2006-01-12 2010-07-01 Para Kanagasabai Segaram Memory module
US7549021B2 (en) * 2006-02-22 2009-06-16 Seagate Technology Llc Enhanced data integrity using parallel volatile and non-volatile transfer buffers
WO2007096844A2 (en) 2006-02-27 2007-08-30 Nxp B.V. Memory with block-erasable locations
JP2007257791A (ja) * 2006-03-24 2007-10-04 Fujitsu Ltd 半導体記憶装置
JP4135747B2 (ja) * 2006-04-06 2008-08-20 ソニー株式会社 データ処理装置及びフラッシュメモリへのアクセス方法
US20070271495A1 (en) 2006-05-18 2007-11-22 Ian Shaeffer System to detect and identify errors in control information, read data and/or write data
CN100433697C (zh) * 2006-06-01 2008-11-12 东南大学 多通道高速数据处理器及处理方法
US7506098B2 (en) * 2006-06-08 2009-03-17 Bitmicro Networks, Inc. Optimized placement policy for solid state storage devices
US7613876B2 (en) * 2006-06-08 2009-11-03 Bitmicro Networks, Inc. Hybrid multi-tiered caching storage system
WO2007146845A2 (en) 2006-06-08 2007-12-21 Bitmicro Networks, Inc. Configurable and scalable hybrid multi-tiered caching storage system
TW200805394A (en) * 2006-07-07 2008-01-16 Alcor Micro Corp Memory storage device and the read/write method thereof
US8140738B2 (en) 2006-07-20 2012-03-20 Stmicroelectronics Pvt. Ltd. Flash memory interface device
US7487428B2 (en) * 2006-07-24 2009-02-03 Kingston Technology Corp. Fully-buffered memory-module with error-correction code (ECC) controller in serializing advanced-memory buffer (AMB) that is transparent to motherboard memory controller
WO2008022094A2 (en) 2006-08-14 2008-02-21 Plankton Technologies, Llc Data storage device
US7539842B2 (en) * 2006-08-15 2009-05-26 International Business Machines Corporation Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables
CN100573435C (zh) 2006-08-18 2009-12-23 福昭科技(深圳)有限公司 一种基于闪存记忆体的大容量存储装置
US7904639B2 (en) * 2006-08-22 2011-03-08 Mosaid Technologies Incorporated Modular command structure for memory and memory system
KR20080017982A (ko) * 2006-08-23 2008-02-27 삼성전자주식회사 플래시 메모리 시스템 및 그 프로그램 방법
US7730269B2 (en) * 2006-08-29 2010-06-01 International Business Machines Corporation Load management to reduce communication signaling latency in a virtual machine environment
JP2008065575A (ja) * 2006-09-07 2008-03-21 Fuji Xerox Co Ltd 拡張メモリ装置、及びメモリ拡張システム
CN101118783A (zh) * 2006-09-07 2008-02-06 晶天电子(深圳)有限公司 带有闪存坏块控制系统的电子数据闪存卡
US20080077727A1 (en) 2006-09-25 2008-03-27 Baca Jim S Multithreaded state machine in non-volatile memory devices
US8051253B2 (en) * 2006-09-28 2011-11-01 Virident Systems, Inc. Systems and apparatus with programmable memory control for heterogeneous main memory
US7587575B2 (en) 2006-10-17 2009-09-08 International Business Machines Corporation Communicating with a memory registration enabled adapter using cached address translations
JP4932427B2 (ja) 2006-10-20 2012-05-16 株式会社日立製作所 記憶装置及び記憶方法
US8019940B2 (en) 2006-12-06 2011-09-13 Fusion-Io, Inc. Apparatus, system, and method for a front-end, distributed raid
US8935302B2 (en) 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
US7660911B2 (en) * 2006-12-20 2010-02-09 Smart Modular Technologies, Inc. Block-based data striping to flash memory
US7668177B1 (en) 2006-12-28 2010-02-23 Qlogic, Corporation Method and system for quality of service in host bus adapters
KR100813630B1 (ko) 2007-02-07 2008-03-14 삼성전자주식회사 독출 성능을 향상할 수 있는 플래시 메모리 시스템 및그것의 독출 방법
US20080209157A1 (en) 2007-02-27 2008-08-28 Inventec Corporation Memory partitioning method
JP5224706B2 (ja) 2007-03-23 2013-07-03 キヤノン株式会社 記憶装置及び記憶装置の制御方法
JP4781373B2 (ja) * 2007-05-14 2011-09-28 株式会社バッファロー 記憶装置
JP2008287404A (ja) * 2007-05-16 2008-11-27 Hitachi Ltd 読み出しによる非アクセスメモリセルのデータ破壊を検出及び回復する装置、及びその方法
JP2008293096A (ja) 2007-05-22 2008-12-04 Shinko Electric Ind Co Ltd メモリインタフェースおよびメモリシステム
US20080294814A1 (en) * 2007-05-24 2008-11-27 Sergey Anatolievich Gorobets Flash Memory System with Management of Housekeeping Operations
WO2008147752A1 (en) 2007-05-24 2008-12-04 Sandisk Corporation Managing housekeeping operations in flash memory
KR20080105390A (ko) 2007-05-30 2008-12-04 삼성전자주식회사 플래시 메모리에 사용되는 명령어들을 제어하는 방법 및장치
US8040710B2 (en) 2007-05-31 2011-10-18 Qimonda Ag Semiconductor memory arrangement
US7898813B2 (en) * 2007-06-25 2011-03-01 Kabushiki Kaisha Toshiba Semiconductor memory device and semiconductor memory card using the same
US20090006720A1 (en) 2007-06-27 2009-01-01 Shai Traister Scheduling phased garbage collection and house keeping operations in a flash memory system
US8001444B2 (en) 2007-08-08 2011-08-16 Intel Corporation ECC functional block placement in a multi-channel mass storage device
US7639165B2 (en) 2007-08-10 2009-12-29 Marvell World Trade Ltd. Calibrating replica digital-to-analog converters
JP4977554B2 (ja) 2007-08-22 2012-07-18 株式会社日立製作所 キャッシュメモリ上のデータをバックアップする機能を備えたストレージシステム
KR101466694B1 (ko) 2007-08-28 2014-11-28 삼성전자주식회사 Ecc 회로, ecc 회로를 구비하는 메모리 시스템 및그의 오류 정정 방법
US8082482B2 (en) 2007-08-31 2011-12-20 International Business Machines Corporation System for performing error correction operations in a memory hub device of a memory module
US8086936B2 (en) 2007-08-31 2011-12-27 International Business Machines Corporation Performing error correction at a memory device level that is transparent to a memory channel
US20090063895A1 (en) 2007-09-04 2009-03-05 Kurt Smith Scaleable and maintainable solid state drive
US20090125790A1 (en) 2007-11-13 2009-05-14 Mcm Portfolio Llc Method and Apparatus of Automatically Selecting Error Correction Algorithms by a NAND Flash Controller
US20100049914A1 (en) * 2008-08-20 2010-02-25 Goodwin Paul M RAID Enhanced solid state drive
US8266365B2 (en) 2008-12-17 2012-09-11 Sandisk Il Ltd. Ruggedized memory device
US20100287217A1 (en) 2009-04-08 2010-11-11 Google Inc. Host control of background garbage collection in a data storage device
US20100262979A1 (en) 2009-04-08 2010-10-14 Google Inc. Circular command queues for communication between a host and a data storage device
US8447918B2 (en) 2009-04-08 2013-05-21 Google Inc. Garbage collection for failure prediction and repartitioning
US8205037B2 (en) 2009-04-08 2012-06-19 Google Inc. Data storage device capable of recognizing and controlling multiple types of memory chips operating at different voltages
WO2010137178A1 (en) 2009-05-25 2010-12-02 Hitachi,Ltd. Storage subsystem
US8352681B2 (en) 2009-07-17 2013-01-08 Hitachi, Ltd. Storage system and a control method for accelerating the speed of copy processing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1440555A (zh) * 2000-06-29 2003-09-03 英特尔公司 块级边读边写的方法及装置
US20080320214A1 (en) * 2003-12-02 2008-12-25 Super Talent Electronics Inc. Multi-Level Controller with Smart Storage Transfer Manager for Interleaving Multiple Single-Chip Flash Memory Devices
US20080065815A1 (en) * 2006-09-12 2008-03-13 Hiroshi Nasu Logical volume management method and logical volume management program
US20090164698A1 (en) * 2007-12-24 2009-06-25 Yung-Li Ji Nonvolatile storage device with NCQ supported and writing method for a nonvolatile storage device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104885062A (zh) * 2012-12-10 2015-09-02 谷歌公司 使用逻辑到物理映射以与数据存储装置进行直接用户空间通信
CN104885062B (zh) * 2012-12-10 2017-06-20 谷歌公司 使用逻辑到物理映射以与数据存储装置进行直接用户空间通信
CN107533865A (zh) * 2015-05-18 2018-01-02 长瀬产业株式会社 半导体装置及信息写入/读取方法
CN107533865B (zh) * 2015-05-18 2020-10-16 长瀬产业株式会社 半导体装置及信息写入/读取方法
CN111984186A (zh) * 2019-05-23 2020-11-24 爱思开海力士有限公司 装置及其操作方法

Also Published As

Publication number Publication date
JP5347061B2 (ja) 2013-11-20
US8578084B2 (en) 2013-11-05
JP2015046175A (ja) 2015-03-12
WO2010117930A1 (en) 2010-10-14
DE202010017661U1 (de) 2012-04-04
JP2012523622A (ja) 2012-10-04
CN107832010A (zh) 2018-03-23
US20100262738A1 (en) 2010-10-14
US8244962B2 (en) 2012-08-14
EP2417529A1 (en) 2012-02-15
AU2010234648A1 (en) 2011-11-10
JP2012523619A (ja) 2012-10-04
US20100262762A1 (en) 2010-10-14
EP2417531A1 (en) 2012-02-15
AU2010234647A1 (en) 2011-11-10
US20100262894A1 (en) 2010-10-14
AU2010234648B2 (en) 2013-08-22
EP2417528B1 (en) 2015-02-25
JP2012523618A (ja) 2012-10-04
CN102428451A (zh) 2012-04-25
JP2012523623A (ja) 2012-10-04
US8566507B2 (en) 2013-10-22
US20140047172A1 (en) 2014-02-13
AU2010234647B2 (en) 2013-08-15
DE202010017667U1 (de) 2012-04-04
WO2010117929A1 (en) 2010-10-14
WO2010117928A1 (en) 2010-10-14
US8566508B2 (en) 2013-10-22
WO2010117878A1 (en) 2010-10-14
AU2010234773B2 (en) 2013-11-14
EP2728488B1 (en) 2018-01-17
US8380909B2 (en) 2013-02-19
AU2010234772A1 (en) 2011-11-10
WO2010117877A1 (en) 2010-10-14
US20100262773A1 (en) 2010-10-14
JP2012523624A (ja) 2012-10-04
US8239724B2 (en) 2012-08-07
JP5657641B2 (ja) 2015-01-21
US20100262757A1 (en) 2010-10-14
CN102428453A (zh) 2012-04-25
US20100262758A1 (en) 2010-10-14
US20100262759A1 (en) 2010-10-14
AU2010234646A1 (en) 2011-11-10
US8250271B2 (en) 2012-08-21
EP2728488A3 (en) 2014-06-11
EP2728488A2 (en) 2014-05-07
EP2417533A1 (en) 2012-02-15
US20100262761A1 (en) 2010-10-14
AU2010234773A1 (en) 2011-11-10
DE202010017668U1 (de) 2012-04-04
US20100262760A1 (en) 2010-10-14
CN102428455A (zh) 2012-04-25
US20100262740A1 (en) 2010-10-14
US20140108708A1 (en) 2014-04-17
EP2417530A1 (en) 2012-02-15
JP5922016B2 (ja) 2016-05-24
US8639871B2 (en) 2014-01-28
DE202010017666U1 (de) 2012-04-05
DE202010017669U1 (de) 2012-04-05
CN102428451B (zh) 2015-01-21
US20140156915A1 (en) 2014-06-05
DE202010017665U1 (de) 2012-04-04
CN102428454A (zh) 2012-04-25
EP2417528A1 (en) 2012-02-15
US8205037B2 (en) 2012-06-19
AU2010234772B2 (en) 2013-12-05
EP2417531B1 (en) 2014-03-12

Similar Documents

Publication Publication Date Title
CN102428452A (zh) 分割快闪存储器数据存储装置
CN101937319B (zh) 存储器系统及其映射方法
JP6982468B2 (ja) メモリシステムおよび制御方法
JP7074453B2 (ja) メモリシステムおよび制御方法
CN102428449A (zh) 数据存储装置中的后台无用单元收集的主机控制
JP4738038B2 (ja) メモリカード
US8131969B2 (en) Updating system configuration information
CN102576333B (zh) 非易失性存储器中的数据高速缓存
US8386746B2 (en) Storage unit management methods and systems
US8782327B1 (en) System and method for managing execution of internal commands and host commands in a solid-state memory
JP2019020788A (ja) メモリシステムおよび制御方法
CN104866428A (zh) 数据存取方法和数据存取装置
US10649893B2 (en) Namespace planning of non-volatile memory of data storage device
JP2019057151A (ja) メモリシステムおよび制御方法
JP2019133391A (ja) メモリシステムおよび制御方法
US10268592B2 (en) System, method and computer-readable medium for dynamically mapping a non-volatile memory store
US9569113B2 (en) Data storage device and operating method thereof
CN103377145A (zh) 使用逻辑卷映射装载预取高速缓存的方法和装置
JP4180291B2 (ja) 記憶装置システムの制御方法および記憶装置、管理装置、およびプログラム
JP2022179798A (ja) メモリシステムおよび制御方法
JP2022019787A (ja) メモリシステムおよび制御方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
AD01 Patent right deemed abandoned

Effective date of abandoning: 20120425

C20 Patent right or utility model deemed to be abandoned or is abandoned