XMOS and AKM DACs

Sub forums for various specialist XMOS applications. e.g. USB audio, motor control and robotics.
Post Reply
Dimdim
Junior Member
Posts: 7
Joined: Wed Jan 03, 2018 4:03 pm

XMOS and AKM DACs

Post by Dimdim »

Hello everyone,

I've successfully designed and built a USB to I2S interface board utilizing the XUF208 chip, running firmware ported from the MC reference design following the relevant application note.

I'm using it to supply I2S to a dual mono AK4490 of my own design (see: http://www.dimdim.gr/2017/11/arduino-co ... ac-part-1/ )

The AK4490s are running in serial mode, controlled by an arduino.

MCLK to the XMOS is supplied by the Si570 that is also clocking the AK4490s.

Everything seems to be working fine, including DSD, except for one small problem: In PCM mode, during sample rate changes, I'm getting a momentary pulse of DC from my analog outputs:

Image

Using other USB interfaces (for example an Amanero) I'm not getting this issue.

Any ideas?
Attachments
SR change glitch RIGOL Print Screen7-1-2019 19_50_07,858.png
(21.54 KiB) Not downloaded yet


User avatar
CousinItt
Respected Member
Posts: 360
Joined: Wed May 31, 2017 6:55 pm

Post by CousinItt »

Do you need to mute the AK4490 during a sample rate transition or reset the device first?
Dimdim
Junior Member
Posts: 7
Joined: Wed Jan 03, 2018 4:03 pm

Post by Dimdim »

When set to manual mode, you need to reset it via the relevant register, which I am doing btw. It doesn't help.

Problem is, the problem manifests itself even when the dac is in auto mode (so no reset is necessary), plus the glitch appears before the XMOS signals a SR change (I'm using combinations of GPIOs to signal different SRs, read by a uC) so I don't have time to mute the dac.
User avatar
CousinItt
Respected Member
Posts: 360
Joined: Wed May 31, 2017 6:55 pm

Post by CousinItt »

Try using the glitch as a trigger and looking at the digital inputs to the DAC, the clocks in particular.
RitchRock
XCore Addict
Posts: 186
Joined: Tue Jan 17, 2017 9:25 pm

Post by RitchRock »

If the glitch appears before the XMOS signals a sample rate change, what controls the change? Host computer, hardware via arduino, or...other?

I've used AKM DACs, ADCs and Codecs without problem, but mute and then change SR, as I feel that is good practice.
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Post by mon2 »

Review this thread to see if it helps:

https://sourceforge.net/p/gcbasic/discu ... /7fddc974/
Thorp
New User
Posts: 3
Joined: Sun Oct 22, 2017 4:47 pm

Post by Thorp »

Dimdim wrote: [...] In PCM mode, during sample rate changes, I'm getting a momentary pulse of DC from my analog outputs [...]
Does this issue appear for any PCM sample rate change, or it only appears when the clock domain changes from MCLK_441 to MCLK_48?
Can you please try to make a change from 44.1kHz to 88.2kHz directly - if you didn't that already - and see if the glitches are shown?
Thx
Dimdim
Junior Member
Posts: 7
Joined: Wed Jan 03, 2018 4:03 pm

Post by Dimdim »

RitchRock wrote:If the glitch appears before the XMOS signals a sample rate change, what controls the change? Host computer, hardware via arduino, or...other?

I've used AKM DACs, ADCs and Codecs without problem, but mute and then change SR, as I feel that is good practice.
I've yet to do some serious scoping of the I2S and xmos lines to confirm but based on the debug codes I'm seeing on my uC's serial port, the glitch occurs before the XMOS has signaled a SR change.

The SR change occurs when I change to an audio track of different SR on my host computer.
Dimdim
Junior Member
Posts: 7
Joined: Wed Jan 03, 2018 4:03 pm

Post by Dimdim »

mon2 wrote:Review this thread to see if it helps:

https://sourceforge.net/p/gcbasic/discu ... /7fddc974/
I too had seen that the Si570 makes I2C communication difficult for itself and others, but my board is a 4-layer design and I've confirmed that things are working as they should.

Besides the problem occurs even when I do not need to switch the Si570 to a different SR, like when going from 44.1K to 88.2K.

Anyway, I need to do some scopin' around and comer back with real data.
Post Reply