Hybrid Multi-Tiered Caching Storage System
First Claim
Patent Images
1. A data storage system for storing and retrieving computer data using one or more logical address without intervention from the external host or client system, the data storage system comprising:
- an IO processor for controlling data input or output of a data storage system;
disk drive for storing one or more blocks of data, including data transferred from the host and control data for the IO processor;
a non-volatile memory means for storing a plurality of data blocks, the data blocks including data transferred from the host, a cached portion of data stored in the disk drive and control data for use by the IO processor;
a LBA_Flash_HDD first table for storing at least one logical address mapped to at least one physical address of said non-volatile memory means and at least one physical address of said disk drive; and
wherein the LBA_Flash HDD table enables memory access to said non-volatile memory means without intervention from the host.
2 Assignments
0 Petitions
Accused Products
Abstract
A hybrid storage system comprising mechanical disk drive means, flash memory means, SDRAM memory means, and SRAM memory means is described. IO processor means and DMA controller means are devised to eliminate host intervention. Multi-tiered caching system and novel data structure for mapping logical address to physical address results in a configurable and scalable high performance computer data storage solution.
-
Citations
28 Claims
-
1. A data storage system for storing and retrieving computer data using one or more logical address without intervention from the external host or client system, the data storage system comprising:
-
an IO processor for controlling data input or output of a data storage system;
disk drive for storing one or more blocks of data, including data transferred from the host and control data for the IO processor;
a non-volatile memory means for storing a plurality of data blocks, the data blocks including data transferred from the host, a cached portion of data stored in the disk drive and control data for use by the IO processor;
a LBA_Flash_HDD first table for storing at least one logical address mapped to at least one physical address of said non-volatile memory means and at least one physical address of said disk drive; and
wherein the LBA_Flash HDD table enables memory access to said non-volatile memory means without intervention from the host. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A data structure for storing mapping information of a data storage system, the data storage system comprising flash memory, SDRAM memory, and SRAM memory, the data structure comprising:
-
a LBA_Flash_HDD table comprising one or more logical address, one or more corresponding flash address, and one or more corresponding disk drive address; and
a LBA_SDRAM table comprising one or more logical address, one or more corresponding SRAM address, and one or more corresponding SDRAM address;
wherein a first portion of a working copy of the LBA_Flash_HDD table is stored in the SRAM memory, a second portion of the working copy is stored in the SDRAM memory; and
wherein the LBA_SDRAM table is stored in the SDRAM memory, and a cached portion of the LBA_SDRAM table is stored in the SRAM memory means.
-
-
11. A data storage system for performing memory operations on a mass storage unit in response to a host request received from a host, the data storage system comprising:
-
a means for processing program code in response to the host request, said means including an IO processor;
a first non-volatile memory DMA controller electrically coupled to said IO processor;
a first non-volatile memory electrically coupled to said first non-volatile DMA controller and for storing a first table and selected data transferred from the host, said first table for storing a plurality of logical addresses respectively mapped to at least one physical memory address;
program code for mapping a first logical address to a physical address of a first data location in said first non-volatile memory; and
wherein, without requiring host intervention, said means for processing uses said first table when performing a memory operation on said first non-volatile memory. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification