XMOS USB 10ch out

Technical questions regarding the XTC tools and programming with XMOS.
JensH
Member
Posts: 11
Joined: Mon Feb 19, 2018 6:16 pm

XMOS USB 10ch out

Post by JensH »

Hello,

I have the XMOS 32ch Board from DIYINHK. With the default firmware I can go 8ch In and 8ch Out. Unfortunately I need 10 Channels out. How is this possible. And is it possible with i2s or do I have to use TDM.

I have a little experience in language C. But I do not know where to start now...

Regards
Jens


User avatar
infiniteimprobability
XCore Legend
Posts: 1126
Joined: Thu May 27, 2010 10:08 am
Contact:

Post by infiniteimprobability »

But I do not know where to start now...
You could start with the documentation. I am not familiar with that board (perhaps the vendor of the board can help you?)

Take a look at I2S_CHANS_DAC and NUM_USB_CHAN_OUT in:

https://www.xmos.com/download/private/s ... ha1%29.pdf

The Xmos software could support either I2S or TDM, although 10ch means 2 TDM data lines if you use TDM8. You may be limited to 96kHz depending on the board MCLK.
JensH
Member
Posts: 11
Joined: Mon Feb 19, 2018 6:16 pm

Post by JensH »

Thank You!

A little more information about my requirements:

I have 6ch (5.1) i2s coming from an other board. The board has its own MCLK. Furthermore I have 2ch i2s coming from an ADC (Phono). So it equals 8ch i2s Input. These inputs should now be available on the computer via usb for signal processing (source selection and digital crossover is made on the PC). The digital crossovers produce 10ch, so I need 10ch i2s out to feed the DACs.

Basically I need 8CH i2s input and 10CH i2s Output.

Now I need to find out, if it's possible to use i2s in this channel configuration, because otherwise in TDM mode I need to use ASRCs with TDM support to multiplex the i2s input to TDM and demultiplex the output to i2s again (don't know how to accomplish Demultiplexing?).

Thank You very much :)
JensH
Member
Posts: 11
Joined: Mon Feb 19, 2018 6:16 pm

Post by JensH »

Okay,

I have now a new approach.
The first thing I've done, I ordered a JTAG3 USB Interface to flash a firmware.
With external resamplers all Input Channels are now resampled to 48Khz. I need the asychronous sample rate converters because of different clocks and later the FIR convolution in the PC is done in 48Khz anyway. So no need for high sample rates in the xmos. The resamplers are supporting TDM muxing, so the 8channel inputs are muxed into a TDM8 stream. So I need the xmos board to accept TDM as the input but It would be very nice if the output could be 10ch i2s (5x stereo). So TDM8 input, 10ch i2s output. Is this possible? Or is it 'either or* Because my DAC at the output only does support i2s. Otherwise I have to switch to a DAC, which has the support for TDM.

The chain is:
TDM8 > XMOS > to PC > 8 input channels are visible in asio > processing in PC = 10 channel crossover > 10 output channels usable via asio > XMOS > 10ch i2s

Regards
Jens
User avatar
infiniteimprobability
XCore Legend
Posts: 1126
Joined: Thu May 27, 2010 10:08 am
Contact:

Post by infiniteimprobability »

o TDM8 input, 10ch i2s output. Is this possible?
Yes, this should be fine. It will require 2 data lines but otherwise no problem.

You could of course do all of the signal processing on XMOS too if you really wanted! A few dozen biquads will fit easily in a couple of logical cores.
JensH
Member
Posts: 11
Joined: Mon Feb 19, 2018 6:16 pm

Post by JensH »

infiniteimprobability wrote:
o TDM8 input, 10ch i2s output. Is this possible?
Yes, this should be fine. It will require 2 data lines but otherwise no problem.

You could of course do all of the signal processing on XMOS too if you really wanted! A few dozen biquads will fit easily in a couple of logical cores.
Nice! But I think for my 10x 65536 FIR filter it might be a little too complex? Anyway what really would be nice: An Asynchronous sample rate converter made by Xmos, whereas the conversion is not that important, more the ability to use the xmos as a FiFo buffer to reclock, because my XMOS hardware board could only be driven in master mode (unless you make hardware modifications). So I have two Main clocks. One of the XMOS Board and one of the source.

Dou you think the performance of the Xmos 200mc is sufficient for doing 8ch sample rate conversion and buffering? If this is possible, I could save a little hardware for resampling.

Thank You for your help!

Regards
soundhound
Member++
Posts: 18
Joined: Thu Mar 08, 2018 4:07 pm

Post by soundhound »

JensH: by JTAG3 USB do you mean Xmos's XA-XTAG debug dongle?
unavailable from farnell till June!
thanks
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Post by mon2 »

1 pc of the xa-xtag is currently in stock in the UK. Probably more if you knock on XMOS' door :)

http://canada.newark.com/xmos/xa-xtag/d ... dp/31Y5269
JensH
Member
Posts: 11
Joined: Mon Feb 19, 2018 6:16 pm

Post by JensH »

I bought this. It was available, when I bought it.



Regards
JensH
Member
Posts: 11
Joined: Mon Feb 19, 2018 6:16 pm

Post by JensH »

Hello,

I do now own a JTAG3 Devic. It works. But I have a question regarding programming. My Board Vendor says, in order to work with XMOS USB Audio Software, I have to change a few lines, because of different port configuration. HOw can I do this?

I have a picture of the port configuration: http://www.diyinhk.com/shop/362-thickbo ... if-pcb.jpg

I decided to chose the config build 10i10o_slave, but I have the problem, that applications cannot create asio buffer...Kind regards
Jens
Post Reply