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.

[参考译文] 编译器/TMS320F28377D:28377d CLA 中的程序大小

Guru**** 2538950 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/608150/compiler-tms320f28377d-the-program-size-in-cla-of-28377d

器件型号:TMS320F28377D

工具/软件:TI C/C++编译器

你好!

我使用28377d 来控制电机。 首先、我在 CPU 中控制电机、然后将同一程序移动到 CLA。

但是在我编译项目之后、程序大小有很大的不同、CPU 中的程序大小为0x333、而 CLA 中的程序大小为0x7d8。 CLA 中的同一程序比 CPU 中的程序大得多。

不对? 如何减小 CLA 的尺寸?
此致

摇晃

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

    您使用的是哪个编译器版本? 您正在使用哪些编译器标志?

    CLA 编译器最近变得更好。 我建议更新编译器版本并使用最低优化级别-O2

    此致、
    SAL
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此外、CLA 是浮点引擎。 如果您在 CLA 上执行定点数学运算、代码大小将会放大并运行不良。

    SAL
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Sal
    我的编译器版本为 v16.9.x、是如何在 ccs7中查看编译器标志的。
    CPU 编译器版本与 CLA 相同,因此 CLA 的程序大小比 CPU 大。
    所有 CLA 操作码均为32位(SPRUHM8E 619页中有这样的说法),但 CPU 操作码始终为16位(我不记得我在哪里看到此指示)。 这是否有任何原因?
    此致
    摇晃
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    C28x 操作码并非全部为16位。 C28x 具有16位和32位操作码。

    这是两个不同 CPU 的性质。 CLA 是一款仅在32位操作码上运行的浮点加速器。

    您是否正在执行定点数学运算? 您的 CLA 程序在做什么?

    SAL
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我的 CLA 程序旨在计算电机控制环路的参数并控制电机控制流。 但是、由于程序大小太大、所以现在我只使用 CLA 来计算电机控制环路的参数。
    我使用了浮点数学运算、因为在驼鹿情况下、参数类型为 float。
    谢谢你
    此致
    摇晃
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    F2837x 具有0x3000的 LS RAM、可用于 CLA 程序和数据。 如果 C28x 不使用0x7d8、则可以将其安装在该位置。

    SAL