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.

c6670如何映射系统自带text和data段

Other Parts Discussed in Thread: SYSBIOS

hi,

目前在6670上考虑将系统产生的text段和data段都放到MSMCSRAM,自己设计的物理层部分放在L2SRAM。

请问如何将类似于:

0080dcc0 00000920 ipc.lib : Ipc.obj (.text:ti_sdo_ipc_transports_TransportShm_Instance_init__F)
0080e5e0 000008a0 : Ipc.obj (.text:ti_sdo_ipc_ListMP_Instance_init__F)
0080ee80 00000860 : Ipc.obj (.text:ti_sdo_ipc_GateMP_Instance_finalize__F)
0080f6e0 00000840 : Ipc.obj (.text:MessageQ_put)

00820b80 00000220 sysbios.lib : BIOS.obj (.text:ti_sysbios_family_c64p_Hwi_reconfig__E)
00820da0 00000220 : BIOS.obj (.text:ti_sysbios_knl_Swi_run__I)
00820fc0 00000220 : BIOS.obj (.text:ti_sysbios_knl_Task_schedule__I)
008211e0 00000220 : BIOS.obj (.text:ti_sysbios_knl_Task_startup__E)

00829e60 00000100 ti.targets.rts6000.ae66 : Core-mem.oe66 (.text:xdc_runtime_Core_deleteObject__I)
00829f60 00000100 : Startup.oe66 (.text:xdc_runtime_Startup_exec__F)
0082a060 00000100 : Text.oe66 (.text:xdc_runtime_Text_putMod__F)
0082a160 00000100 : Text.oe66 (.text:xdc_runtime_Text_visitRope2__I)

这样的系统text段一次性allocate到MSMCSRAM?而不需要我手动#pragma CODE_SECTION(xx, ".text:xx");一个一个将不同的字段指向MSMCSRAM(.text:xx>> MSMCSRAM)?

此外,有没有类似快捷的方式allocate我自己生成的lib文件?

谢谢。

  • 参考附件page207 7.5.4.5节所述方式将lib中的text 放在指定section。

    Spru186assembly language7.4.pdf
  • hi Andy Yin,

    参照手册已经可以基本实现.text和.data段的指定,我是在fftc_simple_testproject里进行的修改和测试。但是仍然遇到两个问题请教一下:

    1.在指定.data段的时候,按照下面的配置可以正常工作,但是打开第一行的注释程序就无法正确运行了,停在了ipc_start函数里。请问可能是什么原因引起的?

    .data: load >> MSMCSRAM
    {
    // -l"C:\ti\pdk_C6670_1_1_2_6\packages\ti\drv\exampleProjects\FFTC_Simple_testProject\Debug\configPkg\package\cfg\fftc_test_pe66.oe66"(.fardata)
    -l"C:\ti\pdk_C6670_1_1_2_6\packages\ti\drv\cppi\lib\ti.drv.cppi.ae66"(.fardata)
    -l"C:\ti\pdk_C6670_1_1_2_6\packages\ti\drv\qmss\lib\ti.drv.qmss.ae66"(.fardata)

    test_main.obj(.fardata)

    }

    2.如果在cfg文件里添加指定systemHeap到MSMCSRAM,运行会报如下错误,但是我在tcp3d工程里测试时却没有错误,请问可能是什么原因引起的?

    Invalid result length, expected: 16416 received: 0
    [Core 0]: Error parsing result, error: -6
    ti.sysbios.heaps.HeapMem: line 329: assertion failure: A_invalidFree: Invalid free
    xdc.runtime.Error.raise: terminating execution

    谢谢!