×

Endurance translation layer (ETL) and diversion of temp files for reduced flash wear of a super-endurance solid-state drive

  • US 9,547,589 B2
  • Filed: 12/18/2014
  • Issued: 01/17/2017
  • Est. Priority Date: 06/18/2008
  • Status: Active Grant
First Claim
Patent Images

1. An Endurance Translation Layer (ETL) method to increase endurance of a flash memory that has a specified erase-cycle lifetime comprising:

  • creating an ETL in a dynamic-random-access memory (DRAM) buffer that is controlled by a controller and using the ETL to provide temporary storage to reduce flash wear;

    creating a spare/swap area in the DRAM buffer;

    operating a controller to use the spare/swap area in the DRAM buffer to merge valid data in a flash memory with new data to generate combined data; and

    writing the combined data to the flash memory;

    creating a page status table in the DRAM buffer;

    operating the controller to use the page status table in the DRAM buffer to record the status of each flash page;

    when a flash block is erased, setting the page status of each page in the flash block to an empty page;

    when a page is written, changing the page status to a used page;

    when the host data writes to a same Logical Page Address, writing data to a new flash page and setting the page status for an old page to a deleted/trimmed page;

    when a trim command is received from the host, setting a corresponding page status to a deleted/trimmed page;

    when the page is identified as a bad page, setting the page status to a bad page;

    during a garbage collection process, not moving pages indicated as deleted/trimmed pages to a new flash block;

    creating a spare/swap area in the DRAM buffer;

    operating the controller to use the spare/swap area in the DRAM buffer to merge valid data in flash memory and new data to generate combined data;

    wherein the page status of each page in a targeted block is examined from the page status table;

    wherein valid data page has the page status indicating as a used page;

    the page status not indicating as a bad page, an empty page, or a trimmed page;

    writing the combined data to the flash memory;

    whereby a spare/swap function is performed by the controller using the DRAM buffer rather than the flash memory,whereby a spare/swap function is performed by the controller using the DRAM buffer rather than the flash memory.

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