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.

[参考译文] TMS320F28386D:CLA 同步

Guru**** 2455560 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1550755/tms320f28386d-cla-synchronisation

部件号:TMS320F28386D


工具/软件:

您好、
是否可以同步 2 个 CLA? 客户必须同步运行相同的代码/指令时钟。 可以是通过 CPU 指令、CLB 还是外部信号?

此致、Holger

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

    您好、Holger、

    没有可用的 CLA1 到 CLA2 MSGRAM、因此还有一些其他选项:

    1. 如果这是两个 CLA 上唯一使用的任务、您可以对两个 CLA 任务使用相同的触发源、并共享外设。 例如、您可以将 ePWM1 设置为共享外设、并将 EPWM1 设置为 CLA1 和 CLA2 上任务的触发源。 然后、您便知道这两个任务同时开始执行。
    2. 在 CPU1 和 CPU3 之间以及 CLA/CPU MSGRAMS 中的变量之间使用 IPC:
      1. CLA1 <->CLA/CPUMSGRAMS <-> CPU1 <-> IPC <-> CPU2 <->  CLA/CPUMSGRAMS <-> CLA2
    3. 您可以在外部将四个 GPIO 相互连接、并将两个设置为输出、另两个设置为输入。 请注意、每个 GPIO 一次只能由一个内核拥有。 示例:
      1. CLA1 — 在其任务内将 GPIO1(输出)写入高电平、然后循环等待 GPIO2(输入)变为高电平
      2. CLA2 — 在其任务内将 GPIO3(输出)写入为高电平  、然后循环等待  GPIO4(输入)变为高电平
      3. 从外部连接 GPIO1 -> GPIO4
      4. 在外部连接 GPIO3 -> GPIO2

    此外、如果您希望代码行同时发生、请确保此后的代码行需要相同数量的时钟周期。 如果在两个内核上使用相同的代码、请确保两个工程配置了相同的优化级别。

    此致、

    Delaney