DSPRelated.com
Forums

RE: Demod Woes

Started by Paul Solomon October 28, 2005
Hi All,

This email is partly an update and thanks for past help, and partly a plea 
for further help.

Thanks for your replies from my previous thread on my demod issues, I have 
had someone send me some fir coeff's for the differentiators which I implemented 
with no noticable improvement in the intermod problem. I have also implemented 
the FM demod as a I*d(Q)/dt - Q*d(I)/dt method which Clay has mentioned several 
times and I still have the same issue with that (I used the diagram on pg 
551 of ricks understanding DSP as a guide and so I am using (1, 0, -1) for 
the differentiator, but I believe that the differentiator will have no noticeable 
effect from the tests I did with the FIR differentiators after the cordic 
ATAN in the last design), so I am now at a loss.

The current condition is that when I use a external FM modulator (test equipment) 
and a FM test receiver and a Audio test set, I can get a Total Harmonic Distortion(THD) 
through the system of about 0.2% Is I remove the FM test receiver and use 
my FPGA demod then I am getting THD figures of about 1.9% Looking at the 
spectrum, the harmonics are about 25dB down from the main signal and they 
are only odd harmonics, (but the first harmonic is not present). So I get 
the 3rd, 5th, 7th, and 9th harmonic typically, although the number of harmonics 
that I get varies with the modulation depth (All the normal tests are done 
with standard 75kHz deviation).

I have tried everything I can think of to work out the cause of these harmonics 
and this consists of the following.

1) Put the test signal through my FPGA using the ADC and DAC to purely pass 
the FM signal
     - This works fine and there are no harmonics.

2) Using a Cordic ATAN2 phase detector and a differentiator, I tried several 
FIR differentiators and none had any effect.
3) Decimation rate of 16, 32, and 64 has no effect
4) Increasing the CIC filter in the front end from 3rd order to 4th has no 
effect
5) adding 4 bits resolution to the NCO phase, accumulator and amplitude has 
no effect.
6) adding extra bits in the data path of the demod has no effect (currently 
using 20bit for I and Q)

The FIR filter that I use for the channel selection has about 70dB stop band 
rejection and it large (~300 tap) which I would have thought would be sufficient. 
I can try modifing that later.

But with all these changes, I have had no improvement or degridation in the 
harmonic performance, I have no ideas why I am getting these harmonics or 
how to get rid of them..

Any ideas would be greatly appreceiated.

Regards,

Paul Solomon


I don't have a specific answer but some general suggestions...

you know of course that the BW of an FM signal in considerably wider
compared to the deviation?  maybe as much as 270 kHz in your
case...there is nothing in the system that restricts the BW too much?

is the distortion worse with high modulating frequencies for a given
deviation?  indicates a BW issue.. plot out all the Bessel sidebands to
see this

does the distrotion suddently get worse when you exceed a certain
deviation regardless of modulating freq?  may indicate overflow issue


what does the demodulated tone look like on a scope?  is there any
clipping, crossover distortion?   any visable error?

odd order distortion indicates you have the same error for the + and -
portions of the demodulated waveform,.... can you see if it is sudden
clipping or a gradual compression?

Mark

I have used the I,Q,dI,dQ equation below in a high-performance FM
receiver. It worked really well.  See questions below.

Dirk

Paul Solomon wrote:
> Hi All, > > This email is partly an update and thanks for past help, and partly a plea > for further help. > > Thanks for your replies from my previous thread on my demod issues, I have > had someone send me some fir coeff's for the differentiators which I implemented > with no noticable improvement in the intermod problem.
What were you differentiating? Phase I assume, but derived /unwrapped how? The equation below avoids phase unwrapping problems. I have also implemented
> the FM demod as a I*d(Q)/dt - Q*d(I)/dt method which Clay has mentioned several > times and I still have the same issue with that (I used the diagram on pg > 551 of ricks understanding DSP as a guide and so I am using (1, 0, -1) for > the differentiator, but I believe that the differentiator will have no noticeable > effect from the tests I did with the FIR differentiators after the cordic > ATAN in the last design), so I am now at a loss. >
(-1,0,1) is a HORRIBLE differentiator UNLESS you are GROSSLY oversampled. Did you remember to correspondingly delay I and Q to plug into the equation everywhere except for the deriviative inputs?
> The current condition is that when I use a external FM modulator (test equipment) > and a FM test receiver and a Audio test set, I can get a Total Harmonic Distortion(THD) > through the system of about 0.2% Is I remove the FM test receiver and use > my FPGA demod then I am getting THD figures of about 1.9% Looking at the > spectrum, the harmonics are about 25dB down from the main signal and they > are only odd harmonics, (but the first harmonic is not present). So I get > the 3rd, 5th, 7th, and 9th harmonic typically, although the number of harmonics > that I get varies with the modulation depth (All the normal tests are done > with standard 75kHz deviation). > > I have tried everything I can think of to work out the cause of these harmonics > and this consists of the following. > > 1) Put the test signal through my FPGA using the ADC and DAC to purely pass > the FM signal > - This works fine and there are no harmonics. > > 2) Using a Cordic ATAN2 phase detector and a differentiator, I tried several > FIR differentiators and none had any effect.
Phase unwrapping problems will cause errors.
> 3) Decimation rate of 16, 32, and 64 has no effect > 4) Increasing the CIC filter in the front end from 3rd order to 4th has no > effect
What kind of decimators did you use after the CIC filter? CIC filters aren't real good for bandlimiting by themselves. Usually there is more decimation to be done (commonly multiple decimating half-band filters) before a final good FIR.
> 5) adding 4 bits resolution to the NCO phase, accumulator and amplitude has > no effect.
How big is your phase accumulator? What is a nominal increment? Which bits are extracted?
> 6) adding extra bits in the data path of the demod has no effect (currently > using 20bit for I and Q) > > The FIR filter that I use for the channel selection has about 70dB stop band > rejection and it large (~300 tap) which I would have thought would be sufficient. > I can try modifing that later. > > But with all these changes, I have had no improvement or degridation in the > harmonic performance, I have no ideas why I am getting these harmonics or > how to get rid of them.. > > Any ideas would be greatly appreceiated. > > Regards, > > Paul Solomon