1) Purpose and model scope
This tool Monte‑Carlo simulates a cascaded RF chain of up to 40 modules. Each module is defined at 20°C
by Gaussian distributions for Gain, Noise Figure, OIP3, and P1dB, plus linear temperature drift of the
mean between Tmin and Tmax. The plotted curves show mean and mean ± X·σ versus module number.
2) Temperature law
For any parameter with 20°C mean μ20, Tmin drift ΔTmin, Tmax drift ΔTmax, and current temperature T:
- At 20°C: μ(T) = μ20
- For T ≤ 20°C: μ(T) = μ20 + ΔTmin·(T−20)/(Tmin−20)
- For T ≥ 20°C: μ(T) = μ20 + ΔTmax·(T−20)/(Tmax−20)
- σ is held constant with temperature.
3) Passive modules
Tick P? for passive devices. Per Monte‑Carlo draw the tool forces:
NF = −Gain, OIP3 = 200 dBm, P1dB = 200 dBm.
4) Filter stopband overrides (F1 / F2 / F3)
Each enabled filter row points to an existing module number M# and replaces that module’s Gain μ20 with the entered
Stopband Rejection (dB) when the main cascade is calculated. Example: entering −40 dB makes that module use μ20=−40 dB
in the filtered calculation. The module’s existing gain σ, ΔTmin, and ΔTmax are still applied around that replacement μ20.
- Disabled filter rows do nothing.
- Enabled rows affect all main plots, KPIs, CSV exports, and Monte‑Carlo results.
- If multiple enabled filters point to the same module, their stopband rejections are added in dB before the replacement is applied.
- The two PEP plots use the currently selected F1/F2/F3 checkbox states, so enabled filters remain enabled and disabled filters remain disabled.
5) Split / combine and channel count
# Ch M0 / M1 / M2 is the channel count on the high‑channel side of each splitter / combiner, and Sum is the number of equal groups.
The tool derives the channel count present at each module output, noted here as Nch,i.
- RX mode: before a splitter use the high‑side channel count; after it use high‑side / Sum.
- TX mode: before a combiner use high‑side / Sum; after it use the high‑side channel count.
- No filters in TX adds broadband summation of the auxiliary noise density across each enabled combiner: +10·log10(Sum).
6) Core cascade equations per Monte‑Carlo run
- Cumulative gain: Gcum,i(dB) = Σk≤i Gk
- Cumulative NF: Fcum,i = F1 + (F2−1)/G1 + … + (Fi−1)/(G1…Gi−1)
- Cumulative OIP3, output‑referred: 1/Oi = 1/Ostage,i + (1/Gi)·(1/Oi−1) in mW
- Cumulative P1dB, output compression: P1out,i = mink≤i(P1k + downstream gain from k+1 to i)
7) Main plotted quantities
- Gain: Gcum,i
- Noise Figure: NFcum,i
- OIP3: OIP3cum,i
- P1dB: P1dBcum,i
- SNR: SNRi = Psig,min,in − [N0,in + 10·log10(BWHz) + NFcum,i]
- Headroom: HRi = P1dBcum,i − [Psig,max,in + Gcum,i + 10·log10(Nch,i) + PAPR]
- IIP3: IIP3i = OIP3cum,i − Gcum,i
- IP1dB: IP1dBi = P1dBcum,i − Gcum,i
- Min Signal density: Psig,min,out,i(dBm/Hz) = Psig,min,in + Gcum,i − 10·log10(BWHz)
- Max Signal: Psig,max,out,i(dBm) = Psig,max,in + Gcum,i
- Thermal Noise density: Nth,out,i(dBm/Hz) = N0,in + Gcum,i + NFcum,i
- Interference / DAC noise density: Naux,out,i(dBm/Hz) = Naux,in + Gcum,i + TX broadband combine penalty
- SIR: SIRi = Psig,min,out,i(dBm/Hz) − Naux,out,i(dBm/Hz)
- Total Interference PEP (or Total DAC Noise PEP in TX): Naux,out,i(dBm/Hz) + 10·log10(BWHz) + 10·log10(Nch,i) + PAPR
- Total Power PEP: Psig,max,in + Gcum,i + 10·log10(Nch,i) + PAPR
- IMD floor: IMDfloor,i(dBm/Hz) = [3·Psig,max,out,i(dBm) − 2·OIP3cum,i(dBm) + N‑IMD factor] − 10·log10(BWHz)
- Signal − IMD floor: [Psig,max,out,i(dBm) − 10·log10(BWHz)] − IMDfloor,i(dBm/Hz)
- AGC histogram: distribution of the selected AGC module gain after gain trim is applied in each Monte‑Carlo run.
8) PEP plots
These two plots use the same currently selected filter states as the other plotted quantities. Enabled filters remain enabled,
disabled filters remain disabled. They also use the same channelization, PAPR, AGC setting, temperature, and Monte‑Carlo statistics.
- Total Interference PEP (or Total DAC Noise PEP in TX):
Naux,out,i(dBm/Hz) + 10·log10(BWHz) + 10·log10(Nch,i) + PAPR
- Total Power PEP:
Psig,max,in + Gcum,i + 10·log10(Nch,i) + PAPR
9) AGC
When AGC is enabled, the selected module is trimmed per Monte‑Carlo run so the final cascaded gain matches the target mean final gain
for that calculation path. The PEP plots use the same selected-filter path and the same AGC solution as the other plots.
10) Export / save behaviour
Save / Load JSON preserves the filter settings as well as all run settings and module rows. CSV / ZIP exports include the N‑IMD factor setting and the IMD floor metrics as well as the existing filter controls and PEP metrics.