Page 1 of 1

32 channel ADC

Posted: Thu Dec 21, 2017 10:26 pm
by grinux
Hello.
I'm learning XMOS one day.
So may be this is the duplicate question.
Is there supported configuration for 32channel adc conversion for usb application?
I spent some time to learn 8SoundsUSB project based on XS1-L16A-128-QF124. It uses two CS42448 6 channel codecs so i need 6 pcs but main.xc says that:
"#if I2S_WIRES_ADC > 7
#error I2S_WIRES_ADC value is too large!"
CS42448 uses 2 I2S wires so i need 12 to connects 6pcs.
So probably i cant use 6 pcs of CS42448 and i need more density ADC.
Could someone please help me with low cost adc P/N that fits my needs and supported by firmware?

Thanks!

Re: 32 channel ADC

Posted: Wed Dec 27, 2017 1:25 pm
by infiniteimprobability
By default the reference design can only handle 7 data wires in/out which gives 14 channels in/out for I2S. That's because each tile has 16 1b ports and you need at least two for LRCLK/BCLK (slave) and MCLK if you are master.

You can do 32ch but you'll need to use TDM mode. There are configs that support TDM (eg. 2i16o16xxxxx_tdm8_xcore_master) which would be a good starting point.

You are slightly in uncharted territory though as we do not test for 32ch. However the design supports 16in 16 out at 96k so I would expect it to work in theory..

Also, the highest sample rate you could use for 32ch is 48k because
48000 * 32 * 32 = 49Mbps. The limit is 64Mbps.

Re: 32 channel ADC

Posted: Fri Jul 06, 2018 9:57 am
by grinux
Hi. Sorry but i comletely lost your answer due to disabled email notofocations.
In my app i dont need any audio outputs. Only 16 inputs.
So is it safe to midify this #error ?
"#if I2S_WIRES_ADC > 7
#error I2S_WIRES_ADC value is too large!"
To allow me to compile app with I2S_WIRES_ADC = 8?
I replaced 6ch codecs with 8 stereo I2S ADC UDA1361TS but still need I2S_WIRES_ADC = 8.

Thanks for assistance!

P.S. I asked this question few minutes ago in separate topic which can be removed.

Re: 32 channel ADC

Posted: Fri Jul 06, 2018 5:09 pm
by infiniteimprobability
Yes, this should be safe, subject to the comment in the previous post.
Thanks for the note about the double post.