ASSP F1-8X is available in a 128 pin LQFP for use in ATA format cards and in a 100 pin TQFP for CompactFlash. It is supplied in volume to card manufacturers. For designers who are beginning a flash memory project Hyperstone offers a comprehensive tool kit for developing and testing ATA Flash Memory and CompactFlash cards. It includes a hardware/ software test environment, firmware for the Hyperstone’s advanced wear-levelling algorithm and ECC and other software development tools. Hyperstone provide a full range of support services for flash card designers, from technical help through to complete design services. Among the existing customers is Solid State System Co, which uses the F1-8X in its 3SPCF range of CompactFlash memory cards. Hyperflash® Cards Hyperstone has developed its own Hyperflash families of ATA Flash Memory cards and CompactFlash cards, using the F1-8X to produce outstanding performance. These are available in sizes up to 348 Mbytes currently. The latest flash memory devices have made it possible to make cards with capacities up to 992 Mbytes, which these will be shipping soon. Standard Hyperflash cards are intended to meet midto low-level production requirements, while special Hyperflash cards are also available to meet special requirements, such as extreme temperature ranges or other demanding environments. They can also be integrated into other processor environments. The Hyperflash cards are also intended as working reference samples for customer evaluation of the F1-8X flash memory controller. Business Hyperstone provides two business models: Sale of controller devices and licensing of IP. Packed flash memory controllers are available to customers ready for PCB mounting. In special cases – typically high volume in excess of 500k per year – Hyperstone also can make the Intellectual Property in the F1-8X design available under license. This could be to allow its implementation in a different process technology, where Hyperstone has experienced engineering resource available. Alternatively, it could be to transfer the technologies for flash memory control into a different environment. For example, the F1-8X control functionality with the wear-levelling and ECC can provide a quick route to efficient integration of flash memory within an embedded application. Flexibility and Support The F1-8X just demonstrates how Hyperstone’s RISC/ DSP processor technology can be adapted to the needs of flash card control. There are many other applications where the Hyperstone’s innovative and powerful RISC/DSP architectures can provide dramatic increases in performance and drastically cut time to market and system costs. TRADEMARKS: Hyperstone, Hyperflash, CompactFlash Hyperstone AG, Am Seerhein 8, D-78467 Konstanz, Germany Phone: +49 (7531) 98030 Fax: +49 (7531) 51725 E-mail: [email protected] Website: www.hyperstone-ag.com Flash Memory Card Design - the Hyperstone Way Overview Portable devices, such as PDAs, personal communicators, digital cameras, MP3 players or voice recorders, require a storage solution that combines non-volatility with low power requirements and high access speeds, all at an acceptable cost. It is this market that the Flash Memory Card addresses. As the cards have increased in capacity, so it has become more important to provide built-in control functionality, including wear-levelling. Hyperstone offers a complete solution - a flash memory controller development kit that is “simply the best” - for a wide range of card formats, memory types and applications. Flash Memory Cards Flash cards provide a third way in memory devices. Cheap, high-volume, non-volatile storage has previously been provided by rotating magnetic and optical memory such as hard disks and CD and DVD Read-Write systems. These are prone to mechanical problems, are power hungry and can be slow, particularly when powering up from sleep or standby mode. Lower capacity requirements are served by solid-state devices. DRAM and SRAM are fast, but volatile and expensive. PROM and other devices are nonvolatile, but extremely slow when writing or programming. Flash memory is a non-volatile solid-state memory that is affordable and has acceptable read-write speeds. It draws considerably less power during operations than rotating memory devices, is considerably more robust and wakes rapidly from standby or sleep modes. Banks of flash memories can be packaged in a PC Card format to create the solidstate equivalent of a hard disk. With the increasing density of these flash cards, managing memory can quickly become an overhead on a host processor. Instead, processing capability has become built in, making flash cards look even more like a standard hard disk to a host. The two leading formats for flash memory cards are the ATA Flash Memory card in a PC II form-factor, used in PDAs or personal organizers and the newer, small form-factor CompactFlash™ cards used, for example, in MP3 players and digital cameras. Design Options Flash Card Controller Requirements The controller manages the storage of data on the card and handles communication between the card and the host. It receives data from the host and writes it to the bank of flash memory. It responds to requests for data by reading from the memory bank and passing data to the host. The host interface is defined by the ATA/ IDE interface or the PC Card II/CompactFlash Services. Support Interfaces. To ensure that the data is correct the controller uses ECC (Error Checking and Correction). During write operations, a calculation on the data to be stored generates additional code bytes. These are stored with the original data in the flash memory bank and, during read operations, are used in a reverse calculation to validate the data and correct bit errors. After multiple read-write operations, individual bits in flash memory can deteriorate. Optimal card life requires equal use of each bit and “wear-levelling” algorithms, executed on the fly during reading and writing operations, have been developed to provide this. Manufacturer S Manufacturer S Manufacturer H Manufacturer H Manufacturer L Manufacturer L Manufacturer M Manufacturer M Hyperstone Since both ECC and wear-levelling are carried out on the fly, a flash card controller has to be able to carry out these tasks at speeds that match the operational speeds of the host device. A controller designed for a specific card and manufactured in volume could be implemented as an ASIC. But if it is to have more general application then the ASIC has limitations. It needs to be able to cope with different flash memory devices with different characteristics and different wear-levelling requirements, with improved ECCs and with different host interfaces. Hyperstone has implemented the F1-8X, a powerful single-chip controller solution as an ASSP (Application Specific Standard Product). Based on the Hyperstone combined RISC/DSP processor it is a high-speed, low-power, flexible solution for a wide range of flash card applications, up to 992 MBytes and beyond. Hyperstone 0 500 1000 1500 2000 2500 3000 0 20 Transfer Speed (KByte/sec) 40 60 80 100 Random Read Time (ms) Manufacturer S Manufacturer S Manufacturer H Manufacturer H Manufacturer L Manufacturer L Manufacturer M Manufacturer M Hyperstone Hyperstone 0 50 100 150 Random Write Time (ms) 200 250 0 30 60 90 Weighted Average Time (ms) Source: Hyperstone benchmarking using QBENCH from Quantum Data 120 150 The Design Solution The 32-bit Hyperstone F1-8X ASSP implements complete flash card functionality in a single chip programmable device. (see diagram) The external 16 bit wide interface to the host device supports both ATA Flash Memory cards and CompactFlash cards. It is in full compliance with the PCMCIA standards and has the option of a True-IDE mode. The interface provides automatic selection of either 5.0V or 3.3V power supply. Once data has crossed the host interface, it is passed to the flash memory interface where a firmware implementation of the sophisticated 32 polynomial Error Correction Code algorithm generates the check bytes. During both write and read operations, the Hyperstone implemented ECC has no overheads. The flash memory interface provides full support for up to 16 memory devices from AMD, Hitachi, Mitsubishi, Samsung, Toshiba and other compatible manufacturers providing up to 992 MBytes of storage. It can achieve transfer rates of up to 20Mbytes/sec. It also incorporates a voltage regulator to provide the 3.3V supply needed for flash. The wear-levelling algorithm is executed in the RISC core. The F1-8X device uses an extremely sophisticated algorithm, developed by Hyper- stone and now being patented, which equalises the use of all locations for optimal card life. It supports the wear characteristics of a wide range of different manufactures devices. Since the wear-levelling algorithm is in software, the F1-8X device will be able to support new memories with different wear characteristics with only minor code changes. Card life will exceed 100,000,000 write cycles with a MTBF in excess of 1,000,000 hours. The 4 KByte Boot ROM holds the flash memory access routines. It also has the routines for loading the operational code into the internal 16 KByte RAM of the controller from the first memory areas of the flash memory, where it is stored during manufacture. The onchip RAM is also used for intermediate storage during wear levelling calculations. Internal memory reduces overall component count and improves start-up and run-time performance. Typical power requirements are 29mA for reading to memory and 28mA for writing. Idle mode power consumption is 5mA (typical) while in sleep mode the controller requires 100µA (typical). Applications and Availability To meet different applications, Hyperstone provides a design kit and a range of products based on the F1-8X device to meet different application requirements.