Flash Memory Definition

Flash memory, sometimes called flash RAM, is a type of semiconductor device that combines important features of both memory and storage. These features include high-speed access and retention of data in the absence of a power supply.

Memory in a computer context refers to semiconductor devices whose contents can be accessed (i.e., read and written to) at extremely high speeds but which are retained only temporarily (i.e., while in use or, at most, while the power supply remains on). The main memory of most computers consists entirely of DRAM (dynamic random access memory) chips, which are a type of random access memory (RAM) whose contents need to be electrically refreshed continuously.

Storage, in contrast to memory, retains its contents even in the absence of a power supply. It also has a much lower cost per bit and thus is far more abundant on most systems than memory. Its main disadvantage is that it has much slower access speeds, and thus its contents cannot be accessed directly by the CPU (central processing unit). Examples of storage devices include hard disk drives (HDDs), floppy disks, optical disks and magnetic tape.

Electrically erasable programmable read only memory (EEPROM) is a type of semiconductor memory chip whose contents can be erased and rewritten numerous times and are retained in the absence of a power supply (i.e., non-volatile). Flash memory is a type of EEPROM that allows blocks, which consist of a large number of memory cells, to be erased or written in a single action, i.e., in a flash (and hence its name). This is much faster than for conventional EEPROM, which allows erasure and writing only at the byte level.

The advantages of flash memory as compared with HDDs are substantial. They include smaller size, lighter weight, a far lower power consumption, longer life expectancy and greatly improved shock resistance. The main disadvantage at present is that the cost per unit unit of storage capacity is still much higher than that for HDDs. However, the gap is gradually narrowing. This, together with the availability of higher capacity chips, has been resulting in a swift growth in the use of flash memory in miniaturized, portable products.

Flash memory also has another disadvantage. In contrast to RAM and like all types of EEPROMs, it wears out after a certain number of write and erase cycles. This is due to the degradation of the insulating oxide layer around the microscopic cells that are used to store data. Fortunately, however, the number of cycles in most applications is sufficiently low that this situation is not frequently encountered.

Data can be written to any bytes within a newly erased block on a flash memory chip; however, once it has been written, it cannot be changed again until the entire block is erased. That is, flash memory offers random access (i.e., the ability to immediately access any location) for read and write operations but not for rewrite or erase operations. Thus, many applications for DRAM that involve overwriting a specific address location quickly cannot be easily implemented on flash memory. In addition, DRAM is generally cheaper than flash memory on a cost per bit basis.

There are two basic types of flash memory: NOR and NAND. The names refer to the type of logic gate used in the storage cells. In logic, NOR means true only if both inputs are false, and NAND means false only if both inputs are true.

NOR flash was the first type to be developed, and it was invented by Intel Corporation in 1988. It has a life expectancy of 10,000 to 100,000 write-erase cycles. Although it has slow erase and write speeds, it features random access for reading and writing, thus making it suitable for the storage of data that needs to be updated only infrequently.

As compared with NOR flash memory, NAND flash memory features faster erase and write speeds, a greater memory density, a lower cost per bit and a much longer life expectancy (roughly ten times the number of write-erase cycles). However its input/output interface allows only sequential access to data.

Several filesystems (i.e., ways of organizing data on storage media) have been developed specifically for use with flash memory. Such systems update the contents by first writing a copy of the changed data to a fresh block, remapping the file pointers to the new locations, and then erasing the old blocks.

The first such filesystem was JFFS (journaled flash file system), and it was soon superseded by JFFS2, which was initially developed for NOR flash. YAFFS (yet another flash filing system), which was subsequently released in 2003, was designed specifically for NAND flash memory, and JFFS2 was updated to also support NAND flash. However, most flash media today use the venerable FAT (file allocation table) filesystem for compatibility purposes.

FAT was developed in 1980 for MS-DOS and is also used in consumer versions of Microsoft Windows through Windows ME. It is considered relatively uncomplicated, and thus it is a popular format for floppy disks. Moreover, it is supported by virtually all existing personal computer operating systems and is consequently often used to share data between multiple operating systems on the same computer or network.

Flash memory is utilized in a wide array of products, including cell phones, computers, digital cameras, modems, audio recorders, printers, portable music players (e.g., newer versions of the Apple iPod), network switches, digital set-top boxes and embedded devices. Cell phones are the largest application by far, accounting for roughly half of total output.

A major computer application is the basic input/output system (BIOS), sometimes called a flash BIOS, which provides basic instructions for a computer's hardware and controls the computer during booting (i.e., starting) until the operating system takes over. The big advantage of using flash for this application is that the contents are retained in the absence of a power supply and can be updated at high speed if desired.

A rapidly growing computer application is USB key drives, also called flash memory drives or flash memory sticks, a small, removable, and increasingly inexpensive storage device that uses a universal serial bus connector.

Flash memory technology continues to advance at a swift pace. For example, in September 2005 Samsung Electronics Company unveiled the world's first 16-gigabit NAND flash chip1 and announced that it was preparing to begin mass producing in the second half of 2006. The South Korean firm is the world's largest producer of both NAND and DRAM memory chips. Subsequently, in March 2006, Samsung announced development of a flash memory storage device with a 32 gigabyte capacity that is intended to replace HDDs in portable products for which small size, light weight and high durability are more important than low price2. Presumably this 32GB device will utilize the 16Gb chips.

Flash memory should not be confused with Flash animation graphics. The latter, while somewhat controversial, have become increasingly common on websites in recent years.

1The 16-gigabit NAND flash memory chip, which is the equivalent of two gigabytes of storage, has double the capacity of a NAND chip the company introduced one year earlier. A single 16-gigabit NAND flash memory chip can store data equivalent to 200 years of a 40-page daily newspaper or about 8,000 digital music files.

2According to Samsung, this device has a size comparable to that of 1.8-inch HDDs and reads data at more than twice the speed of HDDs. Moreover, power consumption is said to be only about five percent of that of HDDs.

Created June 30, 2005. Updated March 23, 2006.
Copyright © 2005 - 2006 The Linux Information Project. All Rights Reserved.