NAPA
A mixed‑signal circuit simulator kept by one engineer since 1991 — write a netlist, press Alt+R, watch it transpile straight to C and run as a cycle‑based simulator.
A transpiler first, a simulator second.
NAPA is a transpiler: it turns a netlist — a plain‑text description of a circuit, written in its own small language — into optimized ANSI‑C source. That C is compiled and run as a fast, cycle‑based simulator built for that one circuit alone. Nothing generic sits in the loop.
It handles analog and digital parts of the same system together: delta‑sigma modulators, switched‑capacitor filters, logic, FFTs, user‑defined C functions — with automatic type inference between analog (double) and digital (64‑bit integer) signals.
NAPA incorporates a contribution from Jacques Mequin: SARC, a fast simulation engine he wrote (originally paired with its own graphical editor for linear circuits), grafted onto NAPA. SARC simulates passive or active filters and switched‑capacitor circuits in the time domain — transfer functions can be described directly in the Laplace domain and/or with elements matching SPICE primitives (V, I, L, R, C, E, …) — with its results fed straight into NAPA's cycle‑based simulation. Element values can, for instance, be changed while the simulation is running.
, runs on 64‑bit Windows, and makes no network calls of its own.
Ten lines, one filter.
White noise into an RC low‑pass, analyzed straight into a transfer‑function tool.
title "$F" header <napatool.hdr> fs 10.0e6 dvar R 1.0e6 dvar C 10.0e-12 node in noise 0.0 1.0 node out cell lpf "../lprc1.net" in R C ivar npts POWEROF2(20) tool tf "tf.out" in 1.0 out 1.0 npts terminate 1 <= TOOL_INDEX
Current release — v4.60
- Simulate_460.zip~1.0 GB
- Installing NAPAPDF
- Short Introduction to NAPAPDF
- NAPA ReferencePDF
The distribution ships as one encrypted archive. To get the password, email yves.leduc.be@gmail.com — it isn't published anywhere on the site.
All mimsy were the borogoves,
And the mome raths outgrabe. — Lewis Carroll, Jabberwocky
Invented words that still parse. A personal netlist language that still compiles. The domain kept the theme.