Static Random Access Memory (SRAM) is a type of semiconductor memory.

The word "static" indicates that the memory retains its contents as long as power remains applied, unlike dynamic RAM (DRAM) that needs to be periodically refreshed. Data are lost when the circuit gets powered down, however, which makes SRAM a volatile memory as opposed to read-only memory and flash memory.

Random access indicates that locations in the memory can be accessed, i.e. written or read, in any order regardless of the memory location that was accessed before.

Each bit in an SRAM is built from four transistors that form a subcircuit with two stable states of equilibrium, much like two cross-coupled inverters do. Two more transistors serve to control the access to one such bistable subcircuit during read and write operations. It thus typically takes six MOSFETs per memory bit.

The perfectly symmetric circuit structure allows the value of a memory location to be read much faster than in a DRAM. Another difference that contributes to making SRAM faster is that commercial chips accept all address bits at a time. As opposed to this, commodity DRAMs have the address multiplexed in two halves, i.e. higher bits followed by lower bits, over the same package pins in order to keep their size and cost down.

SRAM should not be confused with SDRAM, which stands for synchronous DRAM and is entirely different from SRAM, or with pseudostatic RAM (PSRAM), which is DRAM disguised as SRAM.

Table of contents
1 Types of SRAM
2 Applications
3 SRAM for hobbyists

Types of SRAM

By Transistor Type

By Function

  • asynchronous
  • synchronous

Applications

Fast SRAM is faster than DRAM and is used where speed is the most important requirement, as in the
cache of a CPU and in digital signal processing circuits. Slow, low-capacity SRAMs are used where low power consumption and low cost are the most important requirements, as in battery-powered backup RAM. SRAM is less dense than DRAM (fewer bits per unit area) and is therefore not suitable for high-capacity, low-cost-per-megabyte applications such as PC extended memory.

The power consumption of SRAM varies widely depending on its speed. Fast SRAM is much more power-hungry than DRAM, and some ICs can consume power of the order of a watt at full speed. Slow SRAM, such as the battery-powered "CMOS" RAM on PC motherboards, can have a very low power consumption, in the region of a microwatt.

SRAM for hobbyists

Another current role for SRAM is that it's very significantly easier to work with at the hobbyist level than DRAM; you don't have to deal with the refresh cycles of DRAM, and, presumably for historical reasons, the address and signal pins are separate rather than multiplexed. So the chip has a very straightforward pin-out: power, ground, some address pins, some data pins, and three control pins "write enable", "chip enable" and "output enable". "chip enable" is there to allow systems containing multiple SRAM chips; you use a demultiplexer, something like a 74LS154, to convert some upper bits of the address into a chip-enable for one of sixteen chips.

To write to the chip, present the address on the address pins and the desired data on the data pins, set the appropriate chip-enable, and set write-enable; to read from it, present the address and the data, set the chip-enable, and set output-enable. Easy as cake.

Of course, nowadays if you want to use memory you probably want to connect it to microprocessors or FPGAs, and in one case you can probably get a DRAM-supporting chipset, and in the other case build a DRAM controller in the FPGA without great effort.