×

Method and apparatus for performing enhanced read and write operations in a FLASH memory system

  • US 8,775,772 B2
  • Filed: 12/21/2009
  • Issued: 07/08/2014
  • Est. Priority Date: 08/11/2009
  • Status: Expired due to Fees
First Claim
Patent Images

1. A FLASH-based solid state storage system comprising:

  • a system controller including an external communication bus interface adapted to receive WRITE requests from an external host, where each WRITE request includes a Logical Block Address (LBA) and a page of data to be stored at the LBA;

    a volatile memory space accessible to the system controller;

    a FLASH memory space containing a plurality of physical address locations, each physical address location being capable of storing a page of data; and

    one or more communication buses coupling the system controller to the FLASH memory space,wherein the system controller is configured to maintain a logical to physical translation table in the volatile memory space, where the logical to physical translation table includes both;

    (i) a first group of entries associating a LBA with a physical address location within the FLASH memory space where, for each such entry, data is stored within the physical address location within the FLASH memory space; and

    (ii) a second group of entries associating a LBA with one or more data identifiers, each data identifier and each physical address location, respectively, being stored in the logical to physical translation table as a predefined plurality of bits, where;

    (a) each such data identifier is associated with a specific data string such that the same data identifier may be associated with two or more distinct LBAs in the second group of entries,(b) each such data string corresponds to a specific block of data and not to any physical address location within the FLASH memory space; and

    (c) no physical address location within the FLASH memory space includes stored data corresponding to any of the specific blocks of data that correspond to a data string; and

    wherein the system controller is configured to respond to a WRITE request containing a data string that is associated with a data identifier by storing an entry in the second group of entries and not accessing the FLASH memory space as a result of such WRITE request, andwherein the system controller is configured to respond to a READ request for data associated with a LBA in the second group of entries by providing a specific data string associated with the data identifier associated with that LBA without accessing the FLASH memory space as a result of the READ request.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×