本人的DSP程序有个61MByte的参数文件(程序执行的初始化参数),建立c66 CCS仿真工程时是从电脑硬盘读入程序的,可以运行。
现在需要脱离电脑读取,要移植到DSP上。
因知识有限采取的方案是,61MBytes参数写到一个.h文件的数组中,但是导致.h文件大小达到200MBytes,这个文件实在有些大,CCS编译不过。
请问大家有没有其他办法?将61MBytes的数据文件在DSP程序初始化时读取。Thank you.
foreverstrong cheng:
61MBytes写到.h文件数组中,达到了272MBytes,有没有其他方案,可以在程序执行时读取文件。
foreverstrong cheng:
回复 foreverstrong cheng:
CCS编译必然也出现问题:fatal error #4: out of memory
Compilation terminated.
请问有没有其他方案执行。
Steven Liu1:
回复 foreverstrong cheng:
你用的DSP是C6000的还是多核的?这个版块是ARM的,Sitara。
如果是C6000的,可以移步:http://www.deyisupport.com/question_answer/dsp_arm/c6000_dsp/f/32.aspx
Tony Tang:
foreverstrong cheng61MBytes参数写到一个.h文件的数组中,但是导致.h文件大小达到200MBytes,
61MByte参数写到.h数组,为什么就变成200多Mbyte了?
我在工程里加入如下大数组,编译没问题啊。
float arrary[0xf000000]=0;
foreverstrong cheng:
回复 Tony Tang:
非常感谢您的回复。
您这种形式是可以编译通过的,但是将61MBytes的浮点数(16175389个)写成文本形式,如下图所示,这个头文件将达到270MBytes
Tony Tang:
回复 foreverstrong cheng:
根据下面贴子同样情况的结论,是compiler把PC的内存给耗没了。
http://e2e.ti.com/support/development_tools/compiler/f/343/t/383084