TSMC N7 FinFET · 3.5 GHz n78 · Browser-Based Interactive RF IC Tools
Three single-file HTML/Three.js implementations of an inductively-degenerated cascode LNA, each built on a Modified Nodal Analysis (MNA) engine but committing to a different design priority:
| ID | Short name | Headline priority |
|---|---|---|
| A1 | a3e80966 — Multi-RHS | Cleanest MNA engineering; multi-RHS noise solver |
| A2 | 2cdb351c — DE + Tapped-C | RFIC-complete; output matching network + DE optimizer |
| A3 | dbb6cd1a — Correlated-Noise v3.2 | Highest physical fidelity; van der Ziel correlated noise |
All three share the same die-view skeleton (24 × 18 µm die canvas, M1–M9 stack visualization, six bondpads, animated signal-flow particles, X-ray / rotate / reset controls, debounced rebuild on parameter change).
| Axis | A1 (Multi-RHS) | A2 (DE + Tapped-C) | A3 (Correlated-Noise) |
|---|---|---|---|
| MNA size | 6 nodes | 6 nodes | 5 nodes (pad split from gate) |
| Node labels | nin, ng1, ns1, nd1, nd2, nout | same | pad, gate, src, cas, out |
| Input pad model | C_pad = 200 fF lumped | C_pad = 200 fF lumped | C_bond = 30 fF + C_esd = 170 fF split ✓ |
| Output pad cap | ✗ | ✗ | C_out = 100 fF ✓ |
DC-block Cd | 10 pF ✓ | 10 pF ✓ | ✗ |
| Output matching | none (direct tap) | Tapped-C (C1 series + C2 shunt) ✓ | none |
RL load on output | ✓ | ✓ | ✓ |
| Axis | A1 | A2 | A3 |
|---|---|---|---|
| Total noise sources | 9 | 6 | 11 |
| Included sources | Rs, Rg+R_Lg, R_Ls, M1 ch, M2 ch, rds1, rds2, Rp_Ld, RL | Rs, Rg, R_Ls, M1 ch, M2 ch, R_Ld | Rs, Rg, M1 ch + iG + correlation, M2 ch, rds1, rds2, R_Ls, R_Ld, substrate |
| MOSFET channel γ | 0.67 (long-ch) | 0.67 | 1.2 (short-ch FinFET) ✓ |
| Induced gate noise (δ) | ✗ | ✗ | ✓ δ = 3.5 |
| Channel ↔ gate correlation | ✗ | ✗ | ✓ van der Ziel j·|c|·√(S_id·S_ig), |c| = 0.395 |
| Substrate noise | ✗ | ✗ | ✓ R_sub = 200 Ω, C_sub = 50 fF |
| Noise solve method | Multi-RHS — single Gauss-Jordan factorization solves signal + all 9 noise vectors ⚡ | Per-source solveY × 6 | Per-source csolve × 10+ |
| Axis | A1 | A2 | A3 |
|---|---|---|---|
| Optimizer | GD + A* (selectable) | DE / rand / 1 / bin only | GD + A* (selectable) |
| Parameter space | 5 (W, Id, Lg, Ls, Ld) | 5 DE + 2 slider (W, Id, Ld, C1, C2 + Lg, Ls) | 5 (W, Id, Lg, Ls, Ld) |
| DE population × gens | — | 35 × 90 | — |
| GD features | momentum (0.85), adaptive LR, stagnation kick | — | momentum, adaptive LR, stagnation kick |
| A* features | discrete grid expansion, closed set | — | same |
| Metric | A1 | A2 | A3 |
|---|---|---|---|
| Gain | ✓ | ✓ | ✓ |
| NF | ✓ | ✓ | ✓ |
| S₁₁ | ✓ | ✓ | ✓ |
| S₂₂ | ✗ | ✓ | ✗ |
| IIP3 | ✓ | ✓ | ✓ |
| Power | ✓ | ✓ | ✓ |
| g_m | ✓ | ✗ | ✗ |
| f_T | ✓ | ✓ | ✓ |
| Rollett K | ✗ | ✗ | ✓ |
| NF breakdown bars | ✗ | ✓ (Rs / Rg / M1 / M2 / Ld) | ✗ |
| Node voltage magnitudes | ✗ | ✗ | ✓ (gate / cas / out) |
| Spec | A1 (min / ideal / max) | A2 | A3 |
|---|---|---|---|
| Gain | 15 / 18 / 25 dB | 15 / 18 / 20 dB (tightest) | 15 / 18 / 25 dB |
| NF | 0.5 / 1.5 / 3.0 dB | 0.5 / 0.8 / 1.5 dB (most realistic n78) | 0.8 / 1.2 / 2.0 dB |
| S₁₁ | −25 / −15 / −10 dB | −25 / −15 / −10 dB | −25 / −15 / −10 dB |
| S₂₂ | — | −20 / −12 / −10 dB | — |
| IIP3 | −5 / 0 / 10 dBm | −5 / 2 / 5 dBm | −5 / 0 / 10 dBm |
| Power | 2 / 5 / 12 mW | 5 / 8 / 15 mW (industrial range) | 2 / 5 / 12 mW |
| Feature | A1 | A2 | A3 |
|---|---|---|---|
| Spiral inductors (Lg / Ls / Ld) | ✓ | ✓ | ✓ |
| Tapped-C 3D rendering (C1 / C2 stacks) | ✗ | ✓ (scales with C1/C2 value) | ✗ |
| Signal particle color = NF | ✓ | ✗ (speed only) | ✓ |
| MIM cap MIMO oxide layers | ✓ | ✓ | ✓ |
| Component labels with live values | ✓ | ✓ (+ C1, C2 labels) | ✓ |
The multi-RHS solver is the textbook-correct way to do MNA noise analysis: you factor the admittance matrix Y once, then back-substitute every noise excitation vector (I_n1, I_n2, ...) against the same triangulation. SPICE does this. For EL703r, A1 is the version that shows students how a real noise simulator is structured under the hood. It accepts the long-channel γ = 2/3 and skips induced-gate noise, so it under-predicts NF by roughly 1–1.5 dB on N7 — but the machinery is the most pedagogically honest.
Best for: teaching MNA mechanics; benchmarking solver efficiency.
A2 is the only version that closes the output matching loop with a tapped-C network (C1 series + C2 shunt to ground), reports S₂₂, and reflects the C-network in 3D geometry that scales visually with C1 / C2 values. Differential Evolution is the right optimizer choice for the resulting seven-dimensional space: GD and A* would stall on the C1 ↔ C2 ridge, while DE/rand/1/bin with F = 0.8, CR = 0.9 traverses it cleanly. The spec table (15–20 dB gain, 0.8–1.5 dB NF, 5–15 mW) is also the most honest n78 LNA target of the three. Trade-off: only 6 noise sources, no correlation.
Best for: teaching the full RF design flow (input + output matching, two-port S-params, evolutionary optimization).
A3 is the only version with:
S_ig = 4kT·δ·(ωCgs)² / (5·g_m)Vn_M1[4]*· Vn_IG[4]Trade-off: 10+ separate factorizations per fitness evaluation. The optimizer feels it.
Best for: teaching noise physics; research-grade NF modeling; preparing publication-quality LNA simulations.
Borrow the best of each:
| From | Take |
|---|---|
| A1 | Multi-RHS solver (one factorization, all noise vectors) |
| A3 | γ = 1.2, induced gate noise, j·|c|·√(S_id·S_ig) correlation, Cbond / Cesd split, substrate, Rollett K |
| A2 | Tapped-C output network, S₂₂ in HUD, DE optimizer for the 7-D space, NF breakdown bars |
The result is the version worth handing to an EL703r student as a reference implementation — and the natural starting point if any of these is going to support a paper on noise-aware LNA optimization or feed into the EM × λ-aware P&R flow (parasitic noise routing).
| Priority | Choose |
|---|---|
| Solver efficiency / pedagogy on MNA mechanics | A1 |
| Complete RFIC two-port design flow | A2 |
| Research-grade noise modeling | A3 |
| EL703r teaching artifact | A1 for solver, then A3 for noise |
| Conference-paper-grade simulation | A3 → merge with A1's solver |
Comparison prepared for Yao-Jen Chang · Intelligent Assistive Technology Lab · CYCU · EL703r Health-Care Technology Topics I