×

Multipass programming in buffers implemented in non-volatile data storage systems

  • US 9,043,517 B1
  • Filed: 09/24/2013
  • Issued: 05/26/2015
  • Est. Priority Date: 07/25/2013
  • Status: Active Grant
First Claim
Patent Images

1. A data processing method, comprising:

  • at a non-volatile data storage system;

    receiving from a host a plurality of requests that specify respective elements; and

    for each respective element specified by the received requests;

    generating a respective set of k bit positions in a Bloom filter, using k distinct hash functions, where k is an integer greater than 2; and

    setting the respective set of k bit positions in the Bloom filter, wherein the Bloom filter is stored in a non-volatile storage medium of the non-volatile data storage system; and

    wherein setting a respective bit position of the k bit positions in the Bloom filter comprises;

    accessing usage information for a storage medium portion of the non-volatile storage medium that includes the respective bit position in the Bloom filter;

    determining whether the usage information for the storage medium portion meets predefined multipass programming criteria;

    in accordance with a determination that the usage information for the storage medium portion meets the predefined multipass programming criteria, setting the respective bit position in the Bloom filter in the storage medium portion; and

    in accordance with a determination that the usage information for the storage medium portion does not meet the predefined multipass programming criteria, identifying a respective unused portion of the non-volatile storage medium, copying Bloom filter information in the storage medium portion to the identified portion of the non-volatile storage medium, and setting the respective bit position in the Bloom filter.

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