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.

TMS320C6713B: dsp6713外部RAM存放数据段和代码段生成的bin文件不一致

Part Number: TMS320C6713B

TI工程师:

          您好,我再使用贵司的6713芯片时遇到以下2个问题,烦请解答一下,谢谢!

1.由于工程代码过大,我使用了宏#pragma CODE_SECTION和#pragma DATA_SECTION将部分函数和全局变量放到外部RAM了,然后使用“${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin” “${BuildArtifactFileName}” “${BuildArtifactFileBaseName}.bin” “${CG_TOOL_ROOT}/bin/ofd2000” “${CG_TOOL_ROOT}/bin/hex2000” “${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin”,这种方式将.out转成了.bin文件,我发现一个奇怪的现象:用宏#pragma DATA_SECTION声明变量时,生成的bin文件不超过192k(内部ram共192k),用宏#pragma CODE_SECTION声明函数时,生成的bin文件非常大,查过1个G了,请问一下这个现象正常吗?

2.针对以上现象,我想了2种方法解决:

                          a.如果1项现象是正常的,只是因为内部ram和外部ram地址相差过大,所以生成的bin文件很大,我想是否可以手动将中间的无效数据(0x30000-0x80000000)删除掉,然后再分段将0x0~0x30000、0x80000000~0x80004000地址的数据分别烧到flash,运行时再搬运到指定位置。

                          b.不使用“${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin” “${BuildArtifactFileName}” “${BuildArtifactFileBaseName}.bin” “${CG_TOOL_ROOT}/bin/ofd2000” “${CG_TOOL_ROOT}/bin/hex2000” “${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin”生成bin,再转hex时我用了一下命令 使用hex6x.exe工具,但是再将生成的2个hex转bin时出现了问题,能否提供下hex转bin文件的方法。

请TI工程师解答一下。