Skip to Content
Language EN JA KO ZH

Embedded memory compilers: SRAM, register file and ROM

Silvaco memory compilers build SRAM, register file and ROM instances to fit your SoC, for design teams who’d rather configure on-chip memory than design around a catalog IP product.

Choose the memory type, then configure it

A catalog instance arrives with its area and leakage already decided, and you pay for those decisions at integration. A compiler works the other way round. You set the words, width, mux and power modes, and it builds the instance to match. That’s why one Silvaco memory compiler covers designs as far apart as an AI accelerator and a wearable.

  • Single and dual port SRAM

    General-purpose read-write memory in low-power, general-purpose and high-performance variants. At 55 nm and below, nap and retention modes cut leakage while the core holds its data. Run periphery and core from one supply or two, and add a write mask if you need it.

    Catalog: 12 compilers · 7 single-port, 5 dual-port · TSMC, GlobalFoundries, UMC · 22–130 nm

    SRAM Compiler
  • 1 and 2 port register file

    Small, fast arrays that sit right next to the logic, on a Silvaco-proprietary architecture built for density and low power. Standby, retention and shutdown modes trade wake-up time against leakage, and byte-mode writes change part of a word without touching the rest.

    Catalog: 5 compilers · 3 one-port, 2 two-port · TSMC, GlobalFoundries · 22–110 nm

    Register File Compiler
  • ROM

    Code and fixed data, programmed on a single via layer to keep the array dense and the die cost low. The array itself doesn’t leak. Column mux runs from 8 to 128.

    Catalog: 2 compilers · TSMC ULP eFlash · 40 and 55 nm

    ROM Compiler

Memory compiler selector

Find the compilers for your foundry and node, with the size range and mux options each one generates.

Silvaco memory compilers by part number, with foundry, node, process, memory type, retention, size, mux and supply voltages, as published in the PRO IP catalog
Part number Foundry Node (nm) Process Memory type Retention Size (bits) Mux V (periph) V (array)
61250GF22FDX1 Port Register FileNo128–40k80.8–
61251GF22FDX+Single-Port SRAMNo256–1,024k4, 8, 160.8–
61252TSMC40uLPDual-Port SRAMYes64–288k40.91.1
61253TSMC40ULP eFlashDual-Port SRAMYes64–288k40.91.1
61254TSMC40LPSingle-Port SRAMNo256–576k41.1–
61255TSMC40ULP eFlashVia ROMN/A1k–1,152k8 to 1281.1–
61256TSMC55ULP eFlash1 Port Register FileYes64–32k2, 41.2–
61257TSMC55HV2 Port Register FileNo1k–640k41.2–
61258TSMC55ULP eFlash2 Port Register FileNo128–64k41.2–
61259TSMC55LP eFlashDual-Port SRAMNo256–32k81.2–
61260TSMC55ULP eFlashDual-Port SRAMNo128–64k41.2–
61261TSMC55HVSingle-Port SRAMNo512–320k8, 161.2–
61262TSMC55ULP eFlashVia ROMN/A512–512k8 to 1281.2–
61263GF55LPxSingle-Port SRAMYes320k4, 8, 161.2–
61264TSMC90LP eFlashDual-Port SRAMYes256–80k81.2–
61265TSMC110HV1 Port Register FileNo128–20k4, 81.5–
61266UMC110eFlashSingle-Port SRAMYes256–320k4, 8, 161.5–
61267TSMC130BCDSingle-Port SRAMNo128–64k4, 8, 161.5–
61268TSMC130BCD PlusSingle-Port SRAMNo128–64k4, 8, 161.5–

GF = GlobalFoundries. Size runs from the smallest to the largest instance a compiler generates, in bits. Mux is column multiplexing. Retention marks a data-retention mode, and a dash means there’s no separate array supply.

Applications

Where compiled memory goes, on mature nodes and advanced ones alike.

  • Edge computing and IoT low-power designsLow-leakage sleep modes for battery-powered parts, alongside Low Power Foundation IP
  • Industrial automation, process control and roboticsMemory on the high-voltage, BCD and eFlash processes industrial parts are built on
  • Display drivers and DDICsSRAM and register files inside the driver IC
  • Security and cryptographic processorsSRAM for working data, ROM for fixed code
  • Audio and voice processing ASICsLow-leakage buffers for always-listening designs

Qualify it from published data

Part numbers, foundries and nodes are all on the record, so your IP qualification can start before the first call.

  • 19 compilerseach with a part number in the PRO IP catalog, 61250 to 61268
  • TSMC · GlobalFoundries · UMCthe foundries in the current catalog
  • 22–130 nmfrom GlobalFoundries 22FDX to TSMC 130 nm BCD
  • 25+ yearsbuilding compiled memory, with silicon in thousands of designs
  • Liberty · LEF · GDSIIdelivered with every characterized, DRC/LVS-clean instance

What can the compiler build on your process?

Send an IP specialist your foundry, node and memory type. You’ll get a technical briefing on configuring the compiler for your application, plus licensing and availability for that process. If the standard options don’t reach your targets, the compiler team can tune an instance to your PPA numbers.

Memory compiler questions

A memory compiler is software that generates on-chip memory instances to a specification: number of words, word width, column mux and power options. You get a layout and a full set of models for exactly that instance. Silvaco’s compilers build single- and dual-port SRAM, 1- and 2-port register files and via-programmed ROM.

SRAM is general-purpose read-write memory with one or two ports. A register file is a smaller array, also with one or two ports, used for fast local storage. ROM holds code or data that never changes, programmed on one via layer. Designing standalone DRAM or NAND instead? See Logic and Memory.

The current catalog lists 19 compilers: TSMC at 40, 55, 90, 110 and 130 nm, including eFlash, high-voltage and BCD processes; GlobalFoundries 22FDX, 22FDX+ and 55LPx; and UMC 110 nm eFlash. If your process isn’t on that list, the compiler team can port to other nodes.

Each instance is foundry-qualified and comes with Liberty timing and power models, LEF abstracts and GDSII layout, all characterized and DRC/LVS-clean. Those are the views your flow reads to place, route and sign off the memory, generated for the exact configuration you chose.

Built-in self-test (BIST) lets a chip test its own memory after manufacture, and repair swaps failing locations for spare ones. Both are optional on the SRAM and register file compilers. ECC bits, plus flexible word size and addressing, give you room to build in redundancy.

You license the compiler rather than a single instance, and each catalog part number covers one foundry process. So you can generate whatever configurations each design needs, from one instance to dozens. Ask an IP specialist about terms for your node.