The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl Design >> Mixed-Signal Design >> sigma deltas, coherent averaging, PSD https://designers-guide.org/forum/YaBB.pl?num=1119874052 Message started by svensl on Jun 27th, 2005, 5:07am |
Title: sigma deltas, coherent averaging, PSD Post by svensl on Jun 27th, 2005, 5:07am When a sigma delta modulator is used without dithering the quantizer properly, then it will produce limit cycles and idle tones. These limit cycles and idle tones will manifest themselves as spectral lines and high frequency oscillation observable in the frequency domain of the output. However, often they are buried in the noise floor and a ordinary PSD plot will not reveal them. I would like to know how it is possible to "bring out" the tones by reducing the random noise and revealing all the periodic components. When reading papers people often refer to coherent averaging but I don't know what it is. Does anyone know how to do such a thing in matlab or refer me to the corresponding literature? Thanks, Svensl |
Title: Re: sigma deltas, coherent averaging, PSD Post by Eugene on Jun 27th, 2005, 10:58am I have found sometimes that strobing the data helps, especially if you can tie the strobe rate to some multiple of the highest frequency clock, or the some multiple of the frequency of interest, if you know it. You must also make sure the sample rate for the PSD calculation coincides with the strobe rate in the analysis options. Linking the strobe and PSD sample rate saves PSD from having to interpolate between data points in the transient analysis. The strobe command forces the simulator to place time points at regular intervals, which is what the PSD analysis needs. Spectre will still adjust time steps to control error propagation but it will also guarantee uniformly spaced time points and also only record those time points. You might be surprised at how much the noise floor can drop when you eliminate interpolation through strobing. |
Title: Re: sigma deltas, coherent averaging, PSD Post by sheldon on Jul 6th, 2005, 4:32pm Svensl, If the goal is just to lower the noise floor why not just increase the length of the FFT. Tested this recently for an Oversampling ADC. 1) Baseline simulation was 4096 conversions with an input frequency of 7/4096. 2) Re-ran the simulation with a 4x longer simulation and the same input frequency. The noise floor of the second simulation was signficantly lower, normally we would expect the noise floor to be 10 log 4 better or about 6dB better. Since data from oversampling ADCs need to be windowed anyway, the only penalty is longer simulation time. This increasing the number of time points is complementary to the approach Eugene suggests. Strobing eliminates the interpolation error in the data. Increasing the number of FFT points, decreases the resolution bandwidth of the FFT. Since the noise in fixed, decreasing the bandwidth decreases the noise, noise(V/rt Hz) * bandwidth(rt Hz). Since noise is uncorrelated, noise decreases by 3dB/oct. So if you runnning the simulation with MATLAB, this is probably not an issue. If you are running SPICE, this may be more problematic. Best Regards, Sheldon |
Title: Re: sigma deltas, coherent averaging, PSD Post by svensl on Jul 6th, 2005, 10:43pm Thanks for the feedback. Increasing the number of samples taken does decrease the noise floor as there are more points to spread the noise to. I am just curious as coherent averaging is often mentioned in papers. For example in : "Why 1-Bit Sigma-Delta Conversion is Unsuitable for High-Quality Applications" by Stanley P. Lipshitz and John Vanderkooy it is mentioned on page 4, right column, that coherent averaging reduces the noise by 48dB when averaging four 2^14 windows. http://sjeng.org/ftp/SACD.pdf Is it that they just take 4 periodigrams and just average them, or have the 4 windows overlap? I tried both and did not get the promised results. Sven |
The Designer's Guide Community Forum » Powered by YaBB 2.2.2! YaBB © 2000-2008. All Rights Reserved. |