Dear colleagues,
After the AD9874 startup I have constant DC offset in IQ data. This offset is constant until the next AD9874 startup. Each startup results in in different offset value. In most cases the offset is too big and results in unacceptable system behavior. But once per 20-40 attempts of AD9874 startup, the offset in IQ data is negligible and system works as I want.
LNA input signal (70MHz) is AM modulated carrier (1 kHz, 30 %), at a level equal to the sensitivity level of my system. This carrier has 4 kHz offset to the center of the receiver channel (to be distinguished from the DC offset). IQ sampling frequency is equal to 75 kHz.
First I present signals when DC offset is too big.
Amplitude spectrum of the IQ signal (FFT from 1024 IQ samples) is presented below. DC offset is at level comparable to the side lobes of AM modulation.
1024 samples of the raw I signal and low pass filtered I signal are presented below. It is visible, that a mean value of I signal is about 300 LSB.
1024 samples of IQ signals (I blue, Q red) are presented below.
Spectrum of AM demodulation ( sqrt(I^2 + Q^2) plus filters ) of the presented signal is shown below:
The 4 kHz component is too big and too audible.
Now I present the signals when the DC offset is negligible.
FFT form IQ signals – there is almost no 0 IF spur. Only AM modulated carrier is present in the spectrum.
Raw I signal and low pass filtered I signal – mean value close to 0 LSB:
Raw IQ signals:
Spectrum of the AM demodulation – it is visible, that 4 kHz spur is at least 20 dB lower in comparison to the situation with DC offset.
The questions are:
- how to get no offset in a predictable way?
- What is the origin of that offset?
What I have done until now during the problem investigation.
- All results are measured on our hardware (not AD9874 Evaluation Board). It is repeatable on three instances of PCB.
- I’ve ensured, that signal on LNA input is clear and has no 0 IF components.
- AD9874 is programmed by embedded system in the same predictable way. After each configuration data sending over SPI I read the registers of AD9874 – the values in registers are compliant with sent ones.
- I send the reset command at the beginning of the initialization. 3 ms delay is added between CLK synthesizer configuration and start of ADC tuning procedure. I’m waiting 6 ms until AD9874 tune is finished. Tuning is finished with value 0x00 in 0x1C register. RC and LC tuning registers are within 25%...75% of its allowed value. After each tuning Cap R = 99, CAPL1(coarse) = 3, CAPL2(fine) = 11+/-1;
- When I connect a signal (using transformer) directly to the delta-sigma converter input (at frequency 2.25MHz, pins IF2P IF2N), there is no problem with DC offset and the results are excellent. We didn’t try use hung mixer mode.
- I didn’t check how the offset changes with temperature.
- SYNCB line of AD9874 is in high state all the time
- I tried different sequencies of configuration command:
- Based on the AD9874 specification (no factory registers are used)
- Based on the AD9864 specification (factory registers are used)
- Based on the sequences provided with the AD9874 Evaluation Board (factory registers are used)
In each case there is no difference related to the DC offset.
By the way – where I can find recommended sequence of the ADC tuning?
Do you have any hints how eliminate the offset?
Best regards
Igor