ZHCAEJ4 September   2024 TAA5212 , TAA5412-Q1 , TAC5111 , TAC5111-Q1 , TAC5112 , TAC5211 , TAC5212 , TAC5212-Q1 , TAC5311-Q1 , TAC5312-Q1 , TAC5411-Q1 , TAC5412-Q1 , TAD5112 , TAD5112-Q1 , TAD5212 , TAD5212-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1引言
  5. 2无限脉冲响应滤波器
    1. 2.1 数字双二阶滤波器
  6. 3TAC5x1x 和 TAC5x1x-Q1 数字双二阶滤波器
    1. 3.1 使用 PurePath™ Console 的滤波器设计
      1. 3.1.1 使用 PurePath™ Console 对双二阶滤波器进行编程的示例
    2. 3.2 使用数字滤波器设计套件生成系数 N0、N1、N2、D1、D2
    3. 3.3 避免溢出条件
    4. 3.4 双二阶滤波器在录音通道中的分配
    5. 3.5 双二阶滤波器在回放通道中的分配
    6. 3.6 TAC5x1x 上的双二阶滤波器编程示例
  7. 4双二阶滤波器的典型音频应用
    1. 4.1 参数均衡器
    2. 4.2 交叉网络
    3. 4.3 语音增强
    4. 4.4 低音增强
    5. 4.5 使用陷波滤波器去除 50Hz–60Hz 噪声
  8. 5总结
  9. 6参考资料

使用数字滤波器设计套件生成系数 N0、N1、N2、D1、D2

默认情况(复位状态)下,双二阶滤波器配置为全通滤波器。在这种情况下,滤波器系数(如方程式 3 中所述)具有以下值:

  1. N0 = 231 (b0 = 1)
  2. N1、N2、D1、D2 = 0(b1、b2、a1、a2 = 0)

请按照以下步骤,使用 MATLAB® 等数字滤波器设计套件生成 IIR 双二阶系数:

  1. 使用滤波器设计函数(如 MATLAB butter 函数)计算系数 [b0、b1、b2、a0、a1、a2],以便设计系统运行频率为 48kHz、截止频率为 1kHz 的巴特沃斯滤波器。请注意,将 MATLAB 系数归一化后,a0 = 1。
    [b, a] = butter( 2, 1000 / (48000/2) ) 
  2. 将这些系数转换为 [N0、N1、N2、D1、D2],如下所示:
    • N0 = b0
    • N1 = b1/2
    • N2 = b2
    • D1 = -a1/2
    • D2 = -a2
  3. 通过乘以 231,将系数转换为 Q31。
  4. 四舍五入到最接近的整数,并转换为 32 位二进制补码十六进制格式:
    • 正整数转换为十六进制格式
    • 对于负整数,先取系数的绝对值,再转换为二进制,取反,加一,然后转换为十六进制。例如,要以 32 位二进制补码十六进制格式表示 -135:
      • -135 的绝对值用二进制表示为 0000 0000 0000 0000 0000 0000 1000 0111(用十六进制表示为 0x00000087)。
      • 二进制取反的结果用二进制表示为 1111 1111 1111 1111 1111 1111 0111 1000(用十六进制表示为 0xFFFFFF78)。
      • 向其添加 1 后的结果用二进制表示为 1111 1111 1111 1111 1111 1111 0111 1001(用十六进制表示为 0xFFFFFF79)。因此,-135 的 32 位二进制补码十六进制表示形式为 0xFFFFFF79。