Skip to main content

Module nonideal

Module nonideal 

Source
Expand description

The non-ideality model — sourced physics, seeded instances, and the instance evaluator.

Every constant here is SOURCED or DERIVED-with-shown-arithmetic (see benchmarks/silicon/analog/sourced-constants.md for the full dossier with URLs and exact quotes) or loudly MODELED (a design parameter of our fabric awaiting the characterization ladder: schematic SPICE → PVT → Monte-Carlo mismatch → extraction → silicon). An invented physical constant is none of these and ships never; analog_provenance_lock pins both the values and their source strings.

An InstanceSample is one manufactured die: per-leg gain errors (unit-element/programming accuracy plus the Pelgrom DISTANCE term over the placed operand separation) and per-tile output offsets and a frozen noise realization — drawn from fixed-seed SplitMix64 + Box–Muller, so every Monte-Carlo battery is deterministic forever.

Structs§

InstanceSample
One manufactured die: per-cell per-leg fractional gain errors, per-cell output offsets (volts), and a frozen per-cell noise realization (volts).
NonIdealityModel
The characterized non-ideality figures a physical target carries.

Enums§

Separation
Physical separation of a tile from its operand — the Pelgrom law’s input. Same-tier separation is a distance (the gradient applies); separately manufactured tiers are a CATEGORY, not a distance.

Constants§

KSIGMA
The k·σ envelope every budget term and frozen draw uses. At k = 6 a fixed-seed battery is deterministically green forever (p(>6σ) ≈ 2e-9 per draw, evaluated once at authoring time).

Functions§

eval_analog_instance
Evaluate one die: the volt-domain converter path over the QUANTIZED netlist with the instance’s gain errors, offsets, and frozen noise applied per tile.
eval_analog_instance_chopped
Evaluate one die CHOPPED: two frames — normal and polarity-swapped (each frozen offset enters negated) — with FRESH noise per frame (drawn from frame_seed), averaged by the digital side. The frozen offsets cancel EXACTLY; what survives is a deterministic intra-pair residual draw (the model’s chop_residual_v class) and √2-averaged noise.
leg_sigma
The per-leg 1σ gain-error class over a 2D placement — the shared law at SameTier.
sample_instance
Draw one die. Deterministic in seed.
separation_sigma
THE shared separation law every budget composes with: programming accuracy plus the distance gradient in-tier; programming accuracy plus the flat categorical ceiling across tiers. 2D leg_sigma and the 3D stacked budget are both thin wrappers over this.
sky130_nonideal
The SKY130-class model.