Flash

flash memory Flash memory is a non-volatile memory. This means a flash keeps the data even if power is turned off. It is a type of EEPROM (electrically erasable programmable memory. Flash is a rewritable memory chip that supports access of multiple words in single programming operation. This allows faster access (read) time and makes Flash popular than other ROMs.

Storage

The flash memory can store kilobytes to gigabytes. Greater the storage higher will be the cost. The manufacturers have developed NAND Flash using multi-level chip technology (MLC). MLC allows storing 2 bits per so this NAND Flash can store up to 8 Gigabytes of data. Samsung Electronics are the world's largest NAND Flash manufacturers. Their largest NAND FLASH chip stores 16 gigabytes. The flash chips in gigabytes are quite expensive for common people. They normally use 128MB, 256MB, 526MB, or even 1GB. Large voluminous businesses where great deal of storage is required, 2GB, 4GB, 8GB and now 16GB are mostly used.

NOR and NAND Flash

NOR Flash is based on NOR gates. Reading from NOR-Flash is similar to those of addressed mapped memories. Erasure and writing the NOR Flash is done by special commands. These commands are written to the mapped memory's first page and defined by Intel as common flash interface. NAND Flash is based on NAND gates and accessed like hard disks and memory cards. During software execution, NAND Flash uses virtual memory concept of paging. Both NAND and NOR Flash can be partitioned by file system to use as any storage device.

FLASH File System

Flash file systems overcome the problems associate with Flash memories. For instance longer erase times with NOR-Flash was a big issue. Updating NOR-flash memory normally requires larger time. File system removed the problem. What file system does it stores the copy of changed data to a fresh block and maps the file pointer. Then deletes the old block in spare time saving the valuable time. The most compatible file system for flash is old FAT file system. JFFS was the first to work on LINUX for NOR-Flash. JFFS2 and YAFFS support the NAND Flash memories. FFS2 works on MS-DOS to support Flash memories.

Limitations with FLASH

As mentioned earlier that a FLASH allows multiple word access in one operation, but this is not the case with erasure. A single byte within the word or block can be programmed but cannot be erased. The size of a block is normally 64KB, 128KB or 256KB. In order to erase it needs to be erased the entire block at a time. Some flash memories have limited number of erase-write cycles especially NOR-Flash.

Flash Technology

Flash works on two processes:
  • Floating gate avalanche injection (write/read)
  • Tunneling (erase)
A floating gate is placed after the gate of a MOS – metal oxide semiconductor (NMOS or PMOS). A high gate voltage traps the electrons in the gate increasing threshold voltage. This allows storing one. A flash uses arrays of such transistors to store information. A single transistor corresponds to a cell that can store one bit. In Advanced Flash more than one bit are stored and referred to as multi level cell (MLC) Flash. Tunneling is the process that is used to erase the stored data. An opposite high voltage is applied at gate. This removes the electrons through a thin tunnel near one end at drain. The result is the low previous threshold voltage and the cell is in original fresh state to be read or written.

FLASH Applications

The flexibility and low power consumption makes FLASH more reliable than other storage devices. Being small in size it is one solution in microchip technology. Its two revolutionary integrated applications are: