PCM_CFG
Bit Field |
Read/Write |
Field Name |
Description |
---|---|---|---|
25 |
RW |
TX_ACK_SEL |
Select which TX word acknowleges the TX request |
24 |
RW |
RX_ACK_SEL |
Select which RX word acknowleges the RX request |
23 |
RW |
TX_DMA_ENABLE |
Enable/disable the TX DMA request |
22 |
RW |
RX_DMA_ENABLE |
Enable/disable the RX DMA request |
21 |
RW |
TX_IOC_ENABLE |
Enable/disable the TX IOC request |
20 |
RW |
RX_IOC_ENABLE |
Enable/disable the RX IOC request |
19 |
RW |
RX_TX_INT_ENABLE |
Enable/disable the RX_TX interrupt |
17 |
RW |
OVERRUN_INT_EN |
Enable/disable the overrun interrupt |
16 |
RW |
UNDERRUN_INT_EN |
Enable/disable the underrun interrupt |
15 |
RW |
CLK_POLARITY |
Select the PCM clock polarity |
14 |
RW |
TX_DATA_ALIGN |
Select the TX data alignment |
13 |
RW |
RX_DATA_ALIGN |
Select the RX data alignment |
12:8 |
RW |
WORD_SIZE |
Select the number of bits per PCM word |
7 |
RW |
BIT_ORDER |
Select whether the data is transmitted starting with the MSB or LSB |
6 |
RW |
FRAME_ALIGN |
Align the PCM frame signal to the first/last bit |
5 |
RW |
FRAME_WIDTH |
Use a long/short PCM frame signal |
4:2 |
RW |
FRAME_LENGTH |
Select the number of words per PCM frame |
1 |
RW |
SUBFRAME |
Enable the frame duration for each word |
0 |
RW |
SLAVE |
Use the PCM interface as a master/slave |
Bit Field |
Field Name |
Value Symbol |
Value Description |
Hex Value |
---|---|---|---|---|
25 |
TX_ACK_SEL |
PCM_TX_ACK_DATA0 |
TX data0 acknowledges the TX request |
0x0* |
|
|
PCM_TX_ACK_DATA1 |
TX data1 acknowledges the TX request |
0x1 |
24 |
RX_ACK_SEL |
PCM_RX_ACK_DATA0 |
RX data0 acknowledges the RX request |
0x0* |
|
|
PCM_RX_ACK_DATA1 |
RX data1 acknowledges the RX request |
0x1 |
23 |
TX_DMA_ENABLE |
PCM_TX_DMA_DISABLE |
No TX DMA request is generated |
0x0* |
|
|
PCM_TX_DMA_ENABLE |
A TX DMA request is generated when new data is requested by the PCM interface |
0x1 |
22 |
RX_DMA_ENABLE |
PCM_RX_DMA_DISABLE |
No RX DMA request is generated |
0x0* |
|
|
PCM_RX_DMA_ENABLE |
An RX DMA request is generated when new data is received by the PCM interface |
0x1 |
21 |
TX_IOC_ENABLE |
PCM_TX_IOC_DISABLE |
No TX IOC request is generated |
0x0* |
|
|
PCM_TX_IOC_ENABLE |
A TX IOC request is generated when new data is requested by the PCM interface |
0x1 |
20 |
RX_IOC_ENABLE |
PCM_RX_IOC_DISABLE |
No RX IOC request is generated |
0x0* |
|
|
PCM_RX_IOC_ENABLE |
An RX IOC request is generated when new data is received by the PCM interface |
0x1 |
19 |
RX_TX_INT_ENABLE |
PCM_RX_TX_INT_DISABLE |
No RX_TX interrupt is raised |
0x0* |
|
|
PCM_RX_TX_INT_ENABLE |
An RX_TX interrupt is raised when new data is received or requested by the PCM interface |
0x1 |
17 |
OVERRUN_INT_EN |
PCM_OVERRUN_INT_DISABLE |
No ERROR interrupt is raised when an overrun is detected |
0x0* |
|
|
PCM_OVERRUN_INT_ENABLE |
An ERROR interrupt is raised when an overrun occurs on the PCM interface |
0x1 |
16 |
UNDERRUN_INT_EN |
PCM_UNDERRUN_INT_DISABLE |
No ERROR interrupt is raised when an underrun is detected |
0x0* |
|
|
PCM_UNDERRUN_INT_ENABLE |
An ERROR interrupt is raised when an underrun occurs on the PCM interface |
0x1 |
15 |
CLK_POLARITY |
PCM_SAMPLE_FALLING_EDGE |
PCM input data sampled on PCM_CLK falling edge |
0x0* |
|
|
PCM_SAMPLE_RISING_EDGE |
PCM input data sampled on PCM_CLK rising edge |
0x1 |
14 |
TX_DATA_ALIGN |
PCM_TX_DATA_ALIGN_MSB |
TX data is aligned on the MSB of the 32-bit TX buffer |
0x0* |
|
|
PCM_TX_DATA_ALIGN_LSB |
TX data is aligned on the LSB of the 32-bit TX buffer |
0x1 |
13 |
RX_DATA_ALIGN |
PCM_RX_DATA_ALIGN_MSB |
RX data is aligned on the MSB of the 32-bit RX buffer |
0x0* |
|
|
PCM_RX_DATA_ALIGN_LSB |
RX data is aligned on the LSB of the 32-bit RX buffer |
0x1 |
12:8 |
WORD_SIZE |
PCM_WORD_SIZE_8 |
Use 8-bit words |
0x0 |
|
|
PCM_WORD_SIZE_9 |
Use 9-bit words |
0x1 |
|
|
PCM_WORD_SIZE_10 |
Use 10-bit words |
0x2 |
|
|
PCM_WORD_SIZE_11 |
Use 11-bit words |
0x3 |
|
|
PCM_WORD_SIZE_12 |
Use 12-bit words |
0x4 |
|
|
PCM_WORD_SIZE_13 |
Use 13-bit words |
0x5 |
|
|
PCM_WORD_SIZE_14 |
Use 14-bit words |
0x6 |
|
|
PCM_WORD_SIZE_15 |
Use 15-bit words |
0x7 |
|
|
PCM_WORD_SIZE_16 |
Use 16-bit words |
0x8* |
|
|
PCM_WORD_SIZE_17 |
Use 17-bit words |
0x9 |
|
|
PCM_WORD_SIZE_18 |
Use 18-bit words |
0xA |
|
|
PCM_WORD_SIZE_19 |
Use 19-bit words |
0xB |
|
|
PCM_WORD_SIZE_20 |
Use 20-bit words |
0xC |
|
|
PCM_WORD_SIZE_21 |
Use 21-bit words |
0xD |
|
|
PCM_WORD_SIZE_22 |
Use 22-bit words |
0xE |
|
|
PCM_WORD_SIZE_23 |
Use 23-bit words |
0xF |
|
|
PCM_WORD_SIZE_24 |
Use 24-bit words |
0x10 |
|
|
PCM_WORD_SIZE_25 |
Use 25-bit words |
0x11 |
|
|
PCM_WORD_SIZE_26 |
Use 26-bit words |
0x12 |
|
|
PCM_WORD_SIZE_27 |
Use 27-bit words |
0x13 |
|
|
PCM_WORD_SIZE_28 |
Use 28-bit words |
0x14 |
|
|
PCM_WORD_SIZE_29 |
Use 29-bit words |
0x15 |
|
|
PCM_WORD_SIZE_30 |
Use 30-bit words |
0x16 |
|
|
PCM_WORD_SIZE_31 |
Use 31-bit words |
0x17 |
|
|
PCM_WORD_SIZE_32 |
Use 32-bit words |
0x18 |
7 |
BIT_ORDER |
PCM_BIT_ORDER_MSB_FIRST |
PCM data is ordered from MSB to LSB. |
0x0* |
|
|
PCM_BIT_ORDER_LSB_FIRST |
PCM data is ordered from LSB to MSB. |
0x1 |
6 |
FRAME_ALIGN |
PCM_FRAME_ALIGN_LAST |
Align the PCM frame signal to the last bit of the frame. |
0x0* |
|
|
PCM_FRAME_ALIGN_FIRST |
Align the PCM frame signal to the first bit of the frame. |
0x1 |
5 |
FRAME_WIDTH |
PCM_FRAME_WIDTH_SHORT |
The frame is high for one PCM clock period. |
0x0* |
|
|
PCM_FRAME_WIDTH_LONG |
The frame is high for half of the frame length. |
0x1 |
4:2 |
FRAME_LENGTH |
PCM_MULTIWORD_2 |
A frame contains 2 words. |
0x0* |
|
|
PCM_MULTIWORD_4 |
A frame contains 4 words. |
0x1 |
|
|
PCM_MULTIWORD_6 |
A frame contains 6 words. |
0x2 |
|
|
PCM_MULTIWORD_8 |
A frame contains 8 words. |
0x3 |
|
|
PCM_MULTIWORD_10 |
A frame contains 10 words. |
0x4 |
|
|
PCM_MULTIWORD_12 |
A frame contains 12 words. |
0x5 |
|
|
PCM_MULTIWORD_14 |
A frame contains 14 words. |
0x6 |
|
|
PCM_MULTIWORD_16 |
A frame contains 16 words. |
0x7 |
1 |
SUBFRAME |
PCM_SUBFRAME_DISABLE |
Generate a frame signal every frame. |
0x0* |
|
|
PCM_SUBFRAME_ENABLE |
Generate a frame signal every word. |
0x1 |
0 |
SLAVE |
PCM_SELECT_MASTER |
The PCM interface generates the PCM_FRAME. |
0x0 |
|
|
PCM_SELECT_SLAVE |
The PCM interface received an external PCM_FRAME. |
0x1* |