您好。我手头有一套师兄做的板子,在cmd文件中之前都是把.text 放到 L2 RAM 或者 shared RAM里,程序都可以正常编译,正常调试。但是我想试试把.text放到 DDR2 SDRAM 里,也就是放到origin=0xC0000000 的这段地址空间里,程序可以编译,但是没有办法调试,resume一直是灰色的。是不是需要配置一下gel文件?
Shine:
如果要把代码load到DDR2的话,先要在gel文件里对DDR2进行初始化设置,可以参考C:\ti\ccsv7\ccs_base\emulation\boards里开发板的gel配置。
Zun Niu:
回复 Shine:
您好,谢谢回复。我对这个gel文件有一些不解。我目前用CCS5 在 target configuration 里面,并没有选择 任何 gel文件,但是只要不把代码load到DDR,都是可以正常运行的。processors.wiki.ti.com/…/GSG:Adding_GEL_files_to_a_target_configuration_v5 在这个链接里找到一段描述 :
Most of the target boards and devices have all the features pre-configured in CCSv5. However, in some cases a new board or a custom system may require modifying or adding a configuration script (GEL file) to perform proper initialization of the device.
所以我想请问,CCSv5 之后的版本 是否相当于 已经集成了默认的gel文件?如果我要扩展功能还需要添加新的gel文件?如果我添加新的gel文件会不会对于CCS5 默认的 初始化配置产生矛盾?谢谢。
Nancy Wang:
回复 Zun Niu:
gel文件里面就是一些初始化的函数,具体可以查看代码.对一些外设的初始化也可以放在自己的code里,但如果您想直接将程序load到ddr里面的话就必须通过gel文件来帮您先初始化DDR.
Zun Niu:
回复 Nancy Wang:
您好 谢谢回复。我想请问一下,CCS5以后的版本 中不需要添加gel 也能跑程序,那这时候 对外设的初始化是谁完成的?又是怎么初始化的?
Zun Niu:
回复 Nancy Wang:
明白了。我发现师兄的代码里有她自己写的初始化函数。所以没有用gel文件。但是现在我想把.text放到 DDR里面,那就不可能说用程序来初始化,所以必须用gel文件来进行一次配置。gel初始化配置完成后,程序运行起来自己代码里的初始化函数又会重新对DSP进行一次配置,覆盖之前的配置,这样也不存在gel文件和初始化函数冲突的问题。这样理解对吧?
Nancy Wang:
回复 Zun Niu:
是的.
Zun Niu:
回复 Nancy Wang:
请问怎样才能确定DDR配置成功呢?
user5338487:
回复 Zun Niu:
你可以使用XDC提供的可视化方式配置.text段到DDR,在Program下Section中手动添加设置即可