Lab 16 — Leeson Model vs ISF Model (Three-Region Comparison)
Breadcrumb: Simulation labs › System & advanced › This page (Leeson vs ISF). Upstream: lab_06, lab_07; related: lab_09.
β: This English translation is in beta — the Traditional-Chinese original is the authoritative version.
The phase-noise model designers see most often actually comes in two lineages. One is Leeson (1966), an empirical formula: it fits a measured curve after the fact into three regions — , , and a flat floor — with parameters (quality factor , noise figure , flicker corner) mostly obtained by fitting. The other is the ISF model, the main thread of this site: from [P1] Hajimiri–Lee's LTV theory it derives from first principles the same three regions, and every parameter has a physical origin (, , ). This lab overlays the two curves on one plot so you can see clearly: they are two maps of the same mountain — Leeson describes "what it looks like", the ISF explains "why it looks that way".
External-literature note: the Leeson model is external literature, not among the five source PDFs; it is supplemented from the standard reference (D. B. Leeson, "A simple model of feedback oscillator noise spectrum," Proc. IEEE, 1966). This site treats it as a comparison baseline and historical context; the ISF model is the main thread. Step-by-step Leeson derivation and term-by-term comparison: see the appendix derivation_leeson.
Physical intuition (conclusion first): every free-running oscillator's phase noise looks the same from near to far — close to the carrier it is (flicker upconversion, steepest, dB/dec), the middle is (white noise, dB/dec), and the far end is a flat measurement/buffer floor. Leeson assembles the three regions with and a corner; the ISF tells you the region's height is , the region is set by , and the corner does not equal the device corner.
1. Learning objectives
- Recognize the three-region structure of the empirical Leeson model and its fitting parameters ( flicker corner).
- Write the ISF model ([P1] Eq.(21) + Eq.(23) + floor) as the same three regions and overlay the plots.
- Understand the correspondence and differences of the two models in the , , and floor regions.
- Understand how the ISF gives Leeson's parameters physical meaning (and honestly flag Leeson as external literature).
2. Mathematical model
Leeson model (external literature, not among the five PDFs; verbatim per spec section 10.2):
- First bracket : approaches at large offset (floor), and gives the -shaped region at small offset; the corner is set by (tank quality factor).
- Second bracket : inside the corner it multiplies in an extra , lifting into .
- is the noise figure, the signal power, the thermal noise — in Leeson these are mostly fitted/estimated values.
ISF model (derived from [P1] plus one white-noise floor): add the ([P1] Eq.(21)) and ([P1] Eq.(23)) regions on a linear scale, then add the floor:
- Physical correspondence: the ISF's region height (Leeson's maps to it), while the region strength is set by (the ISF DC coefficient, waveform asymmetry).
- Corners have different origins: the ISF's corner ([P1] Eq.(24)) is , which is not equal to the device's ; Leeson simply inserts the corner as a fitting parameter .
- Dimension check: both bracketed terms are dimensionless power ratios (before taking in dBc/Hz), so adding them is legitimate ✓; the term and the term carries one more ✓.
Numbers for this lab (pedagogical, deliberately tuned so the two curves overlap in the middle region): GHz, , , mW, flicker corner kHz; on the ISF side pC, , , A²/Hz, floor dBc/Hz.
3. Block diagram
4. Core Python code
Core of simulations/lab_16_leeson_vs_isf.py: each model computes dBc/Hz, overlaid on a semilogx plot.
import numpy as np
k = 1.380649e-23
T = 300.0
f = np.logspace(3, 8, 2000) # 1 kHz .. 100 MHz offset
dw = 2 * np.pi * f
f0 = 5e9
w0 = 2 * np.pi * f0
# --- Leeson (empirical; external literature) ---
F = 5.0; Ps = 1e-3; Q = 10.0; fc = 1e5 # flicker corner 100 kHz
leeson = (2 * F * k * T / Ps) * (1 + (w0 / (2 * Q * dw)) ** 2) * (1 + 2 * np.pi * fc / dw)
L_leeson = 10 * np.log10(leeson)
# --- ISF model ([P1] Eq.(21) 1/f^2 + Eq.(23) 1/f^3 + white floor) ---
qmax = 1e-12
in2_df = 1e-20
Grms = 0.5
c0 = 0.2
w1f = 2 * np.pi * fc
floor = 10 ** (-160 / 10)
isf = (Grms ** 2 / qmax ** 2) * in2_df / (4 * dw ** 2) \
+ (c0 ** 2 / qmax ** 2) * in2_df / (8 * dw ** 2) * (w1f / dw) \
+ floor
L_isf = 10 * np.log10(isf)
- How to read it: Leeson multiplies the three regions together (floor → factor → factor); the ISF adds the three regions in the linear power domain. Both bookkeeping styles produce a three-segment broken line on a log plot.
- Note on the constants: the ISF-side floor were deliberately picked so the two curves overlap in the middle region for the teaching overlay, not extracted from any specific circuit.
5. Full script path
simulations/lab_16_leeson_vs_isf.py (main() computes both models, overlays them on semilogx, and marks the corner).
Re-run: python scripts/run_all_sims.py.
6. Parameter table
| Parameter | Symbol | Value | Belongs to | Role |
|---|---|---|---|---|
| Carrier frequency | GHz | Shared | ||
| Offset range | kHz– MHz | Shared | Horizontal axis | |
| Quality factor | Leeson | Sets the corner | ||
| Noise figure | Leeson | Floor height | ||
| Signal power | mW | Leeson | ||
| Flicker corner | kHz | Shared | corner (dotted line in figure) | |
| Maximum charge swing | pC | ISF | ||
| ISF rms | ISF | height | ||
| ISF DC coefficient | ISF | strength | ||
| Current noise PSD | A²/Hz | ISF | Noise magnitude | |
| Noise floor | floor | dBc/Hz | ISF | Flat region |
7. Unit table
| Quantity | Symbol | Unit |
|---|---|---|
| Offset frequency | Hz, rad/s | |
| Phase noise | dBc/Hz | |
| Quality factor / noise figure | Dimensionless | |
| Power | W | |
| Charge | C | |
| ISF rms / DC coefficient | Dimensionless | |
| Current noise PSD | A²/Hz | |
| — | J |
8. Simulation figure

9. How to read the figure
- Three-segment broken line: both curves, from left (close to carrier) to right (far offset), show (steepest) → (middle) → flat floor. The gray dotted line is the corner ( kHz): to its left both curves are steeper ( dB/dec), to its right they turn to dB/dec.
- Overlap in the middle, divergence at the ends: this lab deliberately tunes the parameters so the two curves nearly coincide in the region (teaching overlay). Note the right end (large offset) where the curves separate: Leeson's factor has already flattened toward its constant floor, while the ISF model's floor is set lower at dBc/Hz, so the red curve keeps following a while longer at high offset before hitting the floor. This difference is not a bug — the two models book the floor differently — a reminder that "the curve shape is right; absolute values depend on each model's parameters".
- Key reading: Leeson's sets the mid-region corner, sets the floor; the ISF's sets the mid-region height, sets the strength. One curve, two languages: to lower the middle region, lower / raise (= raise , raise ); to lower close-in noise, suppress (= make the waveform symmetric).
10. Corresponding paper equations/figures
- ISF region: [P1] Eq.(21), p.185, .
- ISF region: [P1] Eq.(23), p.185, .
- corner (physical meaning, different from the device corner): [P1] Eq.(24), p.185.
- Full three-region picture: [P1] Fig. 11 / Fig. 12, p.185 (, , floor, and corner definitions).
- Leeson model: D. B. Leeson, Proc. IEEE, 1966, not among the five source PDFs, supplemented as external literature; step-by-step derivation and term-by-term comparison in derivation_leeson.
11. Limitations and approximations
- Leeson is an empirical model (external literature): , , and the corner are mostly after-the-fact fits, unlike the ISF which derives them from circuit quantities (); the Leeson parameters in this figure are illustrative.
- Parameters deliberately co-tuned: the ISF-side floor dBc/Hz were chosen to make the curves coincide in the middle region, not extracted from any specific oscillator; do not read the absolute dBc/Hz as real device specs.
- Different floor bookkeeping: Leeson's floor is built into the factor, while the ISF model uses an added constant floor; hence the divergence at high offset (see figure reading) — a model-structure difference, not a physical one.
- Single white source, linear region summation: the ISF model directly adds and in the linear power domain, ignoring multiple sources, cyclostationarity (see lab_14), and AM–PM.
- Factor-of-2: uses Eq.(21)'s , uses Eq.(23)'s ; the minor factor-of-2 SSB-bookkeeping dispute does not affect the three-region slopes or the comparison conclusions.
- is low: illustrative; real LC tanks often have several tens, moving Leeson's mid-region corner closer to the carrier.
Key takeaways
- Free-running oscillator phase noise has three regions: (close-in) → (white noise) → flat floor.
- Leeson (empirical, external literature) and the ISF (derived in [P1]) describe the same three regions; the ISF gives Leeson's parameters physical meaning.
- height (↔ Leeson's and ); strength .
- The ISF's corner ([P1] Eq.(24)) scales with and is not equal to the device corner.
Further reading
- White noise → : lab_06_white_noise_phase_noise, white_noise_to_phase_noise
- Flicker upconversion → and : lab_07_flicker_noise_upconversion, flicker_noise_upconversion
- Design trade-offs: lab_09_design_tradeoffs
- Applied to design/theory: step-by-step Leeson derivation and term-by-term " corner" mapping onto the ISF → derivation_leeson