Other Parts Discussed in Post: TAS2564, TAS2562

作者:Joy Chen

摘要

对于消费类或者可穿戴产品,音频系统的集成度越来越高,这就导致后期debug问题的时候很难一步到位,需要我们对底层系统有明确的认识和了解。这篇文章主要基于TAS2562 / TAS2564来分析和解决一些复杂且无法直接定位的底噪noise。

1. 分析逻辑

无法直接定位的噪声根源及其类型,我们的思路是把噪声在系统中流经的途径都进行优化。

具体分为:信号“输入”-> “输出 ”-> “反馈过程处理” 三个环节进行优化。如Figure 1.所示:

Figure 1. 噪声途径示意图

Figure 2. Block Diagram

  • SPK:负载喇叭
  • AMP:是一种调节 INP/INM 纹波的运算放大器
  • 高频纹波可能来自输入到输出 OUTP 到 INP 和 OUTN 到 INM 的电流
  • 由于 OUTP/OUTN 开关@高频(384KHz PWM 频率),纹波可能发生在此高频状态
  • 较高的纹波会导致高噪声
  • 为了降低噪声,可以提高放大器带宽
  • 直流增益不会降低纹波,但带宽改进会降低高频成分

2. 优化硬件系统寄存器配置

如Figure 1.所示,每个环节我们都可以对其寄存器进行优化:

  1. “输入”--空闲模式阈值寄存器:关掉了该寄存器的功能;其作用是排除输入端潜在引入的关开噪声。
  2. “输出反馈”--反馈阈值寄存器:从-60dbFs 改成-30dbFS;其作用是排除输出信号到反馈过程中引入的开关噪声。
  3. “过程处理”--运放带宽寄存器:增大处理高频noise电路中的运放的带宽(噪声信号处理的范围);其作用进一步优化对高频段噪声的抑制能力。如Figure 3.

Figure 3. 高频噪声抑制运放的位置图示

3. 相关寄存器的软件配置指导

4. 修改 ICN/LSFB 阈值设置寄存器: 建议将所有设置改为默认的-80db,该值可根据后续实际调音需求再在默认值上调整

5. 添加关闭 ICN channel mute 功能寄存器设置

6. 添加提高抑制noise的运放的带宽的寄存器设置

对应Driver code的修改地方 (如下是基于QCOM 平台的例子):

A. code.c和regmap.c文件 (如下左边是修改前的,右边是修改后的)

B. code.c

C. regmap.c (如果regmap里的static pICN 会重写第一个寄存器设置,需要同步在这里再进行修改)

                                                               

Anonymous