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.

[参考译文] TLV320AIC3106:TDM在从属模式下的256时钟模式要求

Guru**** 2392095 points
Other Parts Discussed in Thread: TLV320AIC3106

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/664803/tlv320aic3106-256-clock-mode-requirement-for-tdm-in-slave-mode

部件号:TLV320AIC3106

您好,

我们的设计使用AM335x接口到3 x TLV320AIC3106编解码器,而这些编解码器是通过TDM模式在常见的McASP上实现的。   共有6个音频输入和6个音频输出,每个16位@ 8k。

该设计目前假定AM335x是BCLK和WCLK的主中继器(每个编解码器上的MCLK也与BCLK绑定)。

我无法从TLV320AIC3106文档中确定:
1)是否必须启用256位模式才能在TDM模式下作为从属模式运行(文档中明确指出必须为主模式启用该模式)
2)在TDM模式下作为从属设备使用的每帧时钟少于256位时钟是否存在问题

当前AM335x内部auxclk用于BCLK和WCLK,但是由于这被限制为24 MHz,我们假设我们需要提供外部高速主控器(AHCLKX)以确保BCLK具有完整数量的TDM时隙? 我们看到BeagleBone Black使用外部24.576 MHz时钟来完成此操作。

或者,提供AM335x CLKOUT1到MCLK的编解码器并让它通过PLL为McASP和其他编解码器生成友好的BCLK和WCLK是否有意义? 在这种情况下,编解码器可能需要启用256位模式。

此致,

保罗

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

    1- 256位模式仅适用于主模式。 在从属模式下,您只需了解偏移量。
    2-在从机模式下,每帧的bclks数量由主设备决定。 我刚刚在实验室中将TLV320AIC3106设置为具有接入点的从属设备,并运行24个24位8kHz (每wclk 576 bclks)通道,而AIC3106限制为256位偏移,它能够提供音频并进行回放。

    我还在每个wclk上运行了不到256个bclks,这也是有效的。如果您希望我测试特定配置并提供屏幕截图,请告诉我。 我很高兴这样做。

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

    非常感谢您的快速响应,这一切都是有意义的。

    接下来,我的问题是AM335x上的固定24 MHz以生成BCLK + WCLK,很抱歉,这可能更多地是AM335x问题,而不是TLV320AIC3106问题。

    我们同时使用DIN和DOUT,因此每个方向的每帧至少需要6通道x 16位= 96位。

    我了解AM335x24 MHz固定AUXCLK限于BCLK的整数除法(HCLKXDIV x CLKXDIV,即[1...4096]x[1...32]),因此每8-kHz帧3000位(或其整数除法)。 但是,这意味着不能为每个帧生成16位TDM时隙的整数倍数。

    从您的描述来看,这听起来似乎不是TLV320AIC3106从属设备的问题,因为只需要时隙偏移。 但是我担心,即使AM335xMcASP (和DMA)硬件可以支持此功能(我当前的理解是,由于帧同步生成配置是时隙的倍数,它不能支持),Linux tlv320aic3x驱动程序的配置可能仍然存在限制。

    所以我猜我们还需要添加一个时钟源,在某处添加一个6通道x 16位x 8 kHz = 768 kHz的倍数。

    再次感谢,

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

    我不是很熟悉AM335x和McASP。 但是,如果您在处理器论坛上发帖,我相信他们会很乐意为您提供帮助。

    我认为如果你有一个16的非整数倍数,只要你有至少96位,那就不会有特别大的问题。 编解码器将只注意分配给它的16位。 确保配置编解码器,以便DOUT在不传输时处于高阻抗状态。
    如果您对TLV320AIC3106还有任何疑问,请告诉我。 我很乐意为您提供帮助。

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

    非常感谢您的反馈,并对我回复缓慢(似乎通知邮件已自动归档)表示歉意。 将在处理器论坛中跟进,以确认AM335x方面是否存在任何问题。

    此致,

    保罗