This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PCMD3140: 4 channel sampling and I2S output format

Part Number: PCMD3140

Looking at the PCMD3140, it says it supports simultaneous sampling of up to four digital channels for the PDM microphone input, and can convert and output to I2S.  How would that work for I2S?  Doesn't I2S only have 2-channel capability?  How would 4 channels of PDM mic data be sent on 2-channel I2S?

  • Hi David,

    You're correct I2S is defined as 2 channels. However it's often used as an umbrella term to describe the 3-wire interface "FSYNC" "BCLK" and "DATA". For this part specifically, it extends the timing to add the other two channels, essentially appending them to the bus. You can check the details in 7.3.1.2.2 to see how it is formatted.

    Best regards,

    Jeff McPherson

  • Thanks for the initial feedback.

    So is this appending of the 3rd and 4th channel data to the left and right I2S channels respectively something standard that the receiving IC would be able to properly interpret as 4 separate 32-bit channels?

    We usually use TDM mode, but we may have to use standard I2S, so I am trying to become more familiar with it and understand how 4 channels work using I2S.

  • Hi David,

    I wouldn't call it standard, as most applications that use >2 channels default to TDM. Most of the time when you set something to "I2S mode" it really does mean 2 channels only. However the only difference between TDM and I2S is edge alignment, FSYNC polarity, and the MSB being shifted 1 bit. If your receiver is flexible enough you could configure it to understand the multichannel I2S coming from the PCMD3140 but at that point it's just a fancy version of TDM. 

    The PCMD3140 is quite flexible in terms of configuring the I2S bus, so it really comes down to what you want to use on the receiving side.

    Best regards,

    Jeff McPherson