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.

[参考译文] Linux/AM3352:25MHz 振荡器的 PER_CLKOUT_M2问题

Guru**** 2610995 points
Other Parts Discussed in Thread: AM3352

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/654097/linux-am3352-per_clkout_m2-issue-with-25mhz-oscillator

器件型号:AM3352

工具/软件:Linux

大家好、

我的客户正在使用具有25MHz OSC 的 AM3352进行电路板设计。 现在、该项目几乎已经完成并准备好试运行、但在此之前、它发现了 per_CLKOUT_M2输出的一个关键问题。 在某些电路板中、输出不是192MHz (192MHz 是预期频率)。 在某些电路板上、运行数小时或更多时间后时钟可能会发生变化(在今天的测试中、它会更改为129MHz)。

共有9块电路板在测试中、只有2块电路板存在此问题。 在问题重现流程中、重现问题的最短时间约为2小时。 最长的时间是12小时后。  

当问题发生时、观察到 UART 波特率发生了变化、因此我们使用 CLKOUT1和 CLKOUT2来监控主25MHz OSC PER_CLKOUT_M2时钟。  使用示波器进行测试后、发现 CLKOUT1的输出正确、为25MHz。  

将频率设置为 PER_CLKOUT_M2 / 6 (将0x44E00700设置 为0xAB)时、正确的值应为192/6=32MHz、但 CLKOUT2的测试输出为21.5M、 这意味 着 PER_CLKOUT_M2大约为129MHz、但不是192MHz。   

此外、我们将 0x44E00700设置 为0xB3、即 PER_CLKOUT_M2 /7、结果为18.3M (PER_CLKOUT_M2 = 18.3*7=128.1MHz)、但不是192/7= 27.4MHz。

因此,PER_CLKOUT_M2必须有问题 。

然后我检查 了 CM_CLKSEL_DPLL_PER (0x44E0049C)的寄存器值。 和 CM_DIV_M2_DPLL_PER (0x44e004AC)。  

正确的值是

REG (0x44E0049C)= 0x0403C018、  //  DIV:0x18 -> 24,MULT:0x3C0 -> 960

寄存器(0x44e004AC)= 0x00000285。  // DIV:0x5 -> 5.

发布的电路板显示了正确的寄存器值作为未发布的电路板。

此外、CLKOUT1在已发布电路板上的频率正确为25MHz。 因此、我不理解为什么 per_CLKOUT_M2 时钟不是正确的值。  

有人能帮您对此发表一些评论吗?

谢谢!

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    故障电路板上的 SYSBOOT[15:14]设置是否正确? 勘误咨询1.0.30是否已实现?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    什么是 Linux 版本?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Biser 和 Steven、您好!  

    我是客户、 感谢    您的帮助。

    (1) SYSBOOT[15:14]为10b

    (2) Linux 版本3.12.10-ti2013.12.01

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    SYSBOOT 正确。 AM335x 勘误咨询1.0.30是否已实现?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请验证答案是否已解决、以便我们可以关闭该主题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Biser、

    客户在将 OSC0_GND、OSC1_GND 和 DGND 连接在一起后进行了测试。

    这个问题仍然存在。

    此外、我们发现 DDR PLL 在运行一段时间时也存在相同的问题。

    这是用于25MHz 主 OSC 的晶体数据表。

    请随时分享您对此问题的评论。 谢谢!

    e2e.ti.com/.../25M_76662F63_---25.00--SJK_2D00_6C_2D00_0_2D00_20_2D00_20_2D00_40_2D00_F_2D00_C_2D00_30_2D00_H_2800_SJK_2900_.pdf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Steven、
    您能描述一下测试方案吗? SoC 在运行的这段时间内会做什么?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在过去六年中,有两、三宗同类个案。 每次我们确定客户的设计时,噪音就会耦合到25MHz 晶体电路中,并且足够大,可以在为 PLL 提供源的内部25MHz 参考时钟上产生干扰。 这些干扰会干扰 PLL 中的时钟过频电路并导致意外行为。

     

    有一种简单的方法可以确认问题是否是问题所在。 客户可以临时移除与晶体电路相关的组件、并使用1.8伏 LVCMOS 振荡器在遇到问题的一个或两个电路板上提供25MHz 参考时钟。 LVCMOS 振荡器的快速上升/下降时间使得内部基准时钟很难产生毛刺脉冲。 如果问题消失、则表明噪声耦合到晶体电路中。

     

    此致、

    Paul