[Share and looking for feedback] CISPR16 EMI receiver emulation

Hi All,

I just developed a Cblock to emulate CISPR 16 based EMI receiver for the standard 150kHz~30MHz with 9kHz -6dB RBW IF.

It has following spec:

  • 120MSPS input signal real time re-sampling,
  • 65536 data bins,
  • 1831Hz spectral freq resolution
  • Flat-top window,
  • RBW-IF implemented in freq domain with weighted window,
  • average and peak detector.

The benefit compared to simple FFT:

  1. simpler to use.
  2. more accurate with RBW IF filter and AVG/peak detector implemented.
  3. faster simulation, even for long simulation time.

Note: the plotted spectrum is actually should be in dBuV, however I dont know if its possible to change the Y-axis name. So, will need to check with Mike on this.

Welcome to give it a try and I am looking for some feedback,
Get it from my github: QSPICE/EMI receiver at main · physicboy/QSPICE · GitHub

Arief,

1 Like

Now updated to add CISPR32A/B QP and average reference limit.

Now 2 input channels is used for the EMI receiver to simplify DM/CM or L/N noise measurement.

Below is the EMI receiver tested on AC input simple fixed duty flyback with channel 1 measuring DM and channel 2 measuring CM noise.

The RBW filter 9kHz@-6dB has been modified.

And tested to obtain the error which now shows the previous filter sideband slope was not steep enough.

Anyway. The updated RBW window constant improves it. Which we can see below.