Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > Memory/Storage

Explore NAND flash implementation options

Posted: 17 Nov 2008 ?? ?Print Version ?Bookmark and Share

Keywords:NAND flash? memory chip? processor?

A variety of NAND flash architectures, the constant migration to newer, more advanced process technologies and the continual introduction of new features have converged to make the design of NAND flash memory subsystems more challenging than ever.

The current situation in the NAND flash market presents designers with three options. They can build their own discrete solutions using flash controllers and separate NAND devices. They can use embedded NAND controllers (within chipsets/processors) along with separate NAND devices. Or they can opt to buy managed NAND solutions that offer the entire NAND memory subsystem in a pre-packaged solution.

Discrete, embedded and pre-packaged memory management solutions need to be considered.

Choices bring challenges
The expansion of the NAND flash market has attracted a variety of suppliers, each offering its own technology advances. For example, as device densities passed 4Gbit, NAND flash manufacturers found the traditional 512byte programming page no longer offered an optimal segmentation for programming. Many suppliers instead moved to a 2Kbyte page size. More recently, manufacturers started shipping a larger 4Kbyte page size in volume. Furthermore, 8Kbyte page size is now being offered in latest 40nm technology. At the same time, in an attempt to increase capacity, manufacturers have moved from single-level cell (SLC) to multilevel cell (MLC) architectures, which store as many as 4bits per cell. Further complicating the problem, competing flash memory IC suppliers are constantly adding new functionality such as read caches, write caches, copy back and multiplane programming functionality. While these new features and architectural enhancements were intended to improve performance, they present inherent compatibility problems for OEMs looking to minimize inventory risk by sourcing NAND flash from multiple suppliers. Incompatibility issues also arise because of the fact that NAND flash from different vendors may have different erase and program timing requirements.

NAND controllers addressed this problem by offering a simple, standardized interface between the host system and a block of flash memory regardless of the source. In a discrete solution, OEMs typically purchase controllers and NAND memory ICs from different suppliers and then mount the devices on a board. Once the system powers up, a flash file system in the controller recognizes the memory devices, executes all necessary handshaking routines for flash media support and performs low-level formatting.

More recently, vendors have begun to address this issue by offering managed NAND solutions that take simplicity of design to another level by combining an integrated ATA controller with one or more NAND flash die in a multichip package. Offering a complete plug-and-play NAND storage solution in a compact package, this approach offers attractive cost and space savings and has proved highly popular in embedded applications using the standard ATA/Integrated Drive Electronics (IDE) protocol.

MCU decoder
Both discrete and managed NAND solutions use an MCU to decode all host commands and translate them into flash commands. To boost performance, the MCU is usually supported by a small SRAM buffer between the host and flash devices. To eliminate any latency that may occur due to MCU overhead, these solutions typically use a DMA block to interface between the MCU and the data channel running between the host ATA IDE bus and the flash memory. The DMA block moves the data between the SRAM buffer and the flash memory to reduce MCU overhead.

The key differentiator in any NAND flash subsystemwhether it is a managed or discrete designis the embedded flash file system, which manages the handshake mechanism between the host and the flash memory. From the designer's point of view, this capability dramatically simplifies the task of writing data to memory by automatically compensating for many of the unique architectural differences between flash devices from different suppliers such as error correction requirements, page size or number of bits per cell. It also can be used to store unique customer-specific features or add bug fixes when required. Finally, the flash file system also typically holds a number of important media management functions that help ensure data integrity and a longer life for the NAND flash memory subsystem.

Not all implementations of the flash file system are the same, however. Many controllers implement the flash file system in a lower cost, mask-programmable ROM. Controllers from other vendors, such as SST, use an in-circuit reprogrammable flash memory to perform this task. Given the rapid rate of change in NAND technology, this distinction is crucial. Designers using a controller that stores firmware in ROM must generate a time-consuming and expensive mask change to reprogram the device every time they need to update the firmware. This problem also applies to SoCs with integrated NAND controllers. Inevitably, designers using these devices cannot keep up with the large number of changes occurring in NAND memory IC design and must limit their component selection. Designers using controllers that store their firmware in embedded flash, on the other hand, can quickly and inexpensively modify their device as flash memory vendors introduce new features. This capability gives system designers more flexibility to design their memory subsystem by using components from a wider selection of vendors for fast time-to-market, best availability and cost-effectiveness.

1???2?Next Page?Last Page

Article Comments - Explore NAND flash implementation op...
*? You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.

Back to Top