ZHCAAB0A April 2021 – December 2021 TMS320F2800132 , TMS320F2800133 , TMS320F2800135 , TMS320F2800137 , TMS320F280021 , TMS320F280021-Q1 , TMS320F280023 , TMS320F280023-Q1 , TMS320F280023C , TMS320F280025 , TMS320F280025-Q1 , TMS320F280025C , TMS320F280025C-Q1 , TMS320F280033 , TMS320F280034 , TMS320F280034-Q1 , TMS320F280036-Q1 , TMS320F280036C-Q1 , TMS320F280037 , TMS320F280037-Q1 , TMS320F280037C , TMS320F280037C-Q1 , TMS320F280038-Q1 , TMS320F280038C-Q1 , TMS320F280039 , TMS320F280039-Q1 , TMS320F280039C , TMS320F280039C-Q1 , TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041-Q1 , TMS320F280041C , TMS320F280041C-Q1 , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049-Q1 , TMS320F280049C , TMS320F280049C-Q1 , TMS320F28075 , TMS320F28075-Q1 , TMS320F28076 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28375S-Q1 , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28377S , TMS320F28377S-Q1 , TMS320F28378D , TMS320F28378S , TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S , TMS320F28384D , TMS320F28384D-Q1 , TMS320F28384S , TMS320F28384S-Q1 , TMS320F28386D , TMS320F28386D-Q1 , TMS320F28386S , TMS320F28386S-Q1 , TMS320F28388D , TMS320F28388S , TMS320F28P650DH , TMS320F28P650DK , TMS320F28P650SH , TMS320F28P650SK , TMS320F28P659DH-Q1 , TMS320F28P659DK-Q1 , TMS320F28P659SH-Q1
C28x CPU 可以使用 IACK 指令通过软件触发 CLA 任务。C28x 可以使用这一功能,在 C28x CPU 上运行的代码中的特定点将计算转移到 CLA。ACI 基准测试示例是相当线性的,因为一个控制算法块需要来自前一个控制算法块的输入。然而,两种情况可以引入并行性:
PID 控制算法有三个实例,其中一个(PID Id 实例)不依赖于其他实例,可以并行处理。在实现中,C28x 将 PID Id 控制执行转移到 CLA 任务 2,同时 C28x 并行执行速度和 Iq 的 PID。
SVGen 控制块取决于 Park 逆变换的输出。由于这是一种无传感器 ACI 实现方式,因此还存在额外的控制块,如通量估算器和速度估算器。SVGen 不依赖于这些控制块,可以与这些估算器并行处理。在此实现方式中,C28x 将 SVGen 计算转移到 CLA 任务 1。
有关实现方式,请参阅“SignalChain_RAM_TMU_CLA_OFFLOAD”构建配置。该实现方式演示了转换代码如何轻松地将计算转移到 CLA 。相同的 PID 内联 C 函数头文件包含在C28x 源文件以及 CLA 源文件中,并在 C28x 端编译成 C28x 代码,而在 CLA 端编译成 CLA 代码。
将计算转移到 CLA 的机会减少了执行周期计数,从而将性能提高 12%。