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/AM4378:TI RTOS:加速启动时间(无加载堆选项)

Guru**** 3003130 points

Other Parts Discussed in Thread: AM4378

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/921334/ccs-am4378-ti-rtos-speedup-boot-time-no-load-heap-option

器件型号:AM4378

工具/软件:Code Composer Studio

降级器、

我的客户希望加快启动时间、在调查过程中、我们发现堆段(在我们的软件堆大小= 128MB 中)需要相当长的时间才能初始化。  

我不确定是否需要初始化堆、我们使用 app.cfg 尝试了下一个解决方案:

var heap1Params = new HeapMem.Params;
heap1Params.size = 11*1024*1024;// 11MB
heap1Params.sectionName =".DefHeapSect";
heap1Params.instance.name ="DefHeapSect";
var heap1 = HeapMem.create (heap1Params);

Program.sectMap[".DefHeapSect"]= new Program.SectionSpec ();
Program.sectMap[".DefHeapSect"].loadSegment ="EXT_RAM";
Program.sectMap[".DefHeapSect"].type ="NoLoad";

Memory.defaultHeapInstance = heap1;
Task.common$.instanceHeap = heap1;
Task.defaultStackHeap = Program.global.internalHeap; 

这在调试器中工作正常、但我将 ELF 转换为 BIN 并运行它- TI SYS/BIOS 在创建任务时失败。

如果我要删除"Program.sectMap"行-它工作正常。

也许您知道为什么会出现这样的行为?

CPU:AM4378

电路板:定制电路板、具有 DDR3 1GB

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

    问题已解决。 在应用程序映像转换期间、需要将偏移量从0x8000000 (DDR3的开头、初始化的堆所在的位置)更改为0x80b00000 (11MB =堆大小偏移量)。