Volatile and non-volatile are classifications in computer memory. Volatile memory is a type of computer memory that requires power to retain the stored information while nonvolatile memory does not require refreshing to retain the memory values.
What is Volatile Memory?
Volatile memory is a memory type in computing that requires power to retain the stored information. The contents of the memory device have to be regularly refreshed to avoid data loss. The RAM (Random Access Memory) modules in computers and the Cache memory in the processors are examples to volatile memory components. (Read the Difference Between RAM and Cache Memory)
RAM devices are built using a large assembly of capacitors that are used to store loads temporarily. Each capacitor represents one memory bit. When the capacitor is charged, the logical state is 1 (High) and, when discharged, the logical state is 0 (Low). And each capacitor is needed to recharge at regular intervals for retaining data continuously, this repeated recharging is known as refreshing cycle.
There are three main classes of RAM, and those are Static RAM (SRAM), dynamic RAM (DRAM) and Phase-change RAM (PRAM). In SRAM, data is stored using the state of a single flip-flop for every bit and, in DRAM, a single capacitor is used for every bit. (Read more about the Difference Between SRAM and DRAM)
What is Nonvolatile Memory?
Nonvolatile memory is a type of computer memory that does not require refreshing to retain the memory values. All types of ROM, flash memory, optical and magnetic storage devices are nonvolatile memory devices.
Earliest ROM (Read Only Memory) devices had only the capability to read but not write or edit the contents. In some instance data can be modified, but with difficulty. The oldest type solid state of ROM is Mask ROM where the content of the memory is programmed by the manufacturer itself and cannot be modified.
PROM or Programmable ROM was developed on the basis of Mask ROM, where the memory can be programmed by the user, but only once. EPROM (Erasable Programmable ROM) is an erasable memory device, which can be erased using exposure to UV light and programmed through higher voltages. Repeated exposure to UV light eventually deteriorates the storage capability of the IC.
EEPROM or Electronically Erasable Programmable ROM is an extension from the EPROM where the memory can be programmed multiple times by the user. The contents of the memory component can be read, written and modified using a specifically designed interface. The microcontroller units are examples of EEPROM devices. Flash memory is developed based on the EEPROM architecture.
Hard disk drives (HDD) are also a non-volatile secondary data storage devices used for storing and retrieving digital information in computers. The hard drives are prominent due to their capacity and performance. The capacity of the HDD`s vary from drive to drive, but has been consistently increasing over time.
Optical storage devices such as CD’s DVD’s and BluRay Discs are also nonvolatile memory devices. Punch cards and magnetic tapes used in the early computers can also be included in this category.
What is the difference between Volatile and Nonvolatile Memory?
• Volatile memory requires refreshing to retain the stored contents, while nonvolatile memory does not.
• Volatile memory requires power to retain the memory while nonvolatile memory does not require power. If power to volatile memory is lost, then the contents are automatically erased.
• RAM is the main type of volatile memory and is used as temporary storage of information before and after processing. ROM devices are used to store data or information for a longer time. (Read more about the Difference Between ROM and RAM)
• Secondary storage devices used in computers are nonvolatile memory devices.
• Volatile memory devices are mainly solid state devices, and nonvolatile memory can be solid-state, magnetic, or optical.