NAND Flash Memory: The Complete Storage Solution for Windows Platforms Abstract This paper provides information about the usage, capabilities, and advantages of NAND Flash Memory for the Microsoft® Windows® family of operating systems. It provides guidelines for system designers to incorporate NAND Flash Memory as a robust and complete storage solution for their Microsoft Windows based platforms. Contents Introduction............................................................................................................................................. 3 NAND Flash Memory – The Chosen One .......................................................................................... 3 Insights into NAND Flash Memory Technology .................................................................................. 4 Faces of Removable Flash ................................................................................................................ 5 Future of Removable Flash ............................................................................................................... 6 Windows and Flash Memory ............................................................................................................. 7 Integrating Flash Memory in Embedded Windows Platforms ............................................................. 8 NAND Flash Memory Design Considerations .................................................................................. 10 Call to Action ................................................................................................................................... 11 Acronyms and Terms............................................................................................................................ 12 NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 2 Windows Hardware Engineering Conference Author's Disclaimer and Copyright: SanDisk® Corporation general policy does not recommend the use of its products in life support applications where in a failure or malfunction of the product may directly threaten life or injury. Per SanDisk Terms and Conditions of Sale, the user of SanDisk products in life support applications assumes all risk of such use and indemnifies SanDisk against all damages. The information in this paper is subject to change without notice. SanDisk Corporation shall not be liable for technical or editorial errors or omissions contained herein; nor for incidental or consequential damages resulting from the furnishing, performance, or use of this material. All parts of the SanDisk documentation are protected by copyright law and all rights are reserved. This documentation may not, in whole or in part, be copied, photocopied, reproduced, translated, or reduced to any electronic medium or machine-readable form without prior consent, in writing, from SanDisk Corporation. SanDisk and the SanDisk logo are registered trademarks of SanDisk Corporation. Product names mentioned herein are for identification purposes only and may be trademarks and/or registered trademarks of their respective companies. © 2003 SanDisk Corporation. All rights reserved. SanDisk products are covered or licensed under one or more of the following U.S. Patent Nos. 5,070,032; 5,095,344; 5,168,465; 5,172,338; 5,198,380; 5,200,959; 5,268,318; 5,268,870; 5,272,669; 5,418,752; 5,602,987. Other U.S. and foreign patents awarded and pending. WinHEC Sponsors’ Disclaimer: The contents of this document have not been authored or confirmed by Microsoft or the WinHEC conference co-sponsors (hereinafter “WinHEC Sponsors”). Accordingly, the information contained in this document does not necessarily represent the views of the WinHEC Sponsors and the WinHEC Sponsors cannot make any representation concerning its accuracy. THE WinHEC SPONSORS MAKE NO WARRANTIES, EXPRESS OR IMPLIED, WITH RESPECT TO THIS INFORMATION. Microsoft, Windows, and Windows NT are trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries. Other product and company names mentioned herein may be the trademarks of their respective owners. WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 3 Introduction Over the past decade, the Microsoft® Windows® operating system has grown from a rudimentary GUI shell into a mature ultra-sophisticated operating system that has transformed the user experience on desktops and beyond. Advancements such as Plug and Play, multimedia support, robust multi-threading, and refined intuitive interfaces, significantly contributed to the success of the desktop PC, and helped spawn a myriad of other innovative environments such as automotive applications, handheld systems, and consumer electronics products like smart phones and personal DVD players. In parallel with this evolution, flash memory-based storage devices have been a similar catalyst in the fostering of these breakthrough platforms. This is particularly evident in products such as MP3 music players and digital cameras where flash has completely displaced traditional media. From its earliest roots as an EPROM replacement, targeted solely at the storage of executable code, the technology has made many leaps which have resulted in today’s powerful generation of NAND Flash Memory capable of housing code and handling intensive disk-like data storage applications as well. The inherent characteristics of flash – ruggedness (can withstand up to 2000 Gs), small form factor (over 1GB can be stored in a postage stamp-like footprint), and low power (minimal consumption well-suited for battery operated devices) – precisely mirror the requirements of many of today’s specialized Windows environments. In these platforms, flash has replaced rotating disk drives as the primary device at the heart of storage subsystems. In addition to this role, flash memory’s widely-supported, industry standard, forms – PC Cards, CompactFlash, MultimediaCards, Secure Digital Cards, and Memory Stick – have also made it the preferred vehicle for transferring data between computing platforms and consumer electronics products. Seamless support within Windows for all of these forms of storage contributes to this interoperability and the ease with which flash can be incorporated in system designs. Beyond these existing uses of flash, new techniques for leveraging the technology are emerging as well. Third party hardware design models and software packages, as well as software layers being added natively within Windows are enabling flash memory chips to be directly embedded within systems, resulting in a complete code and data storage solution that dramatically reduces hardware costs. While this concept isn’t entirely new, the capabilities and cost structure of the latest NAND Flash Memory technology are revolutionizing the use of flash memory in system design. This white paper offers insights into the state-of-the-art in flash technology, its evolvement, and trends for the future. Also covered is a round up of all the various types of flash-based storage devices being used under Windows, with looks at how these are benefiting applications. Finally, we highlight some of the techniques that are currently being employed by system designers to optimally integrate all of capabilities of flash at previously unattainable levels of cost effectiveness. NAND Flash Memory – The Chosen One Several factors have fueled the development of today’s most prevalent dataoriented flash technology: the ability to effectively handle write-intensive applications, requirements for large storage capacity, and the all-important need to deliver the absolute lowest cost storage solution. To meet these criteria, flash vendors such as Toshiba, SanDisk, and Samsung have turned to NAND Flash WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 4 Memory. NAND Flash Memory, invented several years after the inception of NOR Flash Memory technology (the original variety of flash aimed at code storage applications), is characterized by its smaller cell size, reduced pin count, and sectororiented management of the media. Its scaled back cell size results in higher densities of the memory and consequently larger storage capacities. The upper limits on how much data can be accommodated are further increased when multi-level cell (MLC) design in applied to the technology. MLC, a technique pioneered by SanDisk, enables more than one bit of data to be stored in a single flash memory cell – this effectively allows twice the amount of data to be stored without proportionally increasing the cost of the memory. Today, capacities available with NAND Flash can reach 64MB with 512 Mbit binary (single-level cell) chips and doubled to 128MB with MLC 1Gbit versions of the flash. (Two 1Gbit die can also be stacked in a single TSOP to achieve 256MB.) Respective NOR Flash capacity maximums are 16MB based on 128Mbit binary chips and 32MB with 256 Mbit density MLC chips. In addition to differences in capacity maximums, price per megabyte tends to widely separate the two technologies as well. At the time of this writing, the device normalized unit cost per megabyte for NAND Flash was less than one half that of NOR Flash. Insights into NAND Flash Memory Technology NAND Flash Memory was designed from the ground up to optimally manage data storage. Internally, the architecture emphasizes speedy write performance, as the task -- common to all flash technologies -- of erasing the flash prior to write operations is streamlined via efficiently sized erase blocks and a disk sector-styled handling of data. Externally, the interface is disk-like as well: On host systems, NAND Flash is readily connected using the same simple interface commonly found in many computer peripherals. Instead of requiring full address lines required to access the full capacity of the memory, a simple hardware interface that consists of two address lines and an 8-bit port is used to access the stored data. Each time a read or write command is issued, the amount of data transferred is always one page consisting of 528 bytes (512 bytes of data and 16 bytes typically containing ECC). This is one of the primary distinctions between the NAND Flash and NOR Flash interfaces: data transfers with NAND Flash always involve the issuing of a command and the accessing of a page’s worth of data – NOR Flash’s interface (with address lines and control signals behaving the same as a SRAM chip or other memory component) supports random access to any single data element. In the past, this difference in interfaces, kept NAND Flash solely employed for disk like data storage applications and NOR Flash tapped for random data access applications. Today, this traditional default usage of the technologies is changing due to a number of factors: 1. The adoption of operating systems such as Windows in non-desktop applications forces the adoption of a PC architecture where the OS is the most valuable component if there exists a mass storage device. 2. Storage requirements for the OS and Applications have reached the maximum available capacities offered by random access non-volatile memory 3. The desire to have only one storage media in a system to control costs. WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 5 4. Performance improvements with SDRAM has forced the need to execute the majority of the applications in SDRAM. 5. A mass storage device available with reasonable write speeds can eliminate the need for battery backed up SDRAM. For example, a 32MB NAND Flash Memory chip might be used to house a 16MB Microsoft Windows CE image and also serve as a 16MB data repository. Differences between NAND Flash Memory and its predecessor become more striking in platforms such as digital cameras where data is heavily written, as its write performance drastically distances it from NOR Flash. The write speed for NAND Flash is at a minimum 10x that of NOR Flash. This becomes significant when transferring large amounts of data. Faces of Removable Flash Several years ago, there was only one type of platform running the Windows operating system: the desktop PC (and its close relatives such as laptops and notebooks). Similarly, there was one major type of removable flash storage device: the PC Card. During that era, the credit card-sized, PCMCIA-interfaced, ATA flash product was just starting to “plug and play,” and served primarily only as an auxiliary storage medium – enabling limited data backup and some data interchange with a few early generation PDAs. Industry pundits may have viewed the still fairly expensive (at the time, multiple dollars per megabyte versus today’s ever-dropping pricing, averaging 30 cents per megabyte) technology as ephemeral, doomed to go the way of other fated storage offerings. Move the clock forward to 2003 and we have the Windows operating system running on seemingly everything from automobile platforms to phones to slotmachines, with flash devices providing the storage for these and dozens of other platforms including digital cameras, music players, and digital camcorders. During the past few years, fueled by the requirements of these new systems and the full weight of the some the world’s largest electronics companies pioneering standards, several wildly popular removable flash storage products surfaced. The first, known as CompactFlash (CF), offered the same PC Card ATA functionality albeit within a match book-sized form factor. This standard, originally conceived of by SanDisk in 1995, has been promoted by the over 220-member CompactFlash association, which counts companies such as Hewlett-Packard, Hitachi, and IBM, among its members. Not long after its introduction, CF soon became the de facto standard for digital camera storage. Its convenient size and generous range of capacities (8MB to 1GB) resulted in ubiquitous CF slots built into digital cameras, MP3 music players, Pocket PCs, set-top boxes, printers, and many other platforms. CompactFlash is also subtly embedded in places you might not even suspect – for example, CF serves as: a boot device for gaming machines, a critical data storehouse in cardiac deliberators, and as a recording medium within digital music recorders. In 1997, the need for storage within smaller devices such as cell phones and pagers, prompted Siemans/AG and SanDisk to develop the postage stamp-sized (24mm x 32mm x 1.4mm) MultiMediaCard. This form of flash storage internally operates just like a CompactFlash card with a built-in controller managing the flash, but externally, it presents a simple seven pin serial interface which is readily integrated with a number of popular CPUs. The MultiMediaCard association consisting today of over 100 members helped proliferate this standard, making it a fixture in many MP3 players and cell phones. The standard is alive and well today, enjoying support from notable companies such as Nokia and Siemens. With WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 6 capacities available ranging from 8MB to 128MB, the MultiMediaCard has been particularly popular for use in storing video clips on digital camcorders (it’s a great mechanism for moving clips over to Windows platforms) – although many of these camcorder designs have now moved to the faster Secure Digital (SD) memory card. SD is a super set of the MultiMediaCard. The use of four data lines instead of one enables significantly faster throughput and a sophisticated licensed key-driven encryption capability is also supported for optionally protecting content such as copyrighted music and other materials. Backward compatibility exists with MultiMediaCards which can be operated within SD slots on host platforms. The SD standard has benefited from heavy endorsing by electronics industry leaders like Panasonic and Toshiba. Its association of over 540 members includes a formidable list of companies which have helped push the standard to the extent that its popularity has eclipsed even that of CompactFlash. Millions of mobile phones, digital still cameras, and digital camcorders now support SD, as do some interesting hybrid products: mobile phones with digital camera integration in particular have taken advantage of SD for housing MPEG4 video clips and other data that can be emailed and used within other Windows platforms. Capacities of up to 1GB are bringing the long-awaited capability of housing fulllength motion picture video on flash memory storage devices into reality. Popularity of SD is projected to continue to escalate, placing it near the top of the list of units shipped along with the Memory Stick. The Memory Stick, a flash storage device in a form factor resembling a stick of chewing gum, originated with Sony and has been broadly supported across Sony’s extensive line of digital still cameras, digital camcorders, and Walkman audio players. Behind Sony’s marketing muscle, the product has grown to the most widely shipped removable flash storage product. Moreover, an association of over 400 companies and a licensing program by Sony have resulted in additional vendors producing Memory Stick-enabled consumer electronics products, and flash memory suppliers like SanDisk offering versions of the Memory Stick as well. Future of Removable Flash With some of the largest companies in the world designing products based on a number of these removable flash storage standards, it’s safe to assume that all will continue to be successful, although the current trend indicates that many of the products being brought to market today are favoring either SD or the Memory Stick. Much of this momentum is a natural migration following advances in processor power and in higher available storage capacities. These aligning factors are driving many applications such as motion JPEG and MPEG video. Products like digital still cameras capable of storing MPEG4 video clips are thriving as a result. Choice of the storage medium in these platforms is somewhat polarized with Sony products featuring the Memory Stick, and products from Panasonic and others mostly choosing SD. Adoption of these two standards in particular is projected to continue over the next few years. Figure 1 depicts this anticipated growth. WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 7 Secure Digital and Memory Stick Projections Units Shipped (millions) 160 140 120 100 80 60 40 20 0 2001 2002 2003 2004 2005 2006 Year Memory Stick (MS) Secure Digital (SD) Figure 1 Source: IDC, May 2002 Inside of these storage products, breakthroughs in the flash technology such as MLC and higher densities are helping to further fuel the markets by enabling larger capacities and reduced costs. As shown in Figure 2, advances are expected to continue to be dramatic. NAND Unit Shipments 100% 80% 60% 40% 20% 0% 2001 2002* <=32Mb 64Mb 2003* 128Mb 2004* 256Mb Figure 2 2005* 512Mb 1Gb 2006* 2Gb 2007* 4Gb Source: Semico, Jan. 2003 Windows and Flash Memory In addition to all of the compelling new consumer electronics products, Windows itself has contributed a lot to the success of flash storage products: it seamlessly supports all of them across a variety of bus interfaces and makes data interchange with host systems transparent and automatic. WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 8 This is particularly evident in later versions of Windows such as Windows XP, where AutoPlay streamlines tasks involving flash. When a flash device is inserted into a host slot such as a card reader, the system inspects the media and detects what content is present. It then presents the user with appropriate task choices for processing the data. If the content involves audio such as WAV or MP3 files, the Media Player or other specialized application associated with these types of files is launched. For digital pictures such as JPEG files, helpful “wizards” such as the “Print Photo Wizard” make it especially easy to manipulate and print pictures. Another aspect of Windows that’s providing interoperability for flash devices is the rock-solid support for USB – it “just works.” When dynamically attached to a USB port, flash memory card readers and solid state flash memory-based “pen drives” are automatically recognized as mass storage class-compliant devices, enabling large amounts of data to be backed up/restored and conveniently moved between computer systems. This new avenue of taking large volumes of personal data to different computers is becoming extremely popular and is projected to be one of the top applications for flash in the coming years. Beyond the infrastructure within the Windows operating system that supports all of these removable forms of flash storage, new capabilities which support the direct interfacing of flash memory chips within embedded platforms is opening up even more choices for system designers as we will see. Integrating Flash Memory in Embedded Windows Platforms In his article, The Disappearing Computer, Bill Gates speaks of: “the exploding number of embedded computers” and the fact that on a daily basis people in the United States interact with about 150 embedded systems, and that these account for up to 90% of the microprocessors produced today. Based on this, it’s no mystery why Microsoft has put a huge effort into producing embedded versions of Windows targeted at these platforms. These represent significant opportunities for developers able to design solutions which effectively meet the specialized requirements of the embedded environments while keeping system costs at a minimum. For non-volatile storage, often what is needed is an embedded media, extremely rugged, impervious to shock and vibration, and low in power consumption. Directly integrating NAND Flash Memory chips on a system board meets these requirements as flash is able to withstand 1000 Gs of shock and draws as little as 10mA current, making it particularly well-suited for battery-operated platforms. Figure 3 contrasts NAND Flash Memory’s minimal power consumption with other storage approaches. WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 9 Power Consumption of Various Storage Media Notebook Hard Drive @ 5V NOR Flash (Intel StrataFlash) @ 3.3V CompactFlash @ 3.3V NAND Flash @ 3.3V 0 10 20 30 40 50 Normal Operating Current (mA) Figure 3 Source: SanDisk, March 2003 Performance considerations when reading and writing the media are key factors as well. At present, NAND Flash Memory can store data at a rate of 2KBytes/300µs, compared to NOR Flash at 200KBytes/s. Hence, a very simple data storage with NAND Flash can have a transfer rate of 6MBytes/s on a single device. With a more sophisticated NAND Flash management controller and multiple NAND Flash Memory devices, higher performance is possible. A single NAND Flash device can have a sustained read transfer rate of 10MBytes/s. One important aspect of NAND Flash management algorithms is the ability to provide constant performance over the life of the product. The ideal situation is that performance is constant for all type of write conditions. This is one of the challenges for NAND Flash based storage systems. This is also a strength of NAND Flash Memory. In addition to these benefits, impact on product margins is perhaps most significant. One common cost improvement methodology is to provide only the functions required by the applications. For some applications, the use of Flash based storage systems such as a Compact Flash, has the added benefit that the card is removable. However, if a removable feature does not add value, the simplest option is to eliminate all the items required to make the card removable. In such instances, designers would choose a Flash memory chipset, thus eliminating the connectors. Further cost improvement is possible if the NAND Flash controller is also eliminated. However, this approach requires the addition of software (no hardware cost) to provide the functionality of the hardware controller. Overall system cost is further reduced with the use of next generation MLC NAND Flash Technology. This is because MLC NAND Flash has the lowest cost structure of any flash technology, and because only the chips themselves are used: no hardware controller is employed to manage the flash (removable devices such as CompactFlash or SD utilize built-in hardware controllers for this purpose). The NAND Flash software controller is required to provide the operating system the same access to the NAND Flash as the hardware controller. The software controller, such as SanDisk’s Stingray, handles all aspects of flash tasks (normally WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 10 done by a hardware controller: manipulating physical/logical address mapping, built in wear leveling mechanism to extend NAND Flash life expand, manipulating internal erase blocks, managing factory defect block, managing error correction, etc.), and provide the “flash translation” that enables host file systems to view the raw chips as a disk-like, sector-oriented storage device. This approach of using a “software controller” to manage flash memory is not a new concept: several forms of this, along with various flash file systems have been available over the years. Not all of these software packages however, have kept pace with NAND Flash technology, particularly MLC NAND Flash, as the complexities of this technology have made it difficult for existing designs to adapt. Flash manufacturers with intimate knowledge of the technology, such as SanDisk, have software packages and Windows drivers available that automatically handle binary as well as MLC NAND Flash chips. Even better news: starting with 2003 version of Windows Pocket PC, support is now built into the operating system to transparently handle all of these functions. NAND Flash Memory Design Considerations As we’ve seen, designing a storage solution based on NAND Flash is easily accomplished from a Windows software standpoint. The cogency of the cost reduction that embedding NAND Flash chips allows is striking given the economic model of today’s hardware products: in some cases hardware is even provided free or below cost (such as the case with cell phones and set-top boxes) with money being made on providing services later. Thus, system designers are becoming more and more clever in how they incorporate NAND Flash technology. To streamline hardware and software interface issues and maximize performance, third parties and flash manufacturers provide solutions that decrease the development risk and improve time to market with offerings such as SanDisk’s Shark (NAND Flash Hardware Interface Logic IP) and SanDisk’s Stingray (NAND Flash Data Management Software). How the platform is booted can be another not so obvious area where the cost structure of NAND Flash can be leveraged. The increasing sophistication of embedded platforms brings with it increased requirements for disk-like data storage and the need for larger code space. A single high density NAND Flash part furnishes more than adequate capacity to accommodate both of these functions. A well-designed configuration – even after adding additional SDRAM with which to shadow the code – results in reduced system costs. The key question regarding booting is: how does the code get moved initially from NAND Flash into the SDRAM? After all, at power on, system software needs to be directly executed to initialize the platform. The answer to this question involves the introduction of an interface layer that helps to manage this initialization. If the platform’s processor provides support for embedded boot code, transferring the code from NAND Flash into SDRAM is a trivial matter. Processors which can readily accomplish this include Motorola’s MC9328MX1 and NEOMAGIC’s (formerly Linkup Systems) NMS7210A. The NMS7210A has a special provision for booting from an inexpensive serial PROM that can house the code that performs the transfer. In environments where boot options aren’t as flexible, a few hundred gates of programmable logic can be employed to do the job. One approach is illustrated in Figure 4. At power on reset, NAND Flash Memory provides the boot code to the system processor. This boot code initializes the system SDRAM, loads the system code into SDRAM and transfers control to the application in SDRAM. There are a WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 11 number of approaches and the exact approach will vary depending on the CPU and the system architecture. Volatile Memory (e.g. SDRAM) Non-Volatile Memory NAND Flash OS + Application System Data OS + Application OS + Application System Specific OS Loader 3 System Specific OS Loader 2 CPU System Data System Init System Init SDRAM Test Figure 4 1 SDRAM Test Start-up Code Page 1-15 Page 0 Source: SanDisk, March 2003 Call to Action Windows has gained many salient features and expanded its support for flash memory storage. As a result, today, all major forms of flash storage are transparently handled by the operating system – this tight integration has brought new levels of convenience to end users and powerful options for developers. This is particularly important for embedded Windows environments, as the characteristics of flash precisely mirror requirements for ruggedness, conservation of space within small form factors, and minimal power consumption. The capabilities and cost structure of NAND Flash Memory furnish a complete code and data storage solution at previously unattainable levels of cost effectiveness. By incorporating the design techniques mentioned here, these benefits can be readily put to work in your platform. Manufacturers of various Windows-based platforms should: Integrate NAND Flash chip and removable Flash Card into the system board directly Take advantage of Windows platform built in support for NAND Flash Consult flash manufacturers to get complete flush solution to shorten product to market time Feedback: To provide feedback, please send e-mail to [email protected]. WinHEC 2003 Microsoft Windows Hardware Engineering Conference NAND Flash Memory: The Complete Storage Solution for Windows Platforms - 12 Acronyms and Terms EPROM: Erasable Programmable Read - Only Memory device MLC: Multi Level Cell WinHEC 2003 Microsoft Windows Hardware Engineering Conference
© Copyright 2026 Paperzz