Multibit NAND media using pseudo-SLC caching technique
First Claim
1. A solid state drive (SSD) comprising:
- a memory controller;
a plurality of multibit NAND media devices arranged in one or more channels communicatively coupled to the memory controller;
one or more volatile memory devices communicatively coupled to the memory controller, at least one of the one or more volatile memory devices having a read cache area; and
a host interface communicatively coupled to the memory controller, whereina first portion of the plurality of multibit NAND media devices is configured to operate as a pseudo-single-level cell (pSLC) write cache,a second portion of the plurality of multibit NAND media devices is configured to operate as a multibit NAND media storage area, andthe memory controller is configured to;
write data received via the host interface to one or more blocks of the pSLC write cache,transfer data from the one or more blocks of the pSLC write cache to one or more blocks of the multibit NAND media storage area,read the data transferred to the multibit NAND media storage area and determine if an error correction code (ECC) error correction threshold has been exceeded for the data read, andwhen the data read has been determined to exceed the ECC error correction threshold, write such data to one or more blocks of the read cache area when it is not full, and write such data to the pSLC write cache when the read cache area is full.
6 Assignments
0 Petitions
Accused Products
Abstract
A solid state drive (SSD) with pseudo-single-level cell (pSLC) caching and a method of caching data in an SSD is disclosed. In one embodiment, the SSD includes a plurality of multibit NAND media devices arranged in one or more channels communicatively coupled to a memory controller. The SSD further includes one or more volatile memory devices communicatively coupled to the memory controller, where at least one of the one or more volatile memory devices has a read cache area. A first portion of the plurality of multibit NAND media devices is configured to operate as a pSLC write cache and a second portion of the plurality of multibit NAND media devices is configured to operate as a multibit NAND media storage area.
27 Citations
20 Claims
-
1. A solid state drive (SSD) comprising:
-
a memory controller; a plurality of multibit NAND media devices arranged in one or more channels communicatively coupled to the memory controller; one or more volatile memory devices communicatively coupled to the memory controller, at least one of the one or more volatile memory devices having a read cache area; and a host interface communicatively coupled to the memory controller, wherein a first portion of the plurality of multibit NAND media devices is configured to operate as a pseudo-single-level cell (pSLC) write cache, a second portion of the plurality of multibit NAND media devices is configured to operate as a multibit NAND media storage area, and the memory controller is configured to; write data received via the host interface to one or more blocks of the pSLC write cache, transfer data from the one or more blocks of the pSLC write cache to one or more blocks of the multibit NAND media storage area, read the data transferred to the multibit NAND media storage area and determine if an error correction code (ECC) error correction threshold has been exceeded for the data read, and when the data read has been determined to exceed the ECC error correction threshold, write such data to one or more blocks of the read cache area when it is not full, and write such data to the pSLC write cache when the read cache area is full. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of caching data in an solid state drive (SSD) having a plurality of multibit NAND media devices, the method comprising:
-
configuring a first portion of the plurality of multibit NAND media devices to operate as a pseudo-single-level cell (pSLC) write cache; configuring a second portion of the plurality of multibit NAND media devices to operate as a multibit NAND storage area; configuring a region of a volatile memory device communicatively coupled to the plurality of multibit NAND media devices as a read cache area; receiving data from a host device connected to the SSD; writing the data to one or more blocks of the pSLC write cache; transferring data from the one or more blocks of the pSLC write cache to one or more blocks of the multibit NAND media storage area; reading the data transferred to the multibit NAND media storage area; determining if an error correction code (ECC) error correction threshold has been exceeded for the data read; and for the data read exceeding the ECC error correction threshold, writing such data to one or more blocks of the read cache area when it is not full, and writing such data to the pSLC write cache when the read cache area is full. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification