TI中文支持网
TI专业的中文技术问题搜集分享网站

MCSDK 2.1.2.6中的helloworld_evmc6657l无法用仿真器在中core1中dubug

各位工程师好:

目前裸跑的双核程序运行正常,由于需求想要加上SYS/BIOS,我们选择MCSDK 2.1.2.6中的helloworld_evmc6657l例子进行修改。测试时发现其在core0可以正常debug,但是在core1中无法找到main函数。目前函数入口地址配置在DDR3中:

我看有文献中说:

是不是这个例子只能在core0中运行

Nancy Wang:

先看一下Properties->Build->C6000 Compiler ->Basic Option有没有设置成Full symbolic debug。

我这边也在帮您测试看一下,是否只能再core0中运行。

Tao_LL:

回复 Nancy Wang:

Hi,Nancy Wang:工程中的设置是Full symbolic debug。我在e2e的英文论坛中找到了c6678的解决方案:
e2e.ti.com/…/858287
说的是需要修改NIMU,然后可以解决问题。但是我在c6657中修改后没有起作用。

Shine:

请到CCS工程属性->Debug->Device里选择c66xx_1 core1,再到Auto Run and Launch Options->Run to symbol看有没有填写main。

Tao_LL:

回复 Shine:

有填写main()

http://e2e.ti.com/support/processors/f/791/p/165415/858287中的解决方案可以参考吗

Shine:

回复 Tao_LL:

您试试下面wiki网站上的方案。
processors.wiki.ti.com/…/NDK,_PA_Resource_Wiki_for_Keystone_Devices

Nancy Wang:

回复 Tao_LL:

因为我目前只有tms320c6678的板子,所以我测试了一下helloworld_evmc6678l,我load到core1上也是正常能跳转到main函数的。

请问你core1部分的gel文件添加了吗?

你给我贴的英文贴跟你的问题好像不一致。

程序部分入口地址是可以找得到的吗?

Tao_LL:

回复 Nancy Wang:

core1的gel文件是有的:

程序入口地址可以找得到,我目前放在了DDR3中

Nancy Wang:

回复 Tao_LL:

请把程序load界面再贴出来看一下,谢谢。

Tao_LL:

回复 Nancy Wang:

这是我在core1中load工程的情况:

console没有报错(报错的是板子电源没插),但是程序没有停在main()函数。

这是运行在core0的情况:

可以看到停在了main()

Tao_LL:

回复 Nancy Wang:

我检查源代码里边的EVM_Init()函数有限制只能运行在core0上,注释掉这一段话就可以在core1上运行了,运行后console提示EMAC错误:

赞(0)
未经允许不得转载:TI中文支持网 » MCSDK 2.1.2.6中的helloworld_evmc6657l无法用仿真器在中core1中dubug
分享到: 更多 (0)