1) What this tool does
Models a cascaded RF chain (up to 40 modules). For each module you enter Gaussian distributions (mean μ and sigma σ) at 20°C for:
Gain (dB), Noise Figure (dB), OIP3 (dBm), P1dB (dBm).
You can also enter temperature drift deltas at Tmin and Tmax which shift the mean versus temperature (σ is constant).
P? (Passive): tick this if the module is passive (e.g. filter/attenuator). In passive mode the tool uses NF = −Gain (per Monte‑Carlo draw) and forces OIP3 = 200 dBm and P1dB = 200 dBm (inputs are greyed out).
2) Temperature drift model
- At 20°C: drift delta = 0 (μ is your μ20).
- For T ≤ 20°C: μ(T) = μ20 + ΔTmin · (T − 20)/(Tmin − 20)
- For T ≥ 20°C: μ(T) = μ20 + ΔTmax · (T − 20)/(Tmax − 20)
- σ does not change with temperature.
3) Cascade equations (per Monte‑Carlo run)
- Gain (dB) cumulative: sum of stage gains.
- NF (dB) cumulative: Friis using linear power gains and noise factors.
- OIP3 (dBm) cumulative (output‑referred): reciprocal sum in mW domain.
- P1dB (dBm) cumulative (output compression): bottleneck stage propagated to the output.
4) Signal / noise settings
- Min Signal (dBm): used for the SNR plot.
- Max Signal (dBm): used for the Headroom plot.
- Bandwidth (MHz) and Input Noise (dBm/Hz): convert to integrated input noise: Nin = N0 + 10·log10(BWHz).
- Signal PAPR (dB): reduces Headroom by PAPR (crest factor margin).
5) Derived plots
- SNR (dB) at module i: SNR = MinSignal − (Nin + NFcum).
- Headroom (dB) at module i: Headroom = P1dBout,cum − (MaxSignal + Gaincum + PAPR).
- IIP3 (dBm) at module i: IIP3 = OIP3out,cum − Gaincum.
- IP1dB (dBm) at module i: IP1dB = P1dBout,cum − Gaincum.
6) CSV export
Exports one row per module, including all inputs and cascaded results at 20°C and at the selected temperature.
Tip: Tick P? for passive devices (NF = −Gain per run; OIP3/P1dB forced to 200 dBm).