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.

[参考译文] TMS320F28P650DH:适用于 CPU 和 ePWM 模块的 200MHz

Guru**** 2863590 points

Other Parts Discussed in Thread: TMS320F28P650DH

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1637593/tms320f28p650dh-200mhz-for-cpu-and-epwm-module

器件型号: TMS320F28P650DH

 

您好:
我对 CPU 和 ePWM 模块频率有疑问。

该器件的数据表显示、ePWM 模块的 200MHz 是可以的。

image.png

 

 

在器件的 TRM 中、您将在 3.7.3.3 中找到:

image.png

 

我们要在应用中使用 CPU ePWM 模块及 200MHz。  

这是允许的吗?


谢谢
Ralf

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

    尊敬的 Ralf:

    感谢您提出有关在 TMS320F28P650DH 上的 200MHz 中运行 CPU 和 ePWM 模块的问题。

    是的、允许在 200MHz 上同时运行 CPU 和 ePWM 模块。

    根据您参考的文档和我查看过的技术规格:

    关键文档要点

    1.来自数据表(第 6.12.3.2.1.8 节 — 内部时钟频率):
    - f (SYSCLK) 最大值= 200MHz(CPU 时钟)
    - f (ePWM) 最大值= 200MHz(ePWM 时钟)

    这两种规格都清楚地显示 200MHz 为支持的最大频率。

    2.来自 TRM(第 3.7.3.3 节 — CPU 子系统时钟):
    您重点介绍的部分指出:*“默认情况下、ePWM 和 EMIF1 时钟都有一个额外的/2 分频器、这是支持超过 100M 的 CPU 频率所必需的。 在较低的 CPU 频率下、可以使用 PERCLKDIVSEL 寄存器禁用这些分频器。“*

    了解默认配置

    复位时、PERCLKDIVSEL 寄存器默认为:
    - EPWMCLKDIV = 1h -(2 分频)
    - EMIF1CLKDIV = 1h -(2 分频)

    这意味着:
    -当 CPU 以 200MHz 运行时、EPWM **默认情况下**以 100MHz 运行 (200MHz /2)
    -这是**保守的故障安全配置**

    200MHz EPWM 运行的配置

    要在 CPU 位于 200MHz 时在 200MHz 处运行 EPWM、您需要配置** PERCLKDIVSEL 寄存器**:

    **寄存器配置:**

    #include "F28P65x_Device.h"
    
    // Enable protected register writes
    EALLOW;
    
    // Set EPWM clock divider to /1 (200 MHz)
    // PERCLKDIVSEL.EPWMCLKDIV (bit 0)
    // 0 = /1 of SYSCLK (200MHz)
    // 1 = /2 of SYSCLK (100MHz) [default]
    SysCtrlRegs.PERCLKDIVSEL.bit.EPWMCLKDIV = 0;
    
    // Disable protected register writes
    EDIS;

    ** PERCLKDIVSEL 寄存器详细信息**(来自 TRM 第 424 页):
    -**位 0:EPWMCLKDIV**(R/W、复位= 1h)
    - 0 =/1 的 SYSCLK
    - 1 =/2 个 SYSCLK(默认)
    -**位 4:EMIF1CLKDIV**(R/W、复位= 1h)
    - 0 =/1 的 SYSCLK
    - 1 =/2 个 SYSCLK(默认)

    TRM 措辞的解释

    TRM 声明*“支持 100 米以上 CPU 频率的要求“*指**默认安全配置**、可确保在各种用例中的兼容性。 但是、由于数据表明确指定 CPU 和 ePWM 都能够以 200MHz 最大值运行、因此会禁用分频器(设置 EPWMCLKDIV = 0) 任何偏差


    建议

    对于在 200MHz 上运行 CPU 和 ePWM 的应用:

     支持此配置 — 数据表最大规格和可配置的 PERCLKDIVSEL 寄存器确认允许使用此配置

    2.设置 PERCLKDIVSEL.EPWMCLKDIV = 0 以禁用/2 分频器

    3.确保正确配置您的 PLL 以输出稳定的 200MHz SYSCLK

    4,验证是否正常运行 — 测试您的特定应用,以确保信号完整性和时序符合您在 200MHz 的要求

    其他注意事项

    -默认的/2 分频器为信号完整性**提供**裕度、并可能降低 EMI
    -在 200MHz ,请注意:
    - PCB 布局和布线
    -电源去耦
    -时钟信号完整性
    - ePWM 输出信号质量


    参考资料:

    - TMS320F28P650DH 数据表:[SPRSP69D](www.ti.com/.../sprsp69d.pdf)
    - TMS320F28P65x 技术参考手册:[SPRUIZ1B](www.ti.com/.../spruiz1b.pdf)、第 3.7.3.3 节和第 424 页


    底线 :是的、您可以通过设置 PERCLKDIVSEL.EPWMCLKDIV = 0 在 200MHz 同时运行 CPU 和 ePWM。 这处于器件规格范围内。

    如果您需要对时钟配置做出任何澄清或有其他问题、敬请告知。

    此致、
    Zackary Fleenor