Part Number: AM2754-Q1
How does McASP interleaving work when it is configured with 1 serilalizer vs multiple serializers?
How is the audio data stored in the mcasp buffers?
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.
Part Number: AM2754-Q1
How does McASP interleaving work when it is configured with 1 serilalizer vs multiple serializers?
How is the audio data stored in the mcasp buffers?
-----------------------------------------------------------------------------------------------------------------------
Understanding McASP Interleaving
-----------------------------------------------------------------------------------------------------------------------
Case 1: Multiple-slot Single Serializer
To understand how the slot interleaving is done, lets take a TDM-4 as example configured with 1 serializer.

Frame Structure:
|-- Slot 0 --|-- Slot 1 --|-- Slot 2 --|-- Slot 3 --|
| Ch 0 | Ch 1 | Ch 2 | Ch 3 |
Buffer Layout:
In the beginning the first sample of every channel will be filled and then the 2nd sample of every channel will get filled and this pattern will continue. So, the filled buffer will look like this -
McASP Buffer: [ Ch0_S0, Ch1_S0, Ch2_S0, Ch3_S0, Ch0_S1, Ch1_S1, Ch2_S1, Ch3_S1, ...]
where ChX_SY represents Y th Sample of X th channel.
-----------------------------------------------------------------------------------------------------------------------
Case 2: Multiple-slot Multiple Serializers
When an extra serializer is added, then it will fill with the first data from all the serializers, then with the second data from all the serializers ..... upto k th serializer.
To understand this, lets take a TDM-4 example configured with 3 serializers.

Frame Structure per Serializer:
AXR0 Frame: |-- Slot 0 --|-- Slot 1 --|-- Slot 2 --|-- Slot 3 --|
| Ch 0 | Ch 3 | Ch 6 | Ch 9 |
AXR1 Frame: |-- Slot 0 --|-- Slot 1 --|-- Slot 2 --|-- Slot 3 --|
| Ch 1 | Ch 4 | Ch 7 | Ch 10 |
AXR2 Frame: |-- Slot 0 --|-- Slot 1 --|-- Slot 2 --|-- Slot 3 --|
| Ch 2 | Ch 5 | Ch 8 | Ch 11 |
Buffer Layout (Interleaved):
McASP Buffer Organization: [AXR0_Ch0_S0, AXR1_Ch1_S0, AXR2_Ch2_S0, AXR0_Ch3_S0, AXR1_Ch4_S0, AXR2_Ch5_S0,
AXR0_Ch6_S0, AXR1_Ch7_S0, AXR2_Ch8_S0, AXR0_Ch9_S0, AXR1_Ch10_S0, AXR2_Ch11_S0,
AXR0_Ch0_S1, AXR1_Ch1_S1, AXR2_Ch2_S1, AXR0_Ch3_S1, AXR1_Ch4_S1, AXR2_Ch5_S1, ...]