DSPRelated.com
Forums

Understanding i2s codecs format

Started by jcarlosmor January 24, 2005


I will be using an i2s codec with my 21065L, however I have some
questions regarding the i2s protocol in the dsp.

First, the dsp does not have any way to differentiate between the
left and right channels received and/or transmitted, since an
interrupt is generated for every word received and/or transmitted (no
matter if left or right), and the application must demultiplex both
channels properly. That means that if for some reason we lose a
sample from either channel, maybe we will be reading next the left
and right channels swapped by error. The obvious solution is to know
the state of the L/R frame signal, but it is a reliable method at 96
KHz stereo sampling rate? It would be advisable to use another
protocol (dsp, right-justified, etc.) to certainly aquire the left
and right channels without errors of swapping them?.

Thank you very much for any help.



I think you are right if you are just using interrupts without DMA. If you
use the DMA it can start on the left channel and interrupt every two
samples (L+R).

Go to the adsp archive and you will find that this has been discussed in
the past. As I recall, early 21065L also had an I2S problem. Check the
errata if you are using old parts. Al Clark
Danville Signal Processing, Inc.
--------------------------------
Purveyors of Fine DSP Hardware and other Cool Stuff
Available at http://www.danvillesignal.com
At 10:17 PM 1/23/2005, jcarlosmor wrote:
>I will be using an i2s codec with my 21065L, however I have some
>questions regarding the i2s protocol in the dsp.
>
>First, the dsp does not have any way to differentiate between the
>left and right channels received and/or transmitted, since an
>interrupt is generated for every word received and/or transmitted (no
>matter if left or right), and the application must demultiplex both
>channels properly. That means that if for some reason we lose a
>sample from either channel, maybe we will be reading next the left
>and right channels swapped by error. The obvious solution is to know
>the state of the L/R frame signal, but it is a reliable method at 96
>KHz stereo sampling rate? It would be advisable to use another
>protocol (dsp, right-justified, etc.) to certainly aquire the left
>and right channels without errors of swapping them?.
>
>Thank you very much for any help.