Weird Asynchronous Sample Rate Converter Behavior

Status
Not open for further replies.
I just build a DAC based on a CS8416, a CS8421, and a CS4398. I poured over the data sheets and set everything up thusly:

Receiver output: Left justified
Sample Rate Converter: 24.5760MHz crystal, 256Fs output for 96KHz resampling rate, input left justified (up to 32 bits in), output left justified 24bits out.
DAC: left justified (up to 24 bits in), double speed mode.

All chips are in hardware mode with appropriate setting resistors.

The DAC played music reasonably well, but on loud female vocals it sounded a bit broken up. And when I look at the output on the scope sine waves look like triangle waves with rounded tops and bottoms. I checked square wave response and 0dB response and everything looked good, except for the weird sine waves. I tried all sorts of DAC modes, and double checked all my clocks etc. I didn't grab data from the ASR chip and try to decode it myself.

While I was troubleshooting, I reduced the ASR output from 24bits out to 20 bits out, and everything is perfect now. The DAC chip data sheet says it accepts 24 bit data, the ASR chip says it's happy to send 24 bit data but something funky was happening that I can't explain.

The one thing I didn't try was to switch from left justified data ll the way through to I2S format.

Another piece of evidence is an FFT of the DAC output with a pure sine wave input shows better performance with the DAC jumpers set for single speed (no deemphasis mode). The second order harmonic just peeks up in double speed, but is gone in single speed mode. Do I have a hinky DAC chip, I'm stumped.

Does anybody have any ideas? I'm stumped, but the DAC sounds amazingly good in 20 bit mode.

Sheldon
 
Status
Not open for further replies.