SPRUJC6A December 2024 – July 2025 AM2752-Q1 , AM2754-Q1
The only internal data format is of a 28-bit sample. Externally, the only format supported is a packed 24-bit samples into a 32-bit word, as described in this section.
Data is written to the ASCR and read from the ASRC using the VBUS interface. This interface has separate data register memory regions for Stream and Group input / output. Each region is used as based upon the mode (Group or Stream) that has been selected for each sample rate converter.
The ASRC data format is little endian, with up to 24-bit samples of data packed into 32-bit word.
ASRC supports 16-/18-/20-/24-bit audio data. ASRC understands audio data in the format dictated by ASRC Data Packing at the SRC Interface, which holds true for both input and output channels.
| Sample Width | [31:24] | [23:8] | [7:6] | [5:4] | [3:0] |
|---|---|---|---|---|---|
| 24-bit | 8’h00 | AudioData[23:0] | |||
| 20-bit | 8’h00 | AudioData[19:0] | 4’h0 | ||
| 18-bit | 8’h00 | AudioData[17:0] | 6’h00 | ||
| 16-bit | 8’h00 | AudioData[15:0] | 8’h00 |
ASRC also supports automatic HW audio data alignment. Audio data alignment is active by default, but can be disabled via ASRC_SYSCONFIG[1] DATA_FORMAT_DISABLE register bit.
If auto data alignment feature is disabled, then data format for the audio samples at the VBUS interface can be seen in ASRC Data Packing at the VBUS at the Interface When Auto Alignments is Disabled. For input audio samples packed into 32-bit VBUS packet, the most significant 8 bits [31:24] are always ignored by the ASRC internal engine. For output audio samples packed into 32-bit VBUS packet, the most significant 8 bits are always padded with 0’s.
| Sample Width | [31:24] | [23:8] | [7:6] | [5:4] | [3:0] |
|---|---|---|---|---|---|
| 24-bit | 8’h00 | AudioData[23:0] | |||
| 20-bit | 8’h00 | AudioData[19:0] | 4’h0 | ||
| 18-bit | 8’h00 | AudioData[17:0] | 6’h00 | ||
| 16-bit | 8’h00 | AudioData[15:0] | 8’h00 |
In case of automatic HW alignment is being used (this feature is selected by default), input audio samples packed into 32-bit VBUS packet must be LSB aligned. Input data format for the audio samples at the VBUS interface can be seen in ASRC Input Data Packing at the VBUS Interface When Auto Alignment is Enabled.
| Sample Width | [31:24] | [23:20] | [19:18] | [17:16] | [15:0] |
|---|---|---|---|---|---|
| 24-bit | xx | AudioData[23:0] | |||
| 20-bit | xx | AudioData[19:0] | |||
| 18-bit | xx | AudioData[17:0] | |||
| 16-bit | xx | AudioData[15:0] |
In case of automatic HW alignment is being used, output audio samples will be packed into 32-bit VBUS packet. Audio data will be LSB aligned, little endian and sign extended 2’s complement. Output data format for the audio samples at the VBUS interface can be seen in ASRC Output Data Packing at the VBUS Interface When Auto Alignment is Enabled.
| Sample Width | [31:24] | [23:20] | [19:18] | [17:16] | [15:0] |
|---|---|---|---|---|---|
| 24-bit | sign extend | AudioData[23:0] | |||
| 20-bit | sign extend | AudioData[19:0] | |||
| 18-bit | sign extend | AudioData[17:0] | |||
| 16-bit | sign extend | AudioData[15:0] |