Audio Tx DFE
概述
Audio Tx DFE(以下简称 Tx DFE)包括左右两个声道 Tx DFE0 和 Tx DFE1。
Tx DFE 主要处理包括高通滤波器(HPF)、半带插值滤波器(HBF)、CIC 插值滤波器、限幅器(limiter)、噪声门控(noise gating)、SDM(Sigma Delta Modulator,ΣΔ调制器)和 DEM(Dynamic Element Matching,动态元素匹配)等。
工作原理
Tx DFE 将低采样率多比特的数字信号通过插值滤波处理转换成高采样率的数字信号,再通过 SDM 将高速数字信号的比特数压缩,最后通过 DAC Converter 将数字音频信号转换为模拟音频信号。
Tx DFE 的输入数据来自于 ASRC 模块或 ANC 模块,经过高通滤波器、半带插值滤波器、CIC 插值滤波器、限幅器、NG 模块、SDM 和 DEM 等一系列数字信号处理后,输出到音频模拟处理单元,完成数模转换(DAC)和功率放大处理(PA)等,最终差分输出到喇叭。
Tx DFE 的输入采样率由 ASRC 模块决定,Tx DFE 的输出采样率为工作时钟的整数分频。工作时钟为 16 MHz 时,典型输出采样率为 4 MHz;工作时钟为 15.36 MHz 时,典型输出采样率为 3.84 MHz。
Tx DFE 的信号接口如下图所示。
Tx DFE 信号接口示意图
功能特性
Tx DFE 支持:
输入数据位宽为 24 比特。
典型输入采样率为 192、200、384、400、768 和 800 kHz。
典型输出采样率为 3.84 MHz 或 4 MHz。
输出信号数字增益控制。
小信号输出的硬件主动降噪处理。
动态范围增强(DRE)功能。
高通滤波器,默认为 bypass 模式。
数据回环,用于调试。
结构图
Tx DFE 的内部结构如下图所示。
Tx DFE 结构图
下表描述了 Tx DFE 所包含的模块。
模块 |
功能 |
|---|---|
HPF |
完成高通滤波处理,滤出直流分量。 |
HBF |
为多个半带插值滤波器级联,支持 2 倍或者 4 倍插值滤波。 |
CIC |
支持 1~32 整数倍插值和滤波 |
DRE |
控制数字和模拟增益模块,实现小信号的底噪优化。 |
Limiter |
对大信号进行限幅处理。 |
NG |
对小信号进行限幅处理。 |
SDM |
完成 sigma-delta 调制处理,实现数据流的低比特转换。 |
DEM |
对 SDM 输出数据的随机化处理。 |
Tx DFE 还支持 PDM(Pulse Density Modulation,脉冲密度调制)格式输出,将限幅器和 NG 输出数据进行 1 比特处理,并通过 GPIO 端口输出。
参考示例
examples/unity_test/acore/components/test_case/test_audio_adc_anc_dac.c
API 介绍
Enums
-
enum WQ_TX_DFE_DRE_MONITOR_STATE
Values:
-
enumerator WQ_TX_DFE_DRE_MONITOR_STATE_NO_WORK
-
enumerator WQ_TX_DFE_DRE_MONITOR_STATE_ADJUSTING_GAIN_DURING_DRE_ON
-
enumerator WQ_TX_DFE_DRE_MONITOR_STATE_ON
-
enumerator WQ_TX_DFE_DRE_MONITOR_STATE_ADJUSTING_GAIN_DURING_DRE_OFF
-
enumerator WQ_TX_DFE_DRE_MONITOR_STATE_OFF
-
enumerator WQ_TX_DFE_DRE_MONITOR_STATE_IGNORE
-
enumerator WQ_TX_DFE_DRE_MONITOR_STATE_NO_WORK
Functions
-
WQ_TX_DFE_DRE_MONITOR_STATE wq_tx_dfe_get_dre_monitor_state(WQ_TX_DFE_CHN chn)
get dre monitor state
- 参数:
chn -- txdfe channel
- 返回:
dre monitor state
-
struct wq_tx_dfe_gain_config
-
struct wq_tx_dfe_gain_dre_config
-
struct wq_tx_dfe_digtal_config