lib_i2s TDM slave

If you have a simple question and just want an answer.
User avatar
akp
XCore Expert
Posts: 578
Joined: Thu Nov 26, 2015 11:47 pm

lib_i2s TDM slave

Post by akp »

Hello

Just wondering if there would be a big impediment to adding TDM slave functionality to lib_i2s? Just looking at the usage guide and code it seems to me that since i2s slave has been implemented there's probably nothing fundamentally stopping the implementation of TDM slave as well. From skimming the code it looks like the i2s slave simply looks for rising edge of lrclk and then ins/outs ch 0 (L) then ch 1 (R). So extending that for more channels ... e.g. fixed 8 channel shouldn't be that difficult.

Thoughts?


User avatar
xsamc
Active Member
Posts: 55
Joined: Fri Mar 04, 2011 3:38 pm

Post by xsamc »

Hi akp,

I don't believe that there would be :) It should be possible to extend the I2S slave functionality to provide a TDM slave component - I'd suggest starting from the same API and adding an additional parameter to specify the number of channel pairs (which should give you what you need to extend the implementation to support TDM).

Cheers,
Sam