Mapping consecutive logical block addresses to consecutive good blocks in memory device

US11086539B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11086539-B2
Application numberUS-201916659353-A
CountryUS
Kind codeB2
Filing dateOct 21, 2019
Priority dateOct 21, 2019
Publication dateAug 10, 2021
Grant dateAug 10, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Consecutive logical block addresses (LBAs) are mapped to consecutive good blocks in a sequence of blocks in a memory device. For each bad block, a mapping process substitutes a next available good block. For a selected LBA, the mapping process determines a number X>1 of bad blocks before, and including, a corresponding block in the sequence, a number Y of bad blocks in the X blocks after the corresponding block in the sequence, and maps the LBA to a block which is X+Y blocks after the corresponding block, or, if the block which is X+Y blocks after the corresponding block is a bad block, to a next good block. The mapping technique can be used for a sequence of blocks in a trimmed die, where a bad block register stores physical block addresses of the trimmed away blocks.

First claim

Opening claim text (preview).

We claim: 1. An apparatus, comprising: a first set of blocks arranged in a first block sequence in a first plane on a substrate, each block in the first set of blocks comprising memory cells; and a circuit configured to map consecutive logical block addresses in a first sequence of logical block addresses to consecutive good blocks in the first block sequence; wherein for each bad block of one or more bad blocks in the first block sequence, the mapping substitutes a next available good block in the first block sequence; wherein: the first set of blocks is arranged in a trimmed die which is among stacked dice, the stacked dice comprise an untrimmed die, the trimmed die having a number M blocks, and the untrimmed die having number N blocks, where M<N; and the circuit comprises a bad block register which identifies N-M trimmed physical blocks of the trimmed die as bad blocks. 2. The apparatus of claim 1 , wherein: the circuit is configured to perform the mapping of the consecutive logical block addresses in the first sequence of logical block addresses, starting from a first logical block address in the first sequence of logical block addresses and continuing to a last logical block address in the first sequence of logical block addresses, to consecutive good blocks in the first block sequence, starting from an initial good block in the first block sequence and continuing to a last good block in the first block sequence which is used in the mapping of the consecutive logical block addresses in the first sequence. 3. The apparatus of claim 1 , further comprising: a second set of blocks arranged in a second plane on the substrate in a second block sequence, each block in the second set of blocks comprising memory cells, wherein: the circuit is configured to map consecutive logical block addresses in a second sequence of logical block addresses to consecutive good blocks in the second block sequence, wherein for each bad block of one or more bad blocks in the second block sequence, the mapping substitutes a next available good block in the second block sequence; the first sequence of logical block addresses and the second sequence of logical block addresses extend in a range of logical block addresses; and each pair of consecutive logical block addresses in the range of logical block addresses comprises a logical block address from the first sequence of logical block addresses and a logical block address from the second sequence of logical block addresses, and is mapped to a pair of good blocks comprising a good block from the first block sequence and a good block from the second block sequence. 4. The apparatus of claim 3 , wherein: the circuit is configured to receive a request to perform an operation, the request comprising a pair of consecutive logical block addresses, and in response to the request, perform the operation concurrently on a corresponding pair of good blocks comprising a good block from the first block sequence and a good block from the second block sequence. 5. The apparatus of claim 1 , wherein: for each bad block of the one or more bad blocks in the first block sequence, the next available good block in the first block sequence comprises a good block which is not a substitute for another bad block. 6. The apparatus of claim 1 , wherein: a position of each logical block address in the first sequence of logical block addresses corresponds to a position of a block in the first block sequence; and to map a selected logical block address in the first sequence of logical block addresses to a block in the first block sequence, the circuit is configured to: determine a block having a position in the first block sequence corresponding to the position of the selected logical block address in the first sequence of logical block addresses; determine a number X>1 of bad blocks before, and including, the corresponding block in the sequence; determine a number Y of bad blocks in the X blocks after the corresponding block in the sequence; and map the selected logical block address to a block which is X+Y blocks after the corresponding block in the first block sequence, or, if the block which is X+Y blocks after the corresponding block is a bad block, to a next good block alter the block which is X+Y blocks after the corresponding block. 7. The apparatus of claim 1 , wherein: a position of each logical block address in the first sequence block addresses corresponds to a position of a block in the first block sequence; and to map a selected logical block address in the first sequence of logical block addresses to a block in the first block sequence, the circuit is configured to: determine a block having a position in the first block sequence corresponding to the position of the selected logical block address in the first sequence of logical block addresses; determine whether the corresponding block is a bad block and whether there are any bad blocks before the corresponding block in the sequence; and map the selected logical block address to the corresponding block if the corresponding block is not a bad block and there are no bad blocks before the corresponding block in the sequence. 8. The apparatus of claim 1 , wherein: the circuit comprises a register and an address state machine connected to the register; the register is configured to store addresses of one or more bad blocks in the first block sequence; and the address state machine is configured to perform the mapping to substitute a next available good block in the first block sequence for each bad block identified by the register. 9. A method, comprising: receiving a request to perform an operation, the request comprising a selected logical block address in a first sequence of logical block addresses; and selecting a good block in a sequence of blocks according to a circuit which maps consecutive logical block addresses in the first sequence of logical block addresses to consecutive good blocks in the sequence of blocks, such that each bad block in the sequence is replaced by a next available good block in the sequence; wherein: the sequence of blocks is arranged in a trimmed die which is among stacked dice; the stacked dice comprise an untrimmed die; the trimmed die comprises a number M blocks; the untrimmed die comprises a number N blocks, where N>M; and the circuit comprises a register which identifies N-M trimmed physical blocks of the trimmed die as bad blocks. 10. The method of claim 9 , wherein: a position of each logical block address in the first sequence of logical block addresses corresponds to a position of a block in the sequence; and the selecting of the of the good block comprises: determining a block having a position in the sequence corresponding to the position of the selected logical block address in the first sequence of logical block addresses; determine a number X>1 of bad blocks before, and including, the corresponding block in the sequence; determine a number Y of bad blocks in the X blocks after the corresponding block in the sequence; and mapping the selected logical block address to a block which is X+Y blocks after the corresponding block in the sequence, or, if the block which is X+Y blocks after the corresponding block is a bad block, to a next good block after the block which is X+Y blocks after the corresponding block. 11. The method of claim 9 , wherein: the circuit maps consecutive logical block addresses in the first sequence of logical block addresses, starting from a first logical block address in the first sequence of logical block addresses and continuing to a last logical block address in the first sequence of logical block addresses, to consecutive

Assignees

Inventors

Classifications

  • in relation to data integrity, e.g. data losses, bit errors · CPC title

  • by allocating resources to storage systems · CPC title

  • Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • G06F3/064Primary

    Management of blocks · CPC title

  • in relation to life time, e.g. increasing Mean Time Between Failures [MTBF] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11086539B2 cover?
Consecutive logical block addresses (LBAs) are mapped to consecutive good blocks in a sequence of blocks in a memory device. For each bad block, a mapping process substitutes a next available good block. For a selected LBA, the mapping process determines a number X>1 of bad blocks before, and including, a corresponding block in the sequence, a number Y of bad blocks in the X blocks after the co…
Who is the assignee on this patent?
Sandisk Technologies Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/064. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 10 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).