大家好:
本人刚开始接触davinci,在配置6467T内存时遇到一些参数不知道有什么作用,希望能得到指点/*
以下内容来自我正在开发的codec server包中的.tcf文件
platformSeg=bios.ddr2
/* MAR bits set in platform-specific *.tci file */
bios.GBL.ENABLEALLTRC = false;
bios.GBL.PROCID = 0;
bios.MEM.STACKSIZE = 0x1000;
bios.MEM.ARGSSIZE = 256;
bios.MSGQ.ENABLEMSGQ = true;
bios.POOL.ENABLEPOOL = true;
bios.setMemCodeSections (prog, platformSeg);
bios.setMemDataNoHeapSections (prog, platformSeg);
bios.setMemDataHeapSections (prog, platformSeg);
bios.MEM.BIOSOBJSEG = platformSeg;
bios.MEM.MALLOCSEG = platformSeg;
/* place .bios in IRAM to test loading of internal memory */
// bios.MEM.BIOSSEG = bios.IRAM;
bios.TSK.STACKSEG = platformSeg;
我的第一个问题是,上面标为红色的部分与蓝色部分有什么关系,
如果我设置bios.MEM.MALLOCSEG = DDRALGHEAP
bios.setMemDataHeapSections (prog, DDR2);
那么我使用malloc在DSP端分配内存时,会分配到DDRALGHEAP还是DDR2
换句话说,MALLOCSEG这个参数影响的是哪部分内存分配。
第二个问题,在文件/opt/dvsdk_3_10_00_19/cs2dm6467_1_00_00_10/packages/ti/sdo/server/cs/server.tcf
中也有相应的bios.MEM.MALLOCSEG等参数,但是在这个文件中,这些参数都被赋值为DDRALGHEAP而非DDR2
这两个文件之间有什么关系,第二个文件(server.tcf)的作用是什么?
最后一个问题,bios.enableMemoryHeaps(prog);这种表达式中的prog是什么,在很多配置文件中都能看到?
请各位高人不吝赐教,先谢过各位了~~
kooking:
楼主可以看一下这个:
http://processors.wiki.ti.com/index.php/Codec_Servers_FAQ
http://processors.wiki.ti.com/index.php/Changing_the_DVEVM_memory_map