Static RAM (SRAM) is a type of volatile semiconductor memory that uses bistable latching circuitry (flip-flops) to store each bit, retaining data as long as power is applied without needing periodic refresh cycles. In a real circuit, choosing SRAM over DRAM eliminates the need for a dedicated memory controller to handle row-refresh cycles, simplifying your PCB timing and firmware, but it drastically increases your silicon area, pin count, and cost per megabyte. The most common bench mistake is assuming the word 'static' means non-volatile like Flash; SRAM loses its contents the millisecond VCC drops, and the term merely refers to the absence of a dynamic refresh clock.

The 6T Flip-Flop and Silicon Real Estate

To understand why SRAM is fast but physically massive, you have to look at the cell level. A single bit of Static RAM is typically built using a 6-transistor (6T) CMOS cell. Four transistors form two cross-coupled inverters that latch a 1 or 0, while two additional access transistors connect the cell to the bit lines during read and write operations.

Silicon Footprint: A standard 6T SRAM cell requires roughly 140 to 150 square nanometers in modern nodes, whereas a 1T1C (one transistor, one capacitor) DRAM cell takes up about 30 to 40 square nanometers. This makes SRAM roughly 4x to 5x larger per bit than DRAM.

Because there is no capacitor to leak charge, the 6T cell holds its state indefinitely as long as VCC is present. This eliminates the let-through current spikes and refresh overhead associated with DRAM, but it restricts SRAM to niche, low-capacity applications where speed and deterministic timing outweigh the cost per megabyte.

The Math: Bus Timing and Access Time Calculations

When wiring external SRAM to a microcontroller, the datasheet's 'access time' (tAA) dictates your bus throughput. Let us run a real-world timing calculation using an STM32H7 running its Flexible Memory Controller (FMC) at 100 MHz (a 10 ns clock period) and interfacing with a legacy 45 ns SRAM, such as the Infineon CY62167G.

Worked Numeric Example: STM32 FMC Timing
1. Clock Period: 100 MHz = 10 ns per HCLK cycle.
2. SRAM Access Time (tAA): 45 ns (time from address valid to data valid).
3. DATAST Calculation: The FMC DATAST phase must cover the 45 ns access time. 45 ns / 10 ns = 4.5 cycles. Since the FMC register value is (cycles - 1), we program DATAST = 4 (yielding 5 actual cycles).
4. Total Read Cycle: ADDSET (1 cycle) + DATAST (5 cycles) + 1 internal cycle = 7 cycles total.
5. Effective Bus Time: 7 cycles × 10 ns = 70 ns per read.
6. Throughput on 16-bit Bus: 16 bits / 70 ns = 228 Mbits/s, or 28.5 MB/s.

If you swap that 45 ns chip for a 10 ns SRAM like the ISSI IS61WV102416, your DATAST drops to 0 (1 cycle), collapsing the read time to roughly 3 cycles (30 ns) and pushing throughput past 66 MB/s. This is why paying the premium for 10 ns SRAM is mandatory when buffering high-speed ADCs on modern 32-bit microcontrollers.

Where You Meet SRAM in Practice

You will rarely see discrete SRAM chips on consumer motherboards, but it is ubiquitous in embedded systems and high-performance computing architectures.

  • CPU Caches (L1/L2/L3): Processors use SRAM for on-die caches because the 6T cell's read speed (sub-nanosecond) can keep up with multi-GHz core clocks, which DRAM cannot.
  • FPGA Block RAM (BRAM): When you instantiate a memory block in Verilog or VHDL, the synthesizer maps it to dedicated SRAM hard-macros on the FPGA die for zero-latency local storage.
  • Battery-Backed IoT Logging: In smart meters and industrial PLCs, a small 1 Mbit SRAM paired with a 3V lithium coin cell and a supervisory chip preserves critical state variables during brownouts.
  • High-Speed Data Acquisition: Oscilloscopes and software-defined radios use SRAM as a circular buffer to catch transient microsecond events before a slower DMA controller moves the data to Flash or DRAM.

Memory Selection Decision Tree

Do not default to SRAM just because it is easier to wire. Use this decision matrix to select the correct memory topology for your 2026 PCB design.

System ConditionMemory TypeConcrete Part Pick (2026)Approx. Cost
Need >512 MB to run Linux or buffer video framesDRAM (DDR3/DDR4)Micron MT41K256M16 (4Gbit)$6.50
Need non-volatile logging that survives instant power lossFRAM or NOR FlashCypress CY15B108QN (8Mbit FRAM)$12.00
Need fast, deterministic random-access buffer <16 MB, simple routingSRAMISSI IS61WV102416 (16Mbit, 10ns)$4.50
The Default Pick: If your application requires a fast external scratchpad for an STM32H7 or similar Cortex-M7 MCU, and you do not need non-volatility, buy the ISSI IS61WV102416. It offers a 1M x 16 architecture, 10 ns access times, and operates down to 2.4V, making it the undisputed workhorse for modern embedded FMC buses.

Wiring and Decoupling External SRAM

When laying out an external SRAM on a 4-layer PCB, signal integrity is your primary adversary. A 16-bit data bus switching simultaneously at 100 MHz generates massive ground bounce if decoupling is inadequate.

  1. Decoupling: Place a 100 nF X7R ceramic capacitor within 2 mm of every single VCC pin on the SRAM package. Do not rely on a single bulk capacitor at the end of the power rail.
  2. Series Termination: If your trace lengths exceed 2 inches (50 mm), add 22 Ω to 33 Ω series termination resistors on the address and control lines (WE#, OE#, CE#) close to the microcontroller to dampen reflections.
  3. Ground Planes: Route the 16-bit data bus over a solid, unbroken ground plane on Layer 2. Never route high-speed memory traces across split planes or near board cutouts.

Frequently Asked Questions

Can I use SRAM without a battery backup?

Yes, but only as a volatile scratchpad. If VCC drops below the SRAM's minimum retention voltage (usually around 2.0V for 3.3V parts), the flip-flops will collapse and the data is irretrievably lost. If you need data to survive a power cycle, you must use FRAM, EEPROM, or Flash.

Why do some SRAM chips have a 'byte enable' (LB#/UB#) pin?

On 16-bit SRAMs, the Lower Byte and Upper Byte pins allow the microcontroller to write to just 8 bits of the 16-bit word without performing a read-modify-write cycle. This saves bus cycles and simplifies firmware when handling standard 8-bit char arrays in C/C++.

What is the difference between asynchronous and synchronous SRAM?

The discrete chips discussed here (like the IS61WV series) are asynchronous; they respond to address and control pin changes immediately without a clock signal. Synchronous SRAM (like ZBT or QDR SRAM) uses a clock edge to latch addresses and data, allowing for pipelined bursting at multi-hundred-megahertz speeds, but requires a much more complex memory controller typically found only in FPGAs or networking ASICs.