Alex, I placed undef statement as described. I rebuilt and reran the same set of playback tests. Device performed the same, still played wav files up to 384Khz successfully but still doesn't play DSD 64/128 tone files.
(Note: It does sound like there is some low level noise when playing dsd files. I can't hear the tone, but something low level is there. I rebuilt without undef and verified that the low level noise is the same)
DSD issue: Xcore 200 with USB Audio 2.0 Ref software
-
- Active Member
- Posts: 60
- Joined: Fri Mar 25, 2011 12:36 am
-
- Active Member
- Posts: 60
- Joined: Fri Mar 25, 2011 12:36 am
Here is some feedback from monitoring Logic analyzer, during DSD playback:
Jriver player Setup: Jriver playing a 1khz tone, DSD1x/ DSD2x .dsf files. (results identical for native DSD or DoP formatted output)
Logic analyzer output
Data Line: appeared random didn't see any DSD markers. Same for both DSD1x and DSD2x.
Bit clock: DSD1x -- 2.8224Mbps DSD2x -- 5.6448Mbps
LR clock: DSD1x -- 2.8224Mbps DSD2x -- 5.6448Mbps (aligned with Bit clock)
Not sure if this information provides helpful clues or not. Here are some of my unknowns.
a: Is Xmos software written and configured to INPUT both native DSD and DoP?
b: Is Xmos software written and configured to OUTPUT to DAC I2S in DoP format?
c: Is Dac configured correctly to handle Xmos DSD formatted Data?
Notes:
1: when playing standard wav files, 1Khz tones, at 44.1Khz - 384Khz. Everything looked as expected on oscilloscope and Logic analyzer.
2: As captured on the Logic Analyzer. The DSD bit clock and LR clock rates are the same as their respective DSD oversampled one bit stream rate.
3: I have also attached an oscilloscope image captured while playing DSD2x. It was a bit random. Mostly just seemed to be noise that was uncorrelated to 1Khz tone.
Jriver player Setup: Jriver playing a 1khz tone, DSD1x/ DSD2x .dsf files. (results identical for native DSD or DoP formatted output)
Logic analyzer output
Data Line: appeared random didn't see any DSD markers. Same for both DSD1x and DSD2x.
Bit clock: DSD1x -- 2.8224Mbps DSD2x -- 5.6448Mbps
LR clock: DSD1x -- 2.8224Mbps DSD2x -- 5.6448Mbps (aligned with Bit clock)
Not sure if this information provides helpful clues or not. Here are some of my unknowns.
a: Is Xmos software written and configured to INPUT both native DSD and DoP?
b: Is Xmos software written and configured to OUTPUT to DAC I2S in DoP format?
c: Is Dac configured correctly to handle Xmos DSD formatted Data?
Notes:
1: when playing standard wav files, 1Khz tones, at 44.1Khz - 384Khz. Everything looked as expected on oscilloscope and Logic analyzer.
2: As captured on the Logic Analyzer. The DSD bit clock and LR clock rates are the same as their respective DSD oversampled one bit stream rate.
3: I have also attached an oscilloscope image captured while playing DSD2x. It was a bit random. Mostly just seemed to be noise that was uncorrelated to 1Khz tone.
You do not have the required permissions to view the files attached to this post.
-
- XCore Addict
- Posts: 147
- Joined: Sun Feb 23, 2014 11:30 am
This is OK - DSD Markers are in PCM stream. XMOS, if it see the markers, turn I2S bus to DSD-signals, where no markers.shaw wrote:Here is some feedback from monitoring Logic analyzer, during DSD playback:
Jriver player Setup: Jriver playing a 1khz tone, DSD1x/ DSD2x .dsf files. (results identical for native DSD or DoP formatted output)
Logic analyzer output
Data Line: appeared random didn't see any DSD markers. Same for both DSD1x and DSD2x.
This is not clear.Bit clock: DSD1x -- 2.8224Mbps DSD2x -- 5.6448Mbps
LR clock: DSD1x -- 2.8224Mbps DSD2x -- 5.6448Mbps (aligned with Bit clock)
BCLK is OK, but LRCLK used in DSD mode as data.
In DSD mode, BCLK remains BCLK.
I2S_SData -> DSDLeft
I2S_LRCLK -> DSDRight
So the signal at LRCLK should be similar to the signal at the data line.
In reference design, DSD is only output, for native and DoP.Not sure if this information provides helpful clues or not. Here are some of my unknowns.
a: Is Xmos software written and configured to INPUT both native DSD and DoP?
b: Is Xmos software written and configured to OUTPUT to DAC I2S in DoP format?
c: Is Dac configured correctly to handle Xmos DSD formatted Data?
I think you need to get the right signal from XMOS, and only after this invwstigate your DAC.
To do this - you can use simple RC-circuit (Low Pass Filter) instead of DAC = put 3-5k from data lines and after resistor put 3-10nF cap to ground.
If DSD in XMOS works right, you can even listen a music :)
-
- Active Member
- Posts: 60
- Joined: Fri Mar 25, 2011 12:36 am
Alex thank-you for the clarification. It is helpful to know that when sending either DSD native or DoP input, that Xmos will output the DSD clk/data format onto the I2S bus. I will look at the one working DSD data channel with an LPF on oscilloscope.
Given that I am sending a DSD 1Khz stereo tone, both the left and right DSD data lines should be identical. The fact that there is no DSD right channel data on the I2S LRCLK, suggests that I have not configured firmware incorrectly or the xCORE 200 board is not operating properly.
(I am using the xCORE 200 MC audio 2v0 platform, with the latest USB Audio 2.0 Reference software. Including basic modifications described earlier, to allow upto 384Khz Fs).
Given that I am sending a DSD 1Khz stereo tone, both the left and right DSD data lines should be identical. The fact that there is no DSD right channel data on the I2S LRCLK, suggests that I have not configured firmware incorrectly or the xCORE 200 board is not operating properly.
(I am using the xCORE 200 MC audio 2v0 platform, with the latest USB Audio 2.0 Reference software. Including basic modifications described earlier, to allow upto 384Khz Fs).
-
- XCore Addict
- Posts: 147
- Joined: Sun Feb 23, 2014 11:30 am
As I remember, it was a but in USB Audio 2.0 Reference software exactly related to DSD with xCore200 - mix of HW and SW divider or something similar.
-
- Active Member
- Posts: 60
- Joined: Fri Mar 25, 2011 12:36 am
Xmos Technical Support advised a move back to USB Audio 2.0 Reference software, version 6.12.6. I have now moved to that version and have added the mods shown in first post on this thread. DSD 64/128 now works for both native and DoP.
I am not sure what differences in these two versions of reference software, account for the DSD performance issue. I will update this thread if I collect any useful information. Thank-you for the help.
I am not sure what differences in these two versions of reference software, account for the DSD performance issue. I will update this thread if I collect any useful information. Thank-you for the help.
-
Verified
- XCore Legend
- Posts: 1149
- Joined: Thu May 27, 2010 10:08 am
Re: DSD support in 6.15.2, you can also get it working by applying the file audio.xc from the XHRA migration file zip here:
http://www.xcore.com/download/file.php?id=1686
http://www.xcore.com/download/file.php?id=1686
Engineer at XMOS