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.

[参考译文] AM4378:McASP工作和连接

Guru**** 1145030 points
Other Parts Discussed in Thread: TLV320AIC3104, AM4378
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1092700/am4378-mcasp-works-and-the-connections

部件号:AM4378
主题中讨论的其他部件:TLV320AIC3104

您好,支持团队,

我的客户有关于AM437x处理器的McASP的以下问题。


我们正在原型板上检查运行情况,我们认为存在问题
与McASP的工作方式以及创建主板时假定的连接。
CPU (AM4378)与编解码器(TLV320AIC3104)之间的连接关系
原计划如下。

-从CPU向COEDC提供MCLK
编码解码器在主模式下运行
-将BCLK和WCLK编解码器分配给CPU
-将音频数据从CPU输出到编解码器
-DA音频编解码器通过AWAMP通过扬声器播放

参考图:最初计划的连接


在设计时,我的理解不够充分,但我已重新检查
AM437x技术参考手册“24.3 5时钟和帧同步发生器”
和应用程序报告SPRACK0,并具有以下确认/问题。

请回答以下问题。

问题1. 以下各项认可是否正确?

要将数据从CPU输出到编解码器,需要路由到内部数据传输XCLK和内部帧同步。

从外部到McASP0_ACLKR和McASP0_FSR引脚的CLK输入可以路由到RCLK和内部帧同步进行接收。
 XCLK和内部帧同步无法路由到XCLK和内部帧同步进行传输,因此无法按预期方式使用。

-例如,如果编解码器的BCLK和WCLK连接到McASP0_ACLKX和McASP0_FSX引脚,
 它们可用于最初设想的配置。

由于McASP0_ACLKX和McASP0_FSX不仅能够路由以发送,而且还能接收RCLK
 内部帧同步,BCLK和WCLK可以路由到McASP0_ACLKX和McASP0_FSX,而无需考虑数据传输
 或接收,主模式或从属模式配置。 只要连接了ACLKX和McASP0_FSX,就可以使用它们。


问题2.  如果我们想在不修改主板的情况下支持此功能,是否可以使用以下配置?

信号输入/输出关系应如下所示:CPU为主,编解码器从模式,
CPU内部McASP时钟的路由应如下所示。

在发送和接收的方框图中,假设分频器的分频器比率已对齐。
下图中,AUXCLK在发送时显示为红色,在接收时显示为蓝色,
但是,如果源相同,则假定它是同步的。

传输时钟发生器方框图


接收时钟发生器方框图


帧同步生成器方框图

请解释此配置,它通常不使用。
不过,我们需要考虑可否在不改动主板的情况下处理这项问题。


如能立即支持上述问题,将不胜感激。
我希望得到您的及时回复,或者至少提供此回复的时间表。

此致,
Kanae

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

    您好,Kanae,

    问题1.
    是的,很遗憾,McASP内部的发射器逻辑使用ACLKX和AFSX引脚的时钟进行传输,而不是使用您连接的ACLKR和AGSR引脚。
    是,处于同步模式(MCASP_ACLKXCTL。 Async =0)传输逻辑和接收逻辑共享ACLKX和AFSX引脚。 在此模式下,我认为ACLKR和AFSR引脚未激活/它们被忽略。

    问题2.
    您建议使用ACLKR和AFSR作为编解码器的输出可能会起作用。
    如果ACLKX引脚使用来自相同AUXCLK源的相同分频器设置,则ACLKKR引脚上生成的时钟应与ACLKX引脚上生成的时钟匹配。 对于发送器数据到接收器时钟ACLKR的数据表时钟,不能保证数据表时钟,但此AIC3104可能会有余量负载。
    我的问题是AFSR是否与AFSX上的信号保持同步。 您可能需要同时维修接收器和发射器中断,并同时启动两者。

    您是否可以访问此主板上的AFSX信号? 我建议通过探测AFSX和AFSR来证明AFSR和AFSX保持同步如果您也可以访问ACKLX,我会对照ACLKR检查它,以确保处于相位状态
    如果您的主板上没有这些信号,那么建议您找到一个能将这些信号从处理器输出的主板,如EVM。

    ===========
    在另一个主题上,您应该验证您的系统是否可以达到所需的音频采样率。
    在第一种情况下,编解码器生成BCLK和FS,AHCLKX引脚是否可以为编解码器MCLK提供适当的时钟频率,这是实现典型音频采样率(如48kHz或96kHz)所必需的。 编解码器应该有一个分频分频器,用于非常接近这些目标频率。 例如,如果AUXCLK =26MHz,并且您将此除以2 (13MHz)并将其分配给编解码器MCLK,则编解码器内的PLL乘法器和分数除法器需要乘以1625,再除以6,以获得准确的48kHz。

    本例中的26MHz是为auxclk而抽入的最大主振荡器晶体
    请参阅图6-24。 ADC0,ADC1,DCAN和McASP时钟选择和表24-3。 AM437x TRM中的McASP时钟信号。

    在第二种情况下,AM437x生成BCLK和FS,只有整数分隔器可用于生成音频时钟。 这通常会强制选择晶体振荡器。
    考虑主振荡器的以下可能晶体频率:
    19.2MHz / 400 = 48kHz -完美,可能(AHCLK = AUXCLK DIV 4,ACLK = AHCLK DIV 16)
    24MHz/500= 48kHz -完美,可能(div 4,div 25)
    25MHz/520=48.076KHz -不完美,可能(div 20,div 26)
    26MHz/ 540=48.148KHz - 不完美,可能(div 18,div 30)
    可以使用多种不同的分隔器组合。
    HCLKRDIV/HCLKXDIV的范围从div-by 1到div-by 4096
    CLKXDIV/CLKRDIV的范围从DIV-1到DIV-by 32

    如果您有更多问题,请告诉我。

    此致,
    标记

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

    Mark,您好!

    感谢您的详细回答。
    我将与客户分享并与他核实
    如果他还有其他问题。

    顺祝商祺!

    Kanae