Definition: Flash memory (Known as Flash Storage) is a type of non-volatile storage memory that can be written or programmed in units called “Sector” or a “Block.” Flash Memory is EEPROM (Electronically Erasable Programmable Read-Only Memory) means that it can retain its contents when the power supply removed, but whose contents can be quickly erased and rewritten at the byte level by applying a short pulse of higher voltage. This is called flash erasure, hence the name. Flash memory is currently both too expensive and too slow to serve as main memory.
Flash memory (sometimes called “Flash RAM”) is a distinct EEPROM that can read block-wise. Typically the sizes of the block can be from hundreds to thousands of bits. Flash Storage block can be divided into at least two logical sub-blocks.
Flash memory mostly used in consumer storage devices, and for networking technology. It commonly found in mobile phones, USB flash drives, tablet computers, and embedded controllers.
Flash memory is often used to hold control code such as the basic input/output system (BIOS) in a personal computer. When BIOS needs to be changed (rewritten), the flash memory can be written to in block (rather than byte) sizes, making it easy to update. On the other hand, flash memory is not used as random access memory (RAM) because RAM needs to be addressable at the byte (not the block) level.
Flash memories are based on Floating-Gate Transistors. Floating gate transistors are used in memory to store a bit of information. Flash memories are used in the device to store a large number of songs, images, files, software, and video for an extended period,etc.
We’ll be covering the following topics in this tutorial:
History Flash Memory
In 1980’s Flash memory as invented by Fujio Masuoka, while working in Toshiba. In 1988, Intel introduced NOR flash memory chip having random access to memory location. These NOR chips were a well-suited replacement for older ROM chips. In 1989, with more improvement, NAND flash memory was introduced by Toshiba. NAND flash memory is similar to a Hard disk with more data storage capacity. After that, there has been a rapid growth in flash memory over the years passes.
Flash memory is an electronic chip that retains its stored data without any power. Flash memory is different from RAM.RAM is volatile memory, needs electricity and power to maintain its content. However, flash memory does not require the power for holding data. Flash memory was used in many devices like in form SD card, Pen-drive (moveable storage), camera card and video card, and so forth. Flash memory gives faster access to data content as compared to hard disk. In hard-disk, disk rotation takes time to move on the particular cylinder, track or sector.However,in a flash, no rotating time disc has created a barrier for fast access.
Types of Flash Memory
Flash memory is available in two kinds NAND Flash and NOR Flash Memory. NAND and NOR flash memory both have different architecture and used for specific purpose.
NAND Flash Memory
In today is an environment where all devices require high data density, faster speed access and cost-effective chip for data storage. NAND memory has needed less chip area hence more data density. NAND Memory used the concept of the block to access and erases the data. Each block contains the different size of pages various from bytes. MMU (Memory Management Unit) helps NAND to the first page the content or copied into RAM and then executed.
NOR Flash Memory
In the circuit of flash memory, memory cells are connected in parallel. It provides random or sequentially access memory. Data Reading process for NOR and RAM are similar. We can execute the code directly from NOR without copying into RAM. NOR memory ideal for runs small code instructions program. It referred to Code-storage applications. It used for low-density applications.
NOR flash provides support to bad block management. Bad block in memory is handled by controller devices to improve functionality.
We can use the combination of both NOR and NAND memory. NOR (software ROM) used for instruction execution,and NAND used for non-volatile data storage.
Limitation of Flash Memory
Although Flash memory gives many advantages, yet it has some flaw.
1) We can quickly read or programmed a byte at a time, but we cannot erase a byte or word. It can delete data in blocks at a time.
2) Bit flipping: Bit Flipping problem is more occur in NAND memory as compare to NOR. In Bit Flipping, a bit get reversed and create errors. For checking and correcting the bit error (EDC/ECC) detection and error correction code are implemented.
3) Bad block: Bad block are the blocks which can’t be used for storage. If scanning system gets fails to check and recognize bad block in memory. Then reliability of system gets reduced.
4) Usage of NOR and NAND memory: NOR is easy to use. Just connect it and use it. However, NAND not used like that. NAND has I/O interface and requires a driver for performing any operation. Read operation from NOR do not need any driver.