SINAD measurements, Implementation in Spectrum Lab, Tests
--------------------------------------------------------------
SINAD means SIgnal, Noise And Distortion. The SINAD parameter
provides a quantitative measurement of the quality of an audio
signal from a communication device. Definition:
SINAD := ratio of total signal power (SND)
to unwanted signal power (ND) .
where
SND = Signal+Noise+Distortion
ND = Noise+Distortion
The ratio is expressed as a logarithmic value in decibel :
10 * log10 ( SND / ND )
The higher the value, the better the audio quality.
For more info, search the web for
"SINAD and its measurement"
which should take you to a nice PDF document
with a table of the filter responses.
The bandwidth of the audio signal is often limited
by a filter. In Spectrum Lab, three different filters
can be selected as explained in the help system.
The principle of the sinad meter in SL is described
at the end of this document.
Three different "filters" can be selected in the sinad function
as implemented in Spectrum Lab. For details see help system.
- Filter "number zero" means no filtering at all,
which means no bandwidth limit and a flat response.
- Filter "number one" is the C-MESSAGE filter
used in North America.
- Filter "number two" is the CCITT filter
recommended by ITU-T, also called "P53 filter".
To check the proper function of the SINAD meter
as implemented in DL4YHF's Spectrum Lab,
a few theoretic SINAD values were calculated,
they are shown later in this document.
Notes on SINAD measurements, and what to avoid
===================================================
To get the most accurate results, use the lowest
possible notch width. If the notch is too wide,
a lot of noise power will not be taken into account.
ITU-T Recommendation 0.132 describes a notch filter
used with 1.02 kHz tones with a maximum notch width
of 400 Hz, and a minimum notch width of 25 Hz with
a depth of 50 dB.
If you make the notch too narrow, the test signal
may be outside the notch so it would erroneously be
considered as "distortion".
Be sure to watch also the spectrum when making SINAD
measurements. This helps to avoid false results when
the signal from a VHF SSB receiver 'wanders' outside
the notch range.
Checking the soundcard in full duplex mode
----------------------------------------------
If you produce the 1kHz audio test tone with the same
soundcard which also digitizes the received signal,
be sure there is no "bypass" in your soundcard !
If the output from the soundcard's DAC is internally
fed back to the input of the ADC, the SINAD values
always look nice. Disconnect the soundcard's line-
input, feed the (software-) test signal generator to
the output of the soundcard (on the "circuit" window)
and watch the amplitude of the unwanted input signal.
With the generator volume set to 0 dB (=full range
of the DAC just below the clipping point), the level
at the input, measured with the spectrum analyzer,
should be 70dB or less. On the author's PC with cheap
onboard audio device, the unwanted input signal was
at -81 dB which sounds reasonable.
If this unwanted feedback is much higher, open the
SNDVOL32 program which is part of windows and
convince your soundcard not to connect DAC
(often called "Wave Out") to the ADC ("Wave In").
Play with the mute controls below the volume sliders
until you hear the test tone in your speakers
and see ONLY the "line input" signal in the spectrum
analyzer.
Somey old soundcards were not able to run in full duplex
mode at all, which means either the ADC or the DAC
could be active but not both at the same time. But these
days should be over, even the good old "SoundBlaster 16"
ran in full duplex at 44100 samples per second.
Theoretic SINAD values for testing purposes
========================================================
(calculated with DL4YHF's "CalcEd")
To check the proper function of the SINAD meter,
some test signals were required. To simulate a
distored audio signal, the three generator channels
in SpecLab were used to produce THREE sine waves
on different frequencies at
1000 Hz ,
2000 Hz ,
and 3000 Hz .
To check the proper function of the "r.m.s. voltmeters",
the 'harmonic' frequencies were later changed to
1000.0 Hz ,
2000.1 Hz ,
and 3000.1 Hz .
This produces different crest factors in the
added waveform, which should not affect the SINAD
reading at all (test: OK).
Three sine waves to simulate harmonic distortion
---------------------------------------------------
Define powers of the signal and harmonics :
In SpecLab's Test Tone Generator:
(0dB = clipping point of DAC)
Tone 1 : 1000.0 Hz, -10 dB
Tone 2 : 2000.1 Hz, -13 dB
Tone 3 : 3000.1 Hz, -16 dB
@P0:=1Watt ; reference power, arbitrarily chosen
@P1:=P0 * 10^(-10/10) ; "signal" at 1000 Hz =: 0.1
@P2:=P0 * 10^(-13/10) ; "distortion" at 2000 Hz =: 0.0501187
@P3:=P0 * 10^(-16/10) ; "distortion" at 3000 Hz =: 0.0251189
Calculate filtered POWER levels .
Filter 'a' is the C-MESSAGE filter, response:
0.0 dB @ 1000Hz, -1.1dB @ 2000Hz, -3.0dB @ 3000Hz
Filter 'b' is the CCITT "p53" filter, response:
+1.0 dB @ 1000Hz, -3.0dB @ 2000Hz, -5.6dB @ 3000Hz
@P1a := P1 * 10^( 0.0 / 10)
@P2a := P2 * 10^(-1.1 / 10)
@P3a := P3 * 10^(-3.0 / 10)
@P1b := P1 * 10^( 1.0 / 10)
@P2b := P2 * 10^(-3.0 / 10)
@P3b := P3 * 10^(-5.6 / 10)
Theoretic SINAD values [in decibel] for
FLAT filter, C-MESSAGE and CCITT-filter .
With all THREE tones (1000 Hz, 2000 Hz, 3000 Hz) :
10*log((P1 +P2 +P3 )/(P2 +P3 )) =: 3.67192
10*log((P1a+P2a+P3a)/(P2a+P3a)) =: 4.6864
10*log((P1b+P2b+P3b)/(P2b+P3b)) =: 6.9281
(test: OK, accuracy about 0.01dB)
Only TWO tones at 1000 Hz and 2000 Hz :
10*log((P1 +P2 )/P2 ) =: 4.76435
10*log((P1a+P2a)/P2a) =: 5.52716
10*log((P1b+P2b)/P2b) =: 7.7901
(test: OK, accuracy about 0.01dB)
Only TWO tones at 1000 Hz and 3000 Hz :
10*log((P1 +P3 )/P3 ) =: 6.97323
10*log((P1a+P3a)/P3a) =: 9.51497
10*log((P1b+P3b)/P3b) =: 12.8323
(test: OK, accuracy about 0.01dB)
Implementation of the SINAD meter in Spectrum Lab
=====================================================
The classic SINAD meter which runs in the time domain:
Audio input (from receiver to SINAD meter)
|
\|/
|
Audio Filter
|
|-----> 1st RMS voltmeter ---> Sig+Noise+Distortion (SND)
|
\|/
|
Notch Filter
|
\|/
|
2nd RMS voltmeter ---------------> Noise+Distortion (ND)
In Spectrum Lab, the SINAD meter processes the result
from an FFT (fast fourier transform) which is also
used in the main spectrum analyzer. The FFT transforms
the signal from the time domain into the frequency domain,
where filtering and RMS (root mean square) measuring
is much easier. The SINAD algorithm used here is :
1. Multiply the FFT results (frequency bins) with the
CCITT or C-MESSAGE filter response, all in the frequency domain.
2. Add the powers from all FFT bins between 50 Hz and 5000 Hz.
The total power calculated this way is the SND value.
3. Add the powers from all FFT bins between 50 Hz and 5000 Hz,
EXCLUDING the notch range.
The power calculated this way from this will be the ND value.
4. Calculate 10 * log(SND/ND) to find the SINAD value.
The SINAD values are calculated with a numeric interpreter
function called -you guessed it- "sinad". The function takes
up to four input parameters, like:
sinad(#channel, center_freq, notch_width, filter_model)
The parameters are explained in the help system, look for
'SINAD calculation' in the file interpr.htm after installing
Spectrum Lab V2.3 build3 or any later version.
-...-
Author: Wolfgang Buescher, DL4YHF
Website: www.qsl.net/dl4yhf/spectra1.html
Revision: 2003-12-17 (YYYY-MM-DD)
Credits: Thanks to Jan Verduyn, G0BBL,
for suggestions and information
about SINAD measurements .
.-.-.