Memory
What Is Memory?
Memory, in the context of computing and electronic systems, is the component or collection of components that stores data and program instructions for use by a processor. It encompasses a wide range of technologies organized into hierarchies based on speed, capacity, cost, and persistence, from the fast, expensive on-chip registers and caches that feed the processor directly to the slower, denser storage used for bulk data retention. The field of computer memory engineering draws on semiconductor physics, circuit design, and systems architecture, and it has evolved continuously since the earliest stored-program computers of the late 1940s.
Memory is distinguished first by volatility: volatile memory loses its contents when power is removed, while non-volatile memory retains data without a continuous power supply. Dynamic random-access memory (DRAM), the dominant technology for main memory in personal computers and servers, is volatile. Flash memory, which underlies solid-state drives and mobile storage, is non-volatile. Each technology involves distinct trade-offs in access time, write endurance, and energy consumption.
CMOS Memory Circuits
The majority of memory in contemporary electronic systems is fabricated using complementary metal-oxide-semiconductor (CMOS) processes, the same platform used to manufacture processors. Static random-access memory (SRAM) stores each bit in a cross-coupled inverter pair, typically using six transistors per cell. SRAM is fast and requires no refresh operations, making it the standard choice for on-chip cache memory in processors, but its low bit density relative to DRAM limits its use to capacities in the megabyte range. DRAM stores each bit as charge on a capacitor accessed through a single transistor, which enables much higher densities than SRAM at the cost of requiring periodic refresh cycles to prevent charge leakage. NAND flash memory, which arranges floating-gate or charge-trap transistors in a series configuration within each cell string, achieves very high density at lower cost per bit than either SRAM or DRAM, but it has limited write endurance, typically 10,000 to 100,000 program-erase cycles per cell.
Emerging Memory Technologies
Beyond conventional CMOS memory, a set of technologies based on different physical storage mechanisms has advanced from research to commercial production. Phase-change memory (PCM) stores data in the amorphous or crystalline state of a chalcogenide alloy such as germanium antimony telluride, switched by brief heat pulses. Resistive RAM (RRAM) uses the resistance of a thin dielectric film as a storage state, changed by applying voltage across the film. Spin-torque transfer RAM (STT-RAM) stores data in the magnetic orientation of a tunneling junction, switched by spin-polarized current. These emerging technologies offer potential combinations of near-DRAM speed with non-volatility, addressing the long-standing memory-wall problem in processor performance. A 2018 review in National Science Review surveys the architectures and trade-offs of these non-volatile memory technologies and their implications for system design.
Memory Architecture and Hierarchy
Memory architecture refers to the organization of different memory technologies into a coherent hierarchy within a computing system. At the top sits a small amount of very fast SRAM cache, often split into L1, L2, and L3 levels with increasing size and latency at each level. Below the cache is main memory (DRAM), and below that is non-volatile storage. Each level exploits the principle of locality: programs tend to reuse recently accessed data, so keeping hot data in fast memory reduces average access time. In field-programmable gate arrays (FPGAs), embedded block RAM provides on-fabric memory that application designers can configure for their specific access patterns, as described in work on FPGA-based memory architecture for compute-intensive applications on IEEE Xplore. The interaction between memory hierarchy design and processor pipeline depth is a central concern of computer architecture research, and PCM-based DRAM alternatives have been studied extensively in the context of rethinking traditional hierarchy assumptions.
Applications
Memory technologies have applications across a broad range of electronic systems, including:
- Microprocessor caches and main memory in personal computers, servers, and cloud infrastructure
- Solid-state storage in smartphones, tablets, and enterprise SSDs
- Embedded memory in automotive control units and industrial IoT sensors
- FPGA-based accelerators for machine learning inference and signal processing
- Data recording systems in space-constrained or radiation-hardened environments