This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TLV320AIC3204:如何在抽取滤波器中禁用特定的 Biquad 滤波器。

Guru**** 2541980 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1056625/tlv320aic3204-how-to-disable-specific-biquad-filter-in-decimation-filters

器件型号:TLV320AIC3204

您好!

我想知道如何禁用 Biquad 滤波器。 具体而言、我使用 ADC 抽取滤波器 B 通过麦克风对音频进行采样、因为有3个 Biquad 滤波器。 我想禁用 Biquad 滤波器 C。或者、是否有任何方法可以禁用它、如果是、则我想禁用它。

谢谢、

千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kishan,

    我将研究这一点、并在下周公布美国假期。

    此致、

    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    我正在等待您的回复、祝您愉快。

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您的耐心等待。

    此致、

    Carson

    LPA 应用工程师

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    如果无法禁用 Biquad 滤波器 C、您能告诉我们 Biquad 滤波器 C 的默认 N0、N1、N2、D1、D2系数值是多少?

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kishan,

    感谢您在我研究这一问题时的耐心、

    此致、

    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kishan,

    我假设您正在使用以下配置。

    为了在功能上禁用双二阶 C (HC)、您可以设置 N0 = 2^23 (即写入0xff 包含此系数的三个寄存器)、然后将 N1、N2、D1、D2全部设置为0x00。  

    这将使该滤波器的传递函数= 1、这将有效地将其绕过。

    但愿这对您有所帮助。

    此致、

    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    感谢您的努力。 我将修改禁用滤波器的值并测试音频。 我将与您分享结果。

    谢谢、

    千山  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请告诉我们您的测试结果。

    此致、

    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    我在 N0系数的三个寄存器中写入0xff、但我得到的音频是空白的、这意味着音频是静音的。 我写入的值为:

    N0 0xFFFFFF00

    N1 0x00000000

    N2   0x00000000

    D1   0x00000000

    D2   0x00000000

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kishan,

    我将尝试在 EVM 上执行此操作、并报告我的发现/程序。  

    我将在3天后回复。

    此致、
    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    我只想通知您、我使用的采样率是16000位/秒

    ADC_FS = 16000Hz。

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Arthur、您好!

    我有两个问题。

    你为 N0 = 0xFFFFFFL 共享的值与我的计算结果不匹配。 由于2^23等于十进制的8388608、如果我们以 N0 = 0x800000 (十进制的8388608)进行写入、则其余的 N1、N2、D1、D2都为零、则传输函数变为1。 我可以直接在 N0系数寄存器中写入0x800000、还是需要写入0x800000的二进制补码?  

    2.当我从 TIBQ 计算器获取 Biquad 滤波器值时。 我可以直接将这些值写入 Biquad coef 寄存器中、还是需要进一步计算、如对值进行除法或对值进行二进制补码、然后将其写入寄存器中?

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kishan,

    我尚未对此进行测试。 但是、您应该对0x800000进行编程、这是正确的。

    我不认为该值应该是二进制补码、因为双二阶系数不会为负。  

    有关 TIBQ 的信息。 应将系数标准化为"D" 0值。

    例如、当我使用 TIBQ 时、它会生成系数、其中 D0 = 32768

    但是、AIC3204的 D0 = 2^23 = 8388608

    因此、需要将 TIBQ 系数乘以(8388608/32768) 256才能在 AIC3204中获得相同的频率重组

    此致、
    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    正如您所说、TIBQ 系数需要乘以(8388608/32768) 256。 我认为这适用于16位分辨率、但当我们使用24位分辨率时、我们不需要与任何值相乘。 我是对的吗?

    我已从 TIBQ 计算器中获得这些值:

    文本"*采样率= 16000 "

    文本"*滤波器1高通二阶巴特沃斯、40 Hz FC 0.0 dB"

    文本"*滤波器2高通一阶巴特沃斯、91Hz FC 0.0dB"

    文本"*滤波器3低通二阶巴特沃斯、7800 Hz FC 0.0 dB "

     

    文本"* BQ:h (z)=(N0 + 2 * N1/z + N2/(Z2))/(8388608 - 2 * D1/z - D2/(Z2))"

    文本"*格式为 N0、N1、N2、D1、D2"的滤波器系数

     

    文本"* 1O:h (z)=(N0 + N1/z)/(8388608 - D1/z)"

    文本"*格式为 N0、N1、D1"的滤波器系数

     

    文本"*过滤器1 BQ"

    0x7E95FE

    0x816A02

    0x7E95FE

    0x7E93FF

    0x82D002

    文本"*过滤器2 1O"

    0x7DC0B8

    0x823F48

    0x7B8172

    文本"*过滤器3 BQ"

    0x791585

    0x791585

    0x791585

    0x871A55

    0x8D7541

    因此、对于使用一阶双二阶传输函数而不是二阶双二阶双二阶传输函数的滤波器2、我是否需要将值除以2、然后使用该值的有符号二进制补码?

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="302902" URL"~/support/audio-group/audio/f/audio-forum/1056625/tlv320aic3204-how-to-disable-specific-biquad-filter-in-decimation-filters/3922884 #3922884"]正如您所说的、来自 TIBQ 的系数需要乘以(8388608/32768) 256。 我认为这适用于16位分辨率、但当我们使用24位分辨率时、我们不需要与任何值相乘。 我对吗?[/引述]

    正确、只需选择24位分辨率就更简单了。

    Unknown 说:
    因此,对于使用一阶双二阶传输函数而不是二阶双二阶双二阶传输函数的滤波器2,我是否需要将值除以2,然后使用带符号的二进制补码?

    不需要在生成了 cefs 后进行任何数学运算(除非您按照我们讨论的方式将16位 cofs 转换为24位)、这些 cefs 已准备好进行编程

    在哪里可以根据需要禁用 Biquad C?

    此致、
    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    对于我的回复、"对于使用一阶双二阶传输函数而非二阶双二阶双二阶传输函数的滤波器2、我是否需要将值除以2、然后使用该值的有符号二进制补码?" 我正在澄清我的问题、所有 Biquad 滤波器都使用二阶传递函数、但我使用 TIBQ 计算器计算了 Biquad 滤波器2的一阶传递函数、因此我需要将 N1和 D1系数除以2、然后对 N1和 D1进行编程。 请重新检查文档 slaa557.pdf 并查看下面的公式。 二阶方程中的 N1和 D1乘以2、因此如果我直接使用 N1和 D1 COef 值、该值将变为两倍。 因此,我对把 N1和 D1除以2感到关注。 此外、我还录制 了一个数值为0x823F48的 N1和值为0x7B8172的 D1音频。 整个音频都非常嘈杂。

    关于禁用滤波器、无论我使用0x800000 = 8388608作为 N0 COef 还是0x7FFFFF = 8388607、都将 N1、N2、D1、D2全部归零。 由于 D0 = 2^23 = 8388608、因此 H (z)现在变为 N0/D0、因此8388608/8388608给出 H (z)= 1、8388607/8388608给出 H (z)= 0.9999998807907104、这更接近1、因此我们可以使用这两个值绕过滤波器。 如果我错了、请纠正我的问题。

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kishan,

    很抱歉、我今天没有机会查看这个问题。 我将在星期一查看这一点、看看我是否可以澄清您的问题。 在平均时间内、我有一个 PDF、它解释了有关 TIBQ 的一点。

    e2e.ti.com/.../1273.TIBQ.pdf

    此致、

    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    您是否有机会查看我的问题?

    我有一个问题、请查看下面的内容

    Biquad A 中的系数 D1一阶 IIR 和 N0均指 C39、但寄存器不同。 如果 C39 (PG 9、Reg 40、41、42) 一阶 IIR 中的 C38 (PG 9、Reg 40、41、42)、或者是文档 slaa557.pdf 中的拼写错误。 如果是、您能告诉我哪一个是正确的吗?

    为了进行确认、您可以告诉我、用于 AGC 低通滤波器的默认系数是多少?

    您还能告诉我、哪个模块在 ADC 处理模块 PRB_R11中包含 AGC 低通滤波器?

    因此、ADC 处理块 PRB_R11中使用了两个一阶 IIR 滤波器。 因此、我想知道哪个一阶 IIR 滤波器属于 PRB_R11中的滤波器。 请参阅下面的扣合。   

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="302902" URL"~/support/audio-group/audio/f/audio-forum/1056625/tlv320aic3204-how-to-disable-specific-biquad-filter-in-decimation-filters/3925563 #3925563"]"对于使用一阶双二阶传输函数而不是二阶双二阶双二阶传输函数的滤波器2、因此我需要将值除以2、然后使用带符号的二进制补码?"

    不需要、您无需除以2或采用二进制补码

    [引用 userid="302902" URL"~/support/audio-group/audio/f/audio-forum/1056625/tlv320aic3204-how-to-disable-specific-biquad-filter-in-decimation-filters/3929486 #3929486"]C39 (PG 9、寄存器40、41、42)是否 应为 C38 (PG 9、寄存器40、41、42)(一阶 IIR)或文档 slaa557.pdf 中的拼写错误。 如果是、您能告诉我哪一个是正确的吗?

    是的、这应该是 C38。 这是一个拼写错误。

    这些是 AGC 系数的复位值  

    此致、

    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    感谢您提供信息。

    正如您所说的那样、我不需要将其除以2或取2的补码。 这里是我使用 TIBQ 和 PurePath 计算系数值的东西。

    从 TIBQ 得到的值是什么

    • 文本"*采样率= 16000 "
    • 文本"*滤波器1高通二阶巴特沃斯、40 Hz FC 0.0 dB"
    • 文本"*滤波器2高通一阶巴特沃斯、91Hz FC 0.0dB"
    • 文本"*滤波器3低通二阶巴特沃斯、7800 Hz FC 0.0 dB "
    • 文本"*过滤器1 BQ"
      • N0 = 0x7E95FE、N1 = 0x816A02、N2 = 0x7E95FE、 D1 = 0x7E93FF、D2 = 0x82D002
    • 文本"*过滤器2 1O"
      • N0 = 0x7DC0B8、 N1 = 0x823F48、 D1 = 0x7B8172
    • 文本"*过滤器3 BQ"
      • N0 = 0x791585、 N1 = 0x791585、 N2 = 0x791585、 D1 = 0x871A55、 D2 = 0x8D7541

    因此、当我使用 TIBQ 系数值时、我会听到有噪声的音频。

    我从 TI 的 PurePath Studio 获得的价值是什么

    • 文本"*采样率= 16000 "
    • 文本"*滤波器1高通二阶巴特沃斯、40 Hz FC 0.0 dB"
    • 文本"*滤波器2高通一阶巴特沃斯、91Hz FC 0.0dB"
    • 文本"*滤波器3低通二阶巴特沃斯、7800 Hz FC 0.0 dB "
    • 文本"*过滤器1 BQ"
      • N0 = 0x7E95FE、N1 = 0x816A02、N2 = 0x7E95FE、 D1 = 0x7E93FF、D2 = 0x82D002
    • 文本"*过滤器2 1O"
      • N0 = 0x7DC0B8、 N1 = 0xC11FA4、 D1 = 0x3DC0B9
    • 文本"*过滤器3 BQ"
      • N0 = 0x791585、 N1 = 0x791585、 N2 = 0x791585、 D1 = 0x871A55、 D2 = 0x8D7541

    因此、当我使用 TI 的 PurePath 系数值时、音频正常。 请帮助我理解这一点、因为对于滤波器2 1O、TIBQ 和 PurePath 会为 N1和 D1提供不同的值。  

    谢谢、

    千山

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kishan,

    我在 E2E 搜索了类似问题(TIBQ 与 PPS 摘要)。 我还和一位同事讨论过、这两种工具有时会针对相同的滤波器参数提供不同的系数、这似乎是众所周知的。 我无法回答为什么会这样。

    最好使用提供正确输出的滤波器电容。 在这种情况下、使用 PPS 值。

    此致、
    Arthur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Arthur:

    感谢您的帮助并为滤波器系数找到最佳解决方案。

    谢谢、

    千山