COMPUTER MEMORY
The computer memory may be compared to a human brain. The computer memory is used to store data and instructions. It is divided into a large number of small parts called cells and each location or cell has a unique address.
There are two types of computer memory, primary or internal memory and the secondary or external memory.
The primary or internal memory stores data and program instructions. Primary or internal memory are temporarily or volatile, except for the read only memory (ROM) which is non-volatile and is considered to be a primary or internal memory. The other primary or internal memory types are the random access memory (RAM) and the cache memory. In addition to their volatile nature primary they are fast to access and have a limited storage capacity.
Read only memory (ROM) is a type of computer memory that store program data and program instructions that the CPU uses while running applications.
There are different types of Read only memory (ROM) and they are masked Read only memory (MROM), programmable Read only memory (PROM), erasable programmable Read only memory (EPROM), and flash Read only memory.
Masked Read only memory (MROM) is a type of read only memory that is programmed during the manufacturing process.
Programmable Read only memory (PROM) is a type of read only memory that can be programmed by the user.
Erasable programmable Read only memory (EPROM) is a type of read only memory that can be erased and reprogrammed.
Flash read only memory is a type of read only memory that can be erased and reprogrammed in blocks.
Random access memory (RAM) is a type of computer memory that temporarily stores data and program instructions that the CPU uses while running applications.
There are different types of random access memory (RAM) and they are dynamic read access memory (DRAM), static random access memory (SRAM) and synchronous dynamic random access memory (SDRAM).
Dynamic read access memory (DRAM) stores data in capacitors, which must be periodically refreshed to maintain data. Static random access memory (SRAM), stores data in flip- flops that do not require refreshing. Synchronous dynamic random access memory (SDRAM). Is a type of dynamic random access memory that synchronizes its operations with the CPU clock speed.
Cache memory is a small fast and volatile memory storage location that acts as a buffer between the main memory (RAM) and the CPU. It stores frequently used data and program instructions and provides quick access to the CPU.
Secondary or external memory is a non-volatile memory storage device that is not directly accessed by the CPU. They are used for large, long term storage of data and program instructions and are slow to access.
There are different types of secondary or external memory storage devices and they are hard disk drive (HDD), solid state drives (SSD), optical drives, flash drives and other external drives or hard disk.
The hard disk drives (HDD) consist of one or more magnetic disk called platters. Each disk in the pack has a top and bottom surfaces on which data is recorded using a magnetic head. It is permanently fixed in the system unit.it is usually used for permanent mass storage. The most important function of the hard disk drives is to store program files and data files. The hard disk drive comes in a variety of sizes with storage capacities as high as 5TB (terabyte) or more. The CPU access data stored on the hard disk much faster than it can access on CD or optical drives.
Solid state drives (SSD) are storage devices with no moving parts. Data and information are stored and retrieved electronically from these devices.
Optical storage drives store data on a disk as a number of data dots that can be read using light. Data is read by shining the laser beam onto the surface of the disk. Also the beam burns very tiny holes (pits) into the shiny surface to record data. Examples of optical disk are compact disk and digital video disk.
Flash drives are small storage devices that can be held in the hand and worn on the body as key or necklace. They are portable devices that can connect directly to the USB port of a computer to transfer data and program files.
The advantages of using computer memory in general are their fast access time, high speed data transfer between the CPU, memory and other components, their use as temporary storage and data not only accelerates but optimizes their delivery time and thus enables multitasking.
While the obvious disadvantages are the volatility of some types of memory, limited capacity of storage, their high cost and their tendency to be prone to errors and data corruption is great.
Computer memory finds widespread applications and use in the following; personal computers, laptops, mobile phones, servers, embedded systems, gaming consoles, cloud computing and data centers.
The future trends in computer memory are expected to be in tandem with the trends and development in the following areas; increased capacity of RAM up to 128GB or more and HDD to 16TB and above, SSD of the order in terms of speed up to 10GBps and 3D Xpoint non-volatile memory technology that offer high speed storage and low latency, lower power consumption and new emerging technologies in primary memory like phase change memory(PCM), spin-transfer torque magnetic recordings(STT-MRAM) and resistive random access memory RRAM) which may in the future replace the traditional RAM. While cloud and DNA storage research and developments efforts, may result in an ultra-high density storage long-term cloud computing network.
SOURCES:
- Computer organization and Design by David A. Patterson and John L. Hennessy.
- Memory systems: Cache, DRAM, Disk. By Bruce Jacob, Spencer Ng and David Wang.
- Emerging memories: technologies and trends by Yoshio Nishi.
- Computer memory: a brief history by Bruce Jacob.
- Operating systems concepts by Abraham Silberschatz, Peter Baer Galvin and Greg Gogne.