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/TMS320F28379D:当 I#39;m 执行 CLA C 代码时、我遇到一些行为问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/588345/ccs-tms320f28379d-i-have-some-behavioral-issue-while-i-m-executing-cla-c-code

器件型号:TMS320F28379D
Thread 中讨论的其他器件:CCStudio

工具/软件:Code Composer Studio

早上好。

在 CPU1配置后使用 CLA1时、我注意到一些问题。 我在 F28379D 目标上使用 CCStudio 7与 TI v6.4.2编译器[TI v16.9.1.LTS 会产生大量#2638错误:对齐
大于元素大小]。
无论如何、我的简单测试代码遵循 TI sketch、但它仅设置 CLA 上的 Task1、以便轻松更改本地 CLA 变量。 编译步骤是可以的;也是调试步骤
正确改进。
当我启动 CPU1代码时、在我在调试窗口 CPU1/CLA1中连接之后、CPU1执行自己的代码、直到在 Cla1ForceTask1andWait()函数:CPU1状态下等待
在焦点通过 CLA1时处于运行模式、CLA1处于挂起模式、没有为0x0000A000定义符号[我知道是由分配给 CLA1的原始 LS4-LS5 RAM
2837xD_RAM_CLA_lnk_CPU1.cmd]。 最后、当我在 CLA1上加载符号时、它会在'a = 1'的第一个 C 结构中停止。

接下来是通过 MSTOP 实现一个结构的汇编代码。

Cla1Task1()、c:
0000a000:78400000 MMOVIZ MR0、#0x0
0000a002:78800001 MMOVXI MR0、#0x1
0000a004:74C08900 MMOV32 @0x8900、MR0
43_mdebugstop();
0000a006:7FA00000 MNOP
0000a008:7FA00000 MNOP
0000a00a:7FA00000 MNOP
0000a00c:7F600000 MDEBUGSTOP
0000a00e:7FA00000 MNOP
0000a010:7FA00000 MNOP
0000a012:7FA00000 MNOP
0000a014:7FA00000 MNOP
52}
0000a016:7FA00000 MNOP
0000a018:7FA00000 MNOP
0000a01a:7FA00000 MNOP
0000a01c:7F800000 MSTOP
27kft = 16384;// 1) E 2)调试 KF Fisso
OSC_TEST():
0000a01e:40008F00 MMPYF32 MR0、MR0、MR0 || MMOV32 @0x8f00、MR0

这些问题与以下事件有关:

1) 1)如果我执行一个单步执行、MPC 到达0x000a006、而蓝色箭头指向__mdebugstop()函数。 MR0寄存器将被改变为1、然后它将被改变
加载到为'A'变量分配的 CLA1数据 RAM 中的0x8900中。 如果我在"Variable"窗口和0x8900 RAM 位置中选中 MR0、'A'、则看不到任何正确的值[它
保留0值]。 但是、如果我在"Variable"窗口或"Memory"中手动更改值、则会正确更改值。 CLA 的存储器似乎存在一些问题
但也具有自己的 MR0寄存器[???];
2) 2)如果我继续执行两个步骤、则 MPC 会超限 MSTOP CLA 结构并达到0x000a01e 程序位置、该程序位置将分配给 CPU1代码[????]。

是否有人澄清这种行为? 非常感谢。

迭戈。

PS:抱歉、我的英语不好。