主题中讨论的其他部件: TAS5782M
您好,
我需要使用TAS5717双四组棺材实施参数均衡器。 这意味着我需要动态计算双曲面,而不能使用您的TI工具。
能否告诉我放大器中使用的H (z)转换功能? TAS使用的函数似乎与筛选器计算中使用的通用H (z)=(b0 + B1* z[-1]+ B2 * z[-2])/(1 + A1 * z[-1]+ A2 * z[-2])不同。
谢谢
Petr
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.
您好,
我需要使用TAS5717双四组棺材实施参数均衡器。 这意味着我需要动态计算双曲面,而不能使用您的TI工具。
能否告诉我放大器中使用的H (z)转换功能? TAS使用的函数似乎与筛选器计算中使用的通用H (z)=(b0 + B1* z[-1]+ B2 * z[-2])/(1 + A1 * z[-1]+ A2 * z[-2])不同。
谢谢
Petr
您好,Petr:
有关TAS设备上的BQ过滤器方程式,请参阅随附的文档。
e2e.ti.com/.../0027.Biquad-Filters-Application-Note.pdf
此致,
郑少文
您好,Petr:
很抱歉混淆了。 本文档基于1.23 格式(AIC编解码器),因此有一个标准化步骤可避免浮点过高。 但对于我们的开环音频放大器设备(例如 TAS5717),3.23 实际上 没有此步骤。 请忽略文档中的此步骤,直接 将计算系数转换为26位3.23 格式。 TAS5717 数据表第31页介绍了隐蔽方法。 但 该文档中的EQ系数计算公式适用于 TAS5717开环设备。 很抱歉 再次出现混淆。
此致,
郑少文
Shawn您好!
我现在已经使用您的帮助实施了我的筛选器,尽管我使用"食谱"公式,因为我的输入是FC,Gain和Q (而不是BW)。 我仍未关闭此主题的原因是,筛选器执行的筛选器操作似乎与预期的不同。 然而,它们并不像以前那样完全错误。 在发生砰砰声之前,噪音和放大器正在切换,这可能是由于数学运算中的超限。
我使用以下计算(C):
浮点b0,b1,b2,a0,a1, A2;
float omega0 = 2* M_PI * freq / fs;
float cos_o0 = cos (omega0);
float alpha = sin (omega0)/(2 * Q);
浮点A =粉末(10,增益/ 40);
/*
*我们的计算使用以下转换函数
* b0*x[n]+ B1*x[n-1]+ B2*x[n-2]
* H (z)=------------------
* a0*y[n]+ a1*y[n-1]+ a2*y[n-2]
*/
/*陷波滤波器*/
B0 = B2 = 1;
B1 = A1 =-2 * cos_o0;
A0 = 1 +字母;
A2 = 1 -α;
/*归一为a0 == 1 (即创建5个系数)*/
b0 /= a0;
b1 /= a0;
B2 /= a0;
a1 /= a0;
a2 /= a0;
/*
*转换为TI传输函数
* b0*x[n]+ 2*B1*x[n-1]+ B2*x[n-2]
* H (z)=------------------
* y[n]- 2*A1*y[n-1]- A2*y[n-2]
*/
B1 *= 0.5 ;
A1 *=- 0.5 ;
A2 =-A2;
uINT32_t b0_323 = to3_23 (b0);
UINT32_t B1_323 = TO3_23 (B1);
UINT32_t B2_323 = TO3_23 (B2);
UINT32_t A1_323 = TO3_23 (A1);
UINT32_t A2_323 = TO3_23 (A2);
这里是转换函数
UINT32_t至3_23 (浮点数x)
{
uINT32_t r;
如果(x >= 0)
R = x *(1<23);
否则{
r =(-x)*(1<23);
r =-r;
}
返回r和0x03ffffffff;
}
然后,将按b0_323,b1_323,b2_323,a1_323,a2_323的顺序写入系数。
这是否正确?
此致
Petr
您好,Petr:
感谢您的更新。 我之前上载的文档的1.3 部分介绍了缺口筛选计算公式。 在这里,我上传了另一个可用于模拟缺口筛选器响应的工具。 可以使用它为任何陷波过滤器设置生成寄存器配置。
e2e.ti.com/.../notch_5F00_filter.xlsx
此致,
郑少文
Shawn您好!
非常感谢,最后一份文档帮了我们很多! 应用手册0027中所写的A1和B1不除以2。 因此,传输功能实际上是:
/*
* TI传输功能
* b0*x[n]+ B1*x[n-1]+ B2*x[n-2]
* H (z)=------------------
* y[n]- a1*y[n-1]- a2*y[n-2]
*/
即,仅A1和A2乘以-1。
通过这种修改,过滤听起来就像做正确的事情。 当我更改EQ参数太快(EQ连接到UI)时,我只收到一些音频伪影,响亮的砰声和音频静音。
我怀疑系数载荷是一个一个加载它们的。 遗憾的是,我使用的中间SW API不允许同时设置所有5个系数。 因此,可能会有一些过渡时期,其中一些是旧的,而有些则是新的。 这当然会导致计算错误。 是否有办法先写入这些缓冲区,然后告诉放大器使用新的缓冲区(某种双重缓冲)?
此致
Petr