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.

[参考译文] CCS/TMS320F28377S:CLA 代码不从 RAM 运行

Guru**** 2483905 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/602761/ccs-tms320f28377s-cla-code-does-not-run-from-ram

器件型号:TMS320F28377S
主题中讨论的其他器件:C2000WARE

工具/软件:Code Composer Studio

我尝试使用 LaunchPad 开发套件 LAUNCHXL-F28377S 和 CCS v7从 CLA 运行代码。
我初始化了 CLA、如控制套件示例 V210\F2837xS_Examples_CPU1\CLA_fir32、RAM 配置版本、200 KHz 时钟。

当我强制 CLA 运行时、我看到 CLA 在  反汇编器和存储器查看器显示时停止在"停止调试"断点
我是与源同步的有效代码(然而、我没有精确检查操作码、但看起来不错)。
但是、当我运行它时、每个命令的行为与"mnop"类似、 只是程序计数器
在调试器中每次按下'step'或'run'后改变一个。  似乎 CLA 不读取代码存储器。  什么是错误、如何解决?

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

    很抱歉、我自己找到了答案。  示例文件 CLA_ASIN_cpu01.c 中出现错误 链接器 cmd 文件

    (2837xS_RAM_CLA_lnk_CPU1.cmd、2837xS_FLASH_CLA_lnk_CPU1.cmd)

    将 CLA 的程序 RAM 分配为 LS4和 LS5区域:

     RAMLS4_LS5  :origin = 0x00A000、length = 0x001000

    (在我的示例中、链接器实际上会将 代码放入 LS4中)

    CLA 初始化例程还必须同时连接 LS4和 LS5 (而不仅仅是 LS5!!!) 到 CLA 程序空间:

    //文件: cla_asin_cpu01.c

    //

    // cla_configClaMemory -配置 CLA 存储器段

    //

    空 CLA_configClaMemory (空)

    (笑声)

      MemCfgRegs.LSxMSEL.bit.MSEL_LS4 = 1;//示例文件中不存在

      MemCfgRegs.LSxMSEL.bit.MSEL_LS5 = 1;

      MemCfgRegs.LSxCLAPGM.bit.CLAPGM_LS4 = 1;//示例文件中不存在

      MemCfgRegs.LSxCLAPGM.bit.CLAPGM_LS5 = 1;

    因此 CLA 工作正常。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    给您带来的不便、我深表歉意。 在 C2000Ware 中 F2837xS 的最新器件支持包中对此进行了更正。

    此致
    Chris