ZHCAF43 March 2025 TAS6584-Q1 , TAS6684-Q1
SDOUT 要求串行音频端口以 I2S 或 TDM 模式数据格式运行。不支持左对齐和 DSP 模式格式。音频输入串行时钟 (SCLK) 和音频帧时钟 (FSYNC) 被重复使用,SDOUT 上的输出数据具有与音频输入信号相同的采样频率和最大音频帧大小。输出格式采用音频的输入格式。数据输出配置主要由寄存器 0x25 和 0x31 控制。如果输出数据的位偏移量为 SDIN、请在寄存器 0x2C、0x2D、0x2E 和 0x2F 中配置可选的 10 位偏移量,以避免数据重叠。
表 2-1 展示了 SDOUT 的寄存器表及说明:
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-4 | SDOUT 选择 | R/W | 0x1 | 这些位控制 SDOUT1 线路或 SDOUT2 线路上的 SDOUT 输出位置。 这些位与 reg_tx_sel 和 reg_i2s_chsel 结合使用 非 TDM 模式 0001:适用于 SDOUT1 线路中的输出通道 1/2 和 SDOUT2 线路中的通道 3/4;(reg_tx_sel=4'b0011) 0010:适用于 SDOUT1 线路中的输出通道 3/4 和 SDOUT2 线路中的通道 1/2;(reg_tx_sel=4'b0011) TDM 模式 0000:SDOUT1 输出 Isense 和 Vpredict 以及 Aux |
| 3-2 | I2S 字长 | R/W | 0x2 |
I2S 字长 这些位控制输出音频接口样本字长,适用于 非 TDM 模式下的通道 1/2 输出和 TDM 模式下的 vpredict 输出通道 。 00:16 位 01:20 位 10:24 位 11:32 位 |
| 1-0 | I2S 字长 | R/W | 0x2 |
I2S 字长 这些位控制输出音频接口样本字长,适用于 非 TDM 模式下的通道 3/4 输出和 TDM 模式下的 isense 输出通道 。 00:16 位 01:20 位 10:24 位 11:32 位 |
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-6 | RESERVED | R/W | 0x0 | |
| 5-4 | reg_i2s_chsel | R/W | 0x0 |
为 SDOUT 输出选择通道组处于非 TDM 模式下的输出, 需要将 reg_i2s_shift5/6 和 reg_word_length5/6 设置为 相应通道的移位和长度。 00:vpredict ch1/2/3/4; 01:isense ch1/2/3/4; 10:辅助通道组 1 (aux 1/2/3/4); |
| 3-0 | reg_tx_sel | R/W | 0x0 |
启用或禁用输出数据通道 0000:禁用所有输出数据通道 xxx1:启用 Vpredict Ch1/2/3/4 输出 xx1x:启用 Isense Ch1/2/3/4 输出 x1xx:启用 Aux Ch1/2/3/4 输出 在非 TDM 模式下,如果用户需要输出 4 个通道,则需要设置 4'b0011 |
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-6 | reg_Vpredict _shift5_msb | R/W | 0x3 | Vpredict 移位偏移 MSB,与寄存器 0x2D(LSB) 配合使用 |
| 5-4 | reg_Isense_ shift6_msb | R/W | 0x0 | Isense 移位偏移 MSB,与寄存器 0x2E(LSB) 配合使用 |
| 3-2 | reg_Aux_ shift7_msb | R/W | 0x3 | AUX 移位偏移 MSB,与寄存器 0x2F(LSB) 配合使用 |
| 1-0 | RESERVED | R/W | 0x3 | 保留 |
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-0 | reg_Vpredict _shift5_lsb | R/W | 0xFF |
Vpredict 移位偏移 LSB,与寄存器 0x2C(MSB) 配合使用 这些位控制 输出的音频帧中音频数据的偏移。偏移定义为从音频帧的起始 (MSB) 到所需音频的起始的 BCK 数。 reg_ Vpredict_shift5 = {reg_Vpredict_shift5_msb, reg_Vpredict_shift5_lsb}; reg_ Vpredict_shift5 控制 Vpredict ch1/2/3/4 路径中的偏移。 0000000000:偏移 = 0 BCK(无偏移) 0000000001:偏移 = 1 BCK 0000000010:偏移 = 2 BCK ... 1111111111:偏移 = 1023 BCK |
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-0 | reg_Isense _shift6_lsb | R/W | 0xFF |
Isense 移位偏移 LSB,与寄存器 0x2C(MSB) 配合使用 这些位控制 输出的音频帧中音频数据的偏移。偏移定义为从音频帧的起始 (MSB) 到所需音频的起始的 BCK 数。 reg_Isense_shift6 = {reg_Isense_shift6_msb, reg_Isense_shift6_lsb}; REG_Isense_shift6 控制 Isense ch1/2/3/4 路径中的偏移。 0000000000:偏移 = 0 BCK(无偏移) 0000000001:偏移 = 1 BCK 0000000010:偏移 = 2 BCK ... 1111111111:偏移 = 1023 BCK |
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-0 | reg_Aux _shift7_lsb | R/W | 0xFF |
AUX 移位偏移 LSB,与寄存器 0x2C(MSB) 配合使用 这些位控制 输出的音频帧中音频数据的偏移。偏移定义为从音频帧的起始 (MSB) 到所需音频的起始的 BCK 数。 reg_ Aux_shift7 = {reg_ Aux_shift7_msb, reg_ Aux_shift7_lsb}; reg_ Aux_shift7 控制 Aux ch1/2/3/4 路径中的偏移。 0000000000:偏移 = 0 BCK(无偏移) 0000000001:偏移 = 1 BCK 0000000010:偏移 = 2 BCK ... 1111111111:偏移 = 1023 BCK |