大家好,我在CCS下开发了一个6446平台的算法,算法比较大,然后我将其放到DVSDK中,可以编译并正常运行,但是再次对算法代码进行了补充,大概又添加了1/3行代码,算法变得更加庞大,编译后报错如下:

板子硬件上的内存是够的,因为我在CCS环境下编译同样的算法,可以下载到板子上运行。所以应该是DVSDK中的配置有问题。请问如何解决??
谢谢各位。
另外,我的DVSDK的server端中的all_evmDM6446.tci文件内容为
var mem_ext = [
{
comment: "DDRALGHEAP: off-chip memory for dynamic algmem allocation",
name: "DDRALGHEAP",
base: 0x88000000, // 128MB
len: 0X07A00000, // 122MB//0X07A00000
space: "code/data"
},
{
comment: "DDR2: off-chip memory for application code and data",
name: "DDR2",
base: 0X8FA00000, // 250MB//0X8FA00000
len: 0X00400000, // 4MB//0X00400000//26MB
space: "code/data"
},
{
comment: "DSPLINK: off-chip memory reserved for DSPLINK code and data",
name: "DSPLINKMEM",
base: 0x8FE00000, // 254MB
len: 0x00100000, // 1MB
space: "code/data"
},
{
comment: "RESET_VECTOR: off-chip memory for the reset vector table",
name: "RESET_VECTOR",
base: 0x8FF00000, // 255MB
len: 0x00000080, // 128 B
space: "code/data"
}
];
Amob:
把DDR2分大点,然后再cfg里再统一一下即可
Chris Meng:
你好,
在CCS下运行使用的cmd文件是哪个?是和你出错时候的一样么?如果不一样,请注意,在CCS下你一般是没有运行ARM的,你是没有分配给Linux空间的。
错误提示写明的哪些段的内存不够了,你先要分析你的算法+Linux空间是否小于你的内存。如果是,调整dsplink里面的memory分配。
Amob:
回复 Chris Meng:
你好,我算法功能验证成功以后就脱离CCS了,现在是完全在dvsdk下编译,他的算法过大,整个DSP/BIOS是运行在DDR里,类似跳舞的场地不够大了,应该把DDR段分配大点,可以从cmem里分出来,应该就可以解决。
TI中文支持网

