Selective skipping of blocks in an SSD
AssigneesWestern Digital Technologies, Inc., Skyera, LLC
InventorsAndrew J. Tomlin, Justin Jones, Rodney N. Mullendore, Radoslav Danilak
Life of this patent
Estimating the term…
Abstract
A solid state drive (SSD), includes: a plurality of solid state memory devices, each solid state memory device including a plurality of memory blocks arranged in a plurality of planes; a storage; and an SSD controller configured to: write data to memory blocks in a predefined sequence, detect a defective memory block in the plurality of solid state memory devices, mark the detected memory block as defective and store an address of a next non-defective memory block, and in response to data to be written to the marked memory block, the controller skips the marked memory block and writes the data to the next non-marked memory block.
Claims20
A solid state drive (SSD), comprising:
- a plurality of solid state memory devices, wherein one of the plurality of solid state memory devices comprises a plurality of memory blocks arranged in a plurality of planes;
- a storage;
- and
- an SSD controller configured to:
- write data to the plurality of memory blocks in a predefined sequence,
- detect a defective memory block in one of the plurality of memory blocks,
- mark the detected memory block as defective and store an address of a next non-defective memory block,
- in response to data to be written to the marked memory block, skip the marked memory block and write the data to the next non-marked memory block, and
- in response to detecting a weak memory block, periodically mark the weak memory block as defective for a predetermined number of write cycles and then clear the mark.
A method for writing data to a solid state drive (SSD) comprising a plurality of memory devices, the method comprising:
- writing data to a plurality of memory blocks in one of the plurality of memory devices in a predefined sequence;
- detecting a defective memory block in the plurality of memory blocks;
- marking the detected memory block as defective;
- storing an address of a next non-defective memory block;
- in response to writing data to the marked memory block, skipping the marked memory block and writing the data to the next non-marked memory block;
- and
- in response to detecting a weak memory block, periodically marking the weak memory block as defective for a predetermined number of write cycles and then clearing the mark.
A solid state drive (SSD), comprising:
- a plurality of solid state memory devices, wherein one of the solid state memory devices comprises a plurality of memory blocks arranged in a plurality of planes;
- a storage;
- and
- an SSD controller configured to:
- read data from the plurality of memory blocks in a predefined sequence,
- detect a defective memory block in the plurality of memory blocks,
- mark the detected memory block as defective and store an address of a next non-defective memory block,
- in response to detecting a weak memory block, periodically mark the weak memory block as defective for a predetermined number of write cycles and then clear the mark, and
- in response to data to be read from the marked memory block, skip the marked memory block and read the data from the next non-marked memory block.
A method for reading data from a solid state drive (SSD) comprising a plurality of memory devices, the method comprising:
- reading data from a plurality of memory blocks in one of the plurality of memory devices in a predefined sequence;
- detecting a defective memory block in one of the plurality of memory blocks;
- marking the detected memory block as defective;
- storing an address of a next non-defective memory block;
- in response to detecting a weak memory block, periodically marking the weak memory block as defective for a predetermined number of write cycles and then clearing the mark;
- and
- in response to reading data from the marked memory block, skipping the marked memory block and reading the data from the next non-marked memory block.
A method for writing data to a solid state drive (SSD) comprising a plurality of memory devices, the method comprising:
- writing data to or reading data from a plurality of memory blocks in one of the plurality of memory devices in a predefined sequence;
- detecting a defective memory block in one of a plurality of solid state memory devices;
- marking the detected memory block as defective;
- storing an address of a next non-defective memory block;
- in response to detecting a weak memory block, periodically marking the weak memory block as defective for a predetermined number of write cycles and then clearing the mark;
- during one of a write and read operation for a current memory block, reading the address of a next non-defective memory block and reading or writing data to the current memory block;
- and
- using the address of a next non-defective memory block read from the current memory block as an address of the next non-defective memory block for reading or writing data.
Dependencies are inferred from the claim text.