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/EVMK2H:尝试在 DDR3段中放置堆。 BIOS 6.46、XDC 3.32。

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/627372/ccs-evmk2h-trying-to-place-heap-in-ddr3-section-bios-6-46-xdc-3-32

器件型号:EVMK2H

工具/软件:Code Composer Studio

使用编辑了 cfg 文件

BIOS.heapSize = 2097152;
BIOS.heapSection ="DDR3";
BIOS.heapTrackEnabled = true;

但是堆不会放置在 DDR3中。 因此大型分配失败。

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

    我已将您的疑问转发给软件专家。 他们的反馈应发布在此处。

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

    尝试以下操作 将堆配置为 DDR:

    var heapMemParams = new HeapMem.Params ();
    heapMemParams.size = 0x80000;
    heapMemParams.sectionName ="systemHeap";
    Program.global.heap0 = HeapMem.create (heapMemParams);
    Memory.defaultHeapInstance = Program.global.heap0;
    
    BIOS.heapSize = 2097152;
    BIOS.heapSection ="systemHeap";
    BIOS.heapTrackEnabled = true;
    
    Program.sectMap["systemHeap"] ="DDR3"; 

    希望这对您有所帮助。 请告诉我们这是否能解决您的问题。

    此致、

    Rahul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    实际上、除了 BIOS 规格导致错误之外、这种方法也起作用。 当我对这些内容进行评论时、一切都按预期工作:

    var heapMemParams = new HeapMem.Params();
    heapMemParams.size = 32*1024*1024;//0x80000;
    heapMemParams.sectionName ="systemHeap (系统堆)";
    program.global.heap0 = HeapMem.create (heapMemParams);
    Memory.defaultHeapInstance = Program.global.heap0;
    /BIOS.heapSize =32*1024*1024;
    //BIOS.heapSection ="systemHeap";
    //BIOS.heapTrackEnabled = true;
    Program.sectMap["systemHeap"] ="DDR3";

    谢谢、
    Bruce