The differences among single-, double-, and triple-bit storage in NAND flash are not just about density and price. There are also tradeoffs in reliability, speed, and the amount of error correction code logic needed.
In embedded systems, NOR and NAND Flash memory are complementary solutions with different features and capabilities that serve different purposes. NOR memory offers faster random read access, allowing for fast boot times and execute-in-place (XiP), making it ideal for code storage. NAND memory offers higher densities, lower cost-per-bit, and fast write performance, which is more suitable for data storage.
The NAND memory market has grown as the need for larger amounts of non-volatile data storage in embedded platforms has increased significantly over the last few years. These platforms are using full blown operating systems that require larger storage for kernel or configuration data.
According to research firm IC Insights, increasing HD video content, social networking, shared data via the cloud, low power consumption, and instant-on features will continue to be key market drivers of NAND Flash memory. In fact, IC Insights projects the NAND Flash market to grow 12 percent in 2013 from $26.8 billion in 2012. Approximately 10 percent of this is used in embedded electronic systems.
There are three main types of NAND Flash memory, which get their classification based on storage capability.
- Single-Level Cell (SLC) stores one bit in a cell and is associated with better performance, lower power consumption, and durability.
- Multi-Level Cell (MLC) stores two bits per cell and typically costs less to manufacture.
- Triple-Level Cell (TLC) has a capability to store three bits in a cell. This type of memory creates physically smaller chips and requires less power to operate than other versions.
However, the lower price point of NAND memory comes at a sacrifice.
NAND Flash memory's lower cost is enabled by its architecture, which allows memory cells to be designed very close to each other and with fewer contacts. This proximity can cause disturbances in one cell when an adjacent cell is being operated upon. These disturbances can cause a failure mechanism commonly known as a bit-flip. During a bit-flip, the floating gate of a NAND cell may gain or lose electrons because of disturbance from an adjacent cell.
While SLC NAND is significantly more reliable and faster than consumer-grade MLC or TLC NAND, it still comes with NAND's inherent weakness, the potential for bit-flips. The probability for bit-flips increases with use. This inherent weakness is overcome by a mechanism known as Error Correction and Coding (ECC). An ECC mechanism is able to detect up to a certain number of bit-flips, and is able to correct them. Some NAND memory solutions come with internal ECC engines, but most ECC mechanisms are implemented in external NAND controllers.
SLC NAND Flash memory is simpler in architecture than MLC or TLC NAND and typically only requires a simple single-bit ECC, such as Hamming Code, which can be very efficient in logic implementation. MLC and TLC NAND's more complex structure requires three times or more ECC logic than that of SLC NAND and uses a more complex method such as Bose-Chaudhuri-Hocquenghem (BCH). Although MLC and TLC NAND memory solutions require more complex ECC, they allow for much higher densities -- greater than 2 Gbytes -- than SLC, making them suitable for consumer applications such as USB keys, SD cards, eMMC, and SSDs that require high-density storage.
SLC NAND, with its simpler ECC, is a suitable choice for embedded applications such as industrial, automotive, consumer, communications, and medical, which typically require lower densities -- less than 2 Gbytes -- but higher reliability and performance.
— Robin Jigour is senior vice president and general manager of the flash memory business group at Spansion Inc. He expresses thanks for the assistance of Maulik Sompura, Spansion NAND product marketing manager, and Touhid Raza, Spansion NAND product marketing director, in the preparation of this article.