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.

[参考译文] TLV320AIC3254EVM-K:双四路正极性支架增益误差

Guru**** 2480225 points


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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/818962/tlv320aic3254evm-k-bi-quad-positive-treble-shelf-gain-error

器件型号:TLV320AIC3254EVM-K

您好!

我在这里已经阅读了有关 TI3254 (或其他产品)存在极强的可变货架增益问题的几个相关主题。

大家可以看到、可立式搁板没有像正常的高搁板那样应用、在 FC 下方有一个低搁板切口、这对我来说很奇怪、我看到一条回复说、该搁板有意设置为防止溢出、 但是、这并不能让我真正信服、因为低音架没有这种情况。

我还读出了树架系数计算的定义、B0系数为1.30789、但双侧属性系数为0.9999、当我尝试修改它时、它警告 B0不能大于1。

我对 B0、B1、B2、A1、A2系数的理解是 IIR 系数、因此如果增益为正增益、B0必须大于1。 TI 为何对其加以限制?

看起来、根据 Biqual GUI 比例列、它们的比例更低、但我不能只按我希望的比例键、例如1。

如果我想没有低音裁切架、如何应用高音架? 我将需要使用高音升压作为用户拨号控制、如拨号1表示6kHz 以上的1dB 高音升压。

如果我只是添加一个增益来提升它、它会影响 DRC 行为、因为这个双二阶滤波器中的其他滤波器将被提升、或者是否有办法可以在不使用过多资源的情况下将专用增益应用于高音质层? (我几乎在边缘使用了资源)

非常感谢您详细了解这些问题。

谢谢、

皮尔斯

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

    皮尔斯、您好!  

    首先 、让我提供一些资源。  

    用于数字双二阶滤波器的系数计算器

    关于滤波器系数大于1的问题、 请参阅应用报告中的第6.2-6.3节。  我猜 PPS 的系数名称不正确、应为 N0、N1、N2、D1和 D2。

    我将深入研究这个问题、并在今天或明天回来与您讨论。

    此致、

    -Steve Wilson

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

    您好、Steve、

    谢谢、让我提供一些更多信息。

    我的 PurePath 版本。

    昨天、我发现峰值滤波器也存在此问题。

    如您所见、测试结果显示、当我设置3dB 峰值 EQ 时、升压小于1dB、而且测试结果中的 Q 绝对不是我设置的 Q3。

    然后、我意识到双二阶中的标度是" 压缩标度"、一旦数字小于1、标度就会更低。

    在我的试验中、我发现这个比例较低的问题似乎只发生在高频滤波器(正增益)上。 您添加的增益越多、其比例就越低。

    然而、在低频滤波器上不会发生这种情况、我已经尝试过峰值 EQ (与高频峰值 EQ 相同、我只是更改了 FC)、低音高音增强等。它们很好、刻度显示非常接近1 (0.998...)、您也可以看到图片、 我在低频下实现了很大的升压、它符合我的预期。

    最令人失望的是无法调整换算值

    对于高音架子、我已经放弃了、我将高音升压分离到了另一条路径、使用低音切割、然后添加了专用增益、它看起来非常复杂和愚蠢(抱歉、我不得不说)、至少它暂时解决了我的问题。

    直到我发现高频峰值 EQ 升压面临相同的问题、它确实令人沮丧、我无法始终使用一些组合滤波器/增益来实现简单的 EQ、我能吗?

    请帮助我们研究这个烦人的问题、我的计划越来越严格。 非常感谢。

    皮尔斯

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

    BTW、

    TIBQ 滤波器看起来工作正常、但我不知道如何将这些系数填充到 PurePath 双二阶滤波器。

    我将这16位数转换为十进制数、0x7FFF 为32767、0xB228为29224、我对此感到困惑。 (很抱歉、我不熟悉这些软件)

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

    您好、Steve、

    有任何反馈吗? 情况紧急。

    谢谢、

    皮尔斯

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

    皮尔斯、  

    您是否阅读 了《在 TLV320AIC3xxx 系列中配置数字双二阶滤波器的系数 》应用报告?

    第6节解释了如何转换连续系数[b0、b1、b2、a0、a1、a2]的系数值、这是编解码器所需的格式。  格式为1.15 、范围为0x8000至0x7FFF。  

    我假设 PPS 中的系数实际上是标准化值、所有值都小于1。 请阅读我提供的应用报告、 该报告应向您明确说明这一点。

    此致、

    -Steve Wilson

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

    您好、Steve、

    是的、我阅读了文档并计算了这些系数、PPS B0、B1、B2、A1、A2中的这些系数等于 N0、-N1、-N2、-D1、-D2、 他们看起来不奇怪吗? 对我来说,这是相当奇怪的,但无论如何也没有关系。

    最重要的是,我无法获得我想要的结果,这些升压滤波器工作异常,这正是我试图弄清楚的一点,但没有任何改进。

    我在 E2E 上读了很多相同的问题,没有人真正回答“如何解决”,“我如何在没有我请求的奇怪的缩小的情况下获得5 dB 的升压?”,“我的流量或任何设置是否错误?”

    这种情况令人沮丧。

    皮尔斯

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

    皮尔斯、  

    您可以通过转换数字来查看 TIBQ 系数是否有任何不同。  取数字并除以2^15。 您应该得到标准化系数。  

    您也可以使用 Matlab 通过以下过程生成系数:

    使用数字滤波器设计包(如 MATLABRegistered)生成 IIR 双二阶系数时,请执行以下步骤:  

    1. 使用滤波器设计函数(如 Matlab 的 famter 函数)计算系数[b0、b1、b2、a0、a1、a2],以设计截止频率为1kHz 的系统以48kHz 频率运行的巴特沃斯滤波器。 请注意、Matlab 系数通过 a0 = 1进行标准化。  

      [b、a]=黄油(2、1000 /(4800/2))
      
    2. 通过除以以下公式、将这些系数转换为[N0、N1、N2、D1、D2]:  

      • N0 = b0

      • N1 = B1  /2

      • N2 = B2

      • D1 = A1 /2

      • D2 = A2

    1. 通过乘以2^31 (如果是32位格式)将系数转换为 Q31。 对于16位格式、乘以2^15。

    2. 舍入到最接近的整数并转换为16/32位二进制补码十六进制格式:

      • 对于正整数、只需转换为十六进制格式。

      • 对于负整数、取系数的绝对值、将其转换为二进制、求反、添加一并转换为十六进制。  

    一位同事提到、TIBQ 和 PPS 计算系数的方法在高频(接近奈奎斯特)时可能会出现一些问题 。该方法往往会使东西翘曲到接近奈奎斯特的位置、并且增益可能会被错误计算。 该算法基于 Audio-EQ-Cookbook。  

    此致、

    -Steve Wilson

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

    您好、Steve、

    感谢您对计算的详细解释、我认为这些系数基于理论。

    上周我做了一些计算、方法和你提到的完全一样、有些奇怪的事情发生了、但这一点已经不再重要了。

    根据您之前说过的最后一段、高频滤波器在接近奈奎斯特时存在一些问题、48kHz 采样率的奈奎斯特频率为24kHz、 但我使用的滤波器甚至会受到2-3kHz "峰值 EQ"(更不用说树形搁板)的影响、这有点奇怪、不是吗?

    我随附了测试文件 here.e2e.ti.com/.../forTI.rar

    您可能会看到这些升压 EQ (包括峰值 EQ、高音质等)已被下调、因为设置了更高的频率或更高的增益、因为比例更低。 这意味着结果将比预期更不同。

    我想知道、我们是否有任何方法可以关闭该"自动缩放"?

    非常感谢、

    皮尔斯

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

    没有回复。。

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

    皮尔斯、  

    没有"关闭自动缩放"选项。

    让我联系我们的流程专家、他们可能会对 GUI 功能发表意见。  

    此致、

    -Steve Wilson

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

    是否有方法可以在双二阶中读取标度? 探头或其他东西。 我想检测标度、然后通过 SHIFT_SCALE (或您可能建议的其他)将其重新添加到

    谢谢、

    皮尔斯  

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

    皮尔斯、您好!

    miniDSP 双二阶实现了以下差分方程:y(n)=b0*x(n)+b1*2*x(n-1)+b2*x(n-2)+a1*2*y(n-1)+a2*y(n-2)+ a2*y(n-2),其中 x(n)和 y(n)分别是输入和输出。 系数(b0、b1、b2、a1、a2)必须在[-1、1)范围内、即-1和1之间、前者包括在内、后者排除。

    对于大多数标准滤波器、A1和 A2满足上述条件。 对于 b0、b1和 b2、在某些情况下不满足上述条件。 在这种情况下、PPS 对系数进行缩放、以使其满足上述条件、而 GUI 上显示的特定比例因子。 通过将信号与比例因子的倒数相乘、可以轻松地补偿这种比例调节。

    以 fc = 5k、增益= 3dB 且 fs = 48kHz 的 Treble Shelf 为例。 传递函数的分子和分母为

    N =[1.3079     -1.5366     0.55862];

    D =[1-1.0396          0.36957];

    使用将它们转换为差分方程的系数

    •B0 = N0 = 1.3079

    •B1 = N1/2 =-0.7683

    •B2 = N2 = 0.55862

    •A1 =-D1/2 = 0.51981

    •A2 =-D2 =-0.36957

    但是、由于 b0大于1、所有分子系数都乘以1/bz0 = 0.76459。 这是 GUI 中显示的比例因子。

    缩放后的系数(1/bz0)如下所示:

    原始滤波器及其缩放响应如下所示。

    这两个响应是相同的,只是缩放的响应下降了20*log10(1/1.3079)=20*log10(0.76459) =-2.3314dB

    这可以使用有效乘法因子为(1/0.76459)= 1.30179 (1移位和0.65395刻度)的移位标度分量进行补偿。 由于移位标度是线性操作、因此可以在双二阶滤波器之前或之后放置。 在多实例双二阶中、比例因子乘积的倒数将用作补偿因子。

    我希望这能为你澄清问题。

    此致。

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

    尊敬的 Diljith:

    谢谢、现在我们将讨论。

    正如您说过的、我还发现我只需在双二阶滤波器之后添加一个移位标度即可进行补偿、但仍然有一个问题。

    我将为用户提供5个频带均衡器、每个频带包含-5dB 至5dB、每步分辨率1dB。 这意味着所有刻度都需要补偿、即需要乘以对等。 (我仅尝试补偿最低刻度、这还不够)

    您可以想象、这将是一个巨大的补偿表组合、测试每个组合并创建一个用于软件人员集成的表真的很困难。 我是否可以使用某些组件读取这些刻度并进行计算、然后将其重新分配给移位刻度系数。 块? 我看到有探头、符号数据、反向等、但很遗憾我不知道如何使用它。

    祝你一切顺利、

    皮尔斯

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

    皮尔斯、您好!

    在这种情况下、我认为探头、反向或其他 miniDSP 组件不会有所帮助、因为缩放因子必须根据用户选择来确定、并且最好在主机处理器上确定。

    我假设主机软件上有一个表将每个滤波器设置映射到相应的(五)系数(b0、b1、b2、a1、a2)。 为了处理缩放、必须将表扩展到6个值(b0、b1、b2、a1、a2、scale)、 比例(或反向缩放)因子是表中的附加条目。

    对于任何滤波器组合、主机都可以获得与5频带 EQ 中的每个均衡器选择对应的五个换算系数、将其相乘以确定组合补偿系数、并将其与双二阶系数一起编程到器件中。 我相信计算组合补偿系数而不是使用补偿表将有助于简化软件流程。

    此致。

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

    尊敬的 Diljith:

    您是否意味着我们需要从   SoC 等外部处理器进行识别(b0、b1、b2、a1、a2、scale)?

    我不是软件工程师、我们可以在 SoC 中进行这些识别和计算吗? 如果是、我们如何将该数字重新分配给 AIC3254移位比例分量?

    谢谢你。

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

    皮尔斯、您好!

    SoC 上的查询不是很清楚。 我希望 PPS 中的所有计算现在都清晰。

    大多数主机处理器 SoC 可以处理移位标度计算、并且可以使用适当的 i2c/SPI 写入在运行时更新结果。 任何运行时参数的 i2c 地址均可从'Component Interface'下的'Properties'面板中获取。 这是更改 AIC3254器件配置的常规方法。 我已请求您在 E2E 上与我联系、以防您需要私下共享文件来讨论有关您产品的特定问题。

    此致。

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

    尊敬的 Diljith:

    谢谢、连接请求很好。

    关于 SoC 处理移位量计算、我需要与我们的软件工程师详细讨论这一点、他们怎么做。

    如果我们有困难、我会回复您。

    谢谢。

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

    谢谢皮尔斯。 我们将关闭此主题。 对于您可能遇到的任何其他问题、请启动新主题帖。

    此致。

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

    是的。 感谢您的配合。

    皮尔斯