Loom

Loom-ROM

Loom-ROM: Direct-to-Silicon Inference

A per-model derivative of Loom that commits frozen weights into an on-die ROM through the metal masks. When weights are static, the fastest possible memory is no memory at all. It is wiring. Loom-ROM shifts the cost of weight movement from runtime bandwidth to manufacturing-time metal.

Loom-ROM is a standard Loom base die customized with a two-metal-layer overlay that programs the die's built-in ROM grid with a specific model and optional fixed dataflow paths. Standard Loom host software runs unchanged and simply feature-detects Loom-ROM via a capability register.

The Concept

Direct-to-silicon inference

The Weight Bandwidth Problem

Every inference pass on a standard accelerator begins by fetching model weights from external memory. For a 7B parameter model at INT4, that is roughly 3.5 GB of data streamed through the memory bus on every forward pass. Memory bandwidth is the bottleneck. HBM exists to address this, but at enormous cost and power.

Loom-ROM eliminates the fetch. Every Loom base die includes a non-configured, ultra-dense base-transistor ROM grid, with its sense amplifiers, word-line selectors, and bit-line read paths already fabricated in the lower layers. Programming a model drops vias from the top two metal layers into that grid, hardcoding the bits without touching the power grid or clock trees. The MXU then reads weights from on-die ModelROM at silicon speed, and the external memory interface is freed for what actually changes at runtime: KV caches, activations, I/O buffers, and agent state.

Loom-ROM metal stack: a standard L-Base logic die sits at the bottom with four intermediate metal layers above it. The top two metal layers form the S-Overlay, highlighted and labeled as programmable top-2 metal, custom per model. An arrow labeled SWF path points from the overlay into a compute-fabric inset showing ModelROM (on-die weights) feeding the MXU. The MXU contains normal sub-arrays plus two optional regions (constant-weight and pruned), marked as LR-CW-only.

One Doorbell, One Inference

Loom-ROM places the entire model graph, pre-compiled, into on-die ROM. The host writes a single pointer to an argument descriptor and a single doorbell register. The ACP reads the descriptor, launches the ROM-resident command graph, and runs the full model end-to-end without host involvement. No kernel launch overhead. No driver round-trips. No scheduling jitter. Write one register, get one inference.

What Loom-ROM Adds

The programming model, command format, and numerical results do not change. What Loom-ROM adds is ModelROM, an on-die read-only store for weights, along with a manifest and, in some cases, preloaded command graphs, plus a built-in path that lets matrix multiply and matrix-vector operations read those stored weights directly, without changing how software schedules work.

Model-Scale Envelope

On-die ROM is dense relative to the bandwidth and power cost of DRAM, but not dense relative to logic. Loom-ROM targets compact, edge-native models whose parameter count fits within the base die's ROM-grid area budget: vision classifiers, acoustic and keyword models, RF basebands, sensor triage nets, control policies, cognitive radio pipelines, and localized expert routers. Large frontier models stay on programmable Loom with commodity DRAM. The two product lines are designed to coexist.

ROM Graph Execution

Fixed topology, parameterized runs

Some Loom-ROM SKUs include an optional ROM-resident command graph that the on-die ACP can launch with a single doorbell write. This delivers hardware-appliance integration with minimal host orchestration, but it comes with an important rule: the graph topology is fixed in silicon. The command sequence and model architecture do not change at runtime. Each run is parameterized via a small run descriptor containing pointers and scalars.

Frozen in Silicon Parameterizable per Run
Layer count, head count, hidden size Prompt pointer + length
Quantization / packing choices KV base pointer and strides
Expert layout / pruning choices Token position counters
The cmd64 operator sequence Output buffer addresses
Sampling algorithm choice (greedy vs top-k vs etc.) Sampling knobs (temperature, top-k, top-p), RNG seed

SKU Matrix

One base die, three specialization tiers

SKU External DRAM Weights Compute Fabric Use Case
LR-M2 External DRAM present ModelROM (metal-programmable) Standard MXU/SCE Drop-in speedup from eliminating weight bandwidth
LR-CW (custom) External DRAM optional ModelROM + wired into MXU sub-arrays Constant-weight MAC arrays Extreme perf/watt for a fixed model graph
LR-EDGE (custom) None ModelROM only CW-MAC + on-chip SRAM only Ultra-high-volume fixed embedded endpoints

LR-M2: Metal-2 ROM

The most straightforward variant. The standard Loom base die with model weights burned into metal-programmable ROM. External commodity DRAM remains present for KV caches, activations, and I/O buffers. The MXU's Structured Weight Feeder sources directly from ModelROM instead of DRAM, eliminating the weight bandwidth bottleneck while keeping the compute fabric fully general-purpose. Drop this into any existing Loom deployment for an immediate throughput boost on a frozen model.

LR-CW: Constant-Weight MAC

Goes further for extreme-volume, hyper-constrained deployments. The structured overlay permanently configures local multiplexers inside the MXU sub-arrays, locking weight paths directly into the array's execution buffers and eliminating register-file reads for those weights. The base transistors and gates are unchanged; only the metal-configured routing differs. Supported weight dtypes include binary, ternary, INT4, and INT8. External DRAM is optional, present for large KV caches, absent for pure fixed-function deployments.

Because LR-CW requires careful physical-design optimization of that routing against the target model, it is a custom engineering engagement reserved for ultra-high-volume, long-lifecycle endpoints rather than a self-service compiler output.

LR-EDGE: No-DRAM

The ultimate embedded endpoint. No external memory interface at all. Weights live in ModelROM, activations live in on-chip SRAM, and the entire inference path runs within the die boundary. Target: ultra-high-volume fixed models deployed at the sensor edge. Vision classifiers, keyword spotters, anomaly detectors, always-on wake processors.

Like LR-CW, LR-EDGE is a custom engagement: physical design, pruning, and compute-fabric customization are co-optimized against the specific target model.

How It Works

Metal-layer programming

The LR-M2 Base Die

LR-M2 starts from the standard Loom base die (L-Base). All transistors, local interconnect, and lower metal layers are identical to the programmable part, including the pre-fabricated structured ROM grid and its read circuitry, which sits unconfigured until a top-metal overlay is applied. Below the overlay this is a single mask set manufactured at volume, amortizing NRE across the programmable and LR-M2 family.

The Structured Overlay

Per-model customization is applied using only the top two metal layers and their associated vias. This is the S-Overlay. It programs the base-die ROM grid by dropping vias to set each cell, optionally configures local routing inside MXU sub-arrays into constant-weight paths, and optionally removes pruned routes from the die. Changing the model means changing two masks.

The Toolchain

The existing Loom compiler (loomc) is extended to emit a Structured Overlay Package (SOP) alongside the standard Loom compilation object files. The SOP contains the ModelROM image, optional prune maps, optional constant-weight mappings, and a mask routing map suitable for physical implementation. A bit-exact functional equivalence check verifies that the structured variant produces identical results to the general-purpose Loom compilation for a directed test suite and randomized vectors.

Direct-to-Silicon Pruning

If a model has been pruned (neurons, attention heads, or entire MoE experts) permanently removed, the structured overlay physically omits those routes from the die. Not gated off. Not masked to zero. Absent. The silicon area and power consumed by dead weights drops to zero. Architecturally, pruned weights behave exactly as if they were zero, maintaining bit-exact compatibility with the general-purpose Loom execution.

Asymmetric Memory

ROM weights, DRAM state

The Split

Loom-ROM enables a clean separation: base weights live in on-die ModelROM at silicon speed, consuming zero external bandwidth. External commodity DRAM, when present, is dedicated to runtime state: KV caches for long-context inference, agent scratch memory, DMA I/O buffers for RF samples or video frames, and streaming network data. The memory bus serves only what actually changes at inference time.

Zero-Software Exfiltration

The model is in silicon. Loom-ROM includes an optional ROM read-lock that enforces a hard architectural boundary: host reads from ModelROM return bus faults or poisoned data, and the data plane simply does not route ModelROM outputs back to the host PCIe interface. Only on-die engines (ACP, MXU, SCE) reach the weight data. The model manifest (hashes, dimensions, ABI version) stays host-readable for identity verification.

This will not stop a state actor with a decapsulation lab and an electron microscope; weights committed to metal are static and visible to physical analysis. What it does is make the weights impossible to extract via compromised host software, hypervisor escapes, or remote zero-days. The security boundary is architectural isolation against remote exfiltration, not physical anti-tamper.

Customer Workflow

How a model becomes silicon

1. Model Freeze

The customer provides an architecture and checkpoint intended to be stable for a multi-year deployment lifecycle. Telecom basebands, embedded vision pipelines, robotics controllers, fixed inference endpoints.

2. Quantization and Packing

Select supported weight dtypes: INT4, ternary, binary, FP8, or INT8. The quantization format is locked at overlay time. Loom-ROM supports the same packed weight formats as Loom.

3. Structured Overlay Package

The Loom compiler (loomc) emits a Structured Overlay Package containing the ModelROM image (weights plus manifest), optional ROM-resident command graph, optional prune map and constant-weight MAC mappings, and a mask routing map suitable for physical implementation. A bit-exact functional equivalence check verifies the structured variant produces identical results to the general-purpose Loom compilation.

4. Overlay Mask Spin

Only the top two metal layers are customized. The base die remains standard. This is a two-mask change, designed for turnaround measured in weeks.

5. Bring-Up

The host driver queries capabilities, validates the model UUID and weight hash against the manifest, and starts inference. Standard Loom software with feature detection. No new platform tax.

Target Deployments

Where frozen models justify specialized silicon

Embedded Vision

Cameras, drones, industrial inspection systems. The model is trained once, validated, and deployed for years. LR-EDGE runs a frozen vision classifier or object detector on-die with no external memory, no host CPU, and single-digit watt power budgets. The ACP handles the full sensor-to-action loop autonomously.

Telecom and SDR Pipelines

5G neural receivers, beamforming engines, spectrum sensing. The baseband processing model is standardized and stable across deployment cycles. LR-CW hardens the beamforming weights into constant-weight MAC arrays while the Sparse Compute Engine handles mixed-radix FFTs. External DRAM buffers live RF samples. The entire physical layer runs at silicon speed with software-defined flexibility for the control plane.

High-Volume Inference Endpoints

Fixed assistants, translation engines, routing models, content classifiers. Workloads where a single frozen model serves millions of requests per day and the economics justify per-model silicon. LR-M2 provides an immediate throughput multiplier by eliminating weight bandwidth from the critical path. At sufficient volume, LR-CW pushes performance per watt to levels that general-purpose accelerators cannot approach.

Defense and Secure Inference

Environments where model weights are classified or export-controlled. Loom-ROM's ROM read-lock ensures the model cannot be extracted by software on the host: the weights are not streamed from DRAM, not cached in host-visible SRAM, and not reachable through debug ports or the PCIe interface. Combined with the ACP's autonomous execution, the entire inference path can run without the host ever touching the model data. Physical anti-tamper against decapsulation remains a board- and enclosure-level responsibility.

Loom and Loom-ROM

Two lines, one base die

Loom is the programmable Autonomous Inference Engine. Loom-ROM is the direct-to-silicon line for customers turning a stable model into a hardware appliance. They share a base die; the overlay is what differs.

Loom (Programmable) Loom-ROM
Model flexibility Any model, any time Frozen model per metal spin
Weight bandwidth External DRAM limited On-die (silicon-speed)
Perf/Watt High Extreme (ModelROM eliminates external DRAM interface power)
NRE per model Zero (software only) Two-mask overlay cost
Model security Software-dependent Weights in metal, optionally read-locked
Best for Research, prototyping, dynamic workloads Production, high-volume, frozen models

Burn the model into the metal.

If your model is frozen, talk to us about Loom-ROM.