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

【求助】DM368无法用仿真器调试

我们按开发板做的板子,启动后串口没有bootme输出,用ccs5.3连仿真器后,点击Test Connection测试能够通过,但Debug一个最简单的程序时也无法进行,每次执行到这里

ARM9: GEL Output:DM365EVM ARM Startup Sequence

ARM9: GEL Output: Disable IRQ/FIQ
ARM9: GEL Output: Flush Cache
ARM9: GEL Output: Disable MMU
ARM9: GEL Output: Setup Power Modules (All on)… ARM9: GEL Output: [Done]
ARM9: GEL Output: Setup PinMux…ARM9: GEL Output: [Done]
ARM9: GEL Output: Setup PLL0…ARM9: GEL Output: [Done]
ARM9: GEL Output: Setup PLL1…ARM9: GEL Output: [Done]
ARM9: GEL Output: Setup DDR2…ARM9: GEL Output: DDR2 init is done for 16-bit InterfaceARM9: GEL Output: [Done]
ARM9: GEL Output:Startup Complete.

ARM9: GEL Output: Disable VPSS
ARM9: GEL Output: Disable IRQ/FIQ
ARM9: GEL Output: Flush Cache
ARM9: GEL Output: Disable MMU
ARM9: GEL Output: Disable EDMA events
ARM9: GEL Output:ARM9: GEL Output:

就停了。程序指针也无法跳到main函数停住,查看内存、CPU寄存器都提示读取错误。

请问这是什么问题?

谢谢!

 

Chris Meng:

你好,

“启动后串口没有bootme输出”

请问你们的板子上的flash是否有烧写代码?如果有,能否擦除,并且配置为uart 启动,看串口是否有bootme输出?

请问你使用的是针对对DM36x的gel么?你可以参考DM365 EVM的gel,并且修改里面的DDR参数(根据你板子上使用的DDR)。你的代码也需要修改DDR配置。请参考论坛讨论:http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/t/69143.aspx

haikuo shen:

回复 Chris Meng:

您好,谢谢回复。

程序启动方式uart、flash、sd都配置过,串口都没有bootme输出。

我们用的是dm365 evm的gel,目前还没用到ddr,cmd文件配置的是所有程序段都在0-4000的内部ram中,用xds100v2仿真器的结果如下:

ARM9: GEL Output: Disable IRQ/FIQARM9: GEL Output: Flush CacheARM9: GEL Output: Disable MMUARM9: GEL Output: Setup Power Modules (All on)…ARM9: GEL Output: [Done]ARM9: GEL Output: Setup PinMux…ARM9: GEL Output: [Done]ARM9: GEL Output: Setup PLL0…ARM9: Trouble Writing Memory Block at 0x1c40928 on Page 0 of Length 0x4: (Error -2030 @ 0x6E6900) Internal error: Access to unknown or invalid register was requested. Restart the application. If error persists, please report the error. (Emulation package 5.1.641.0) ARM9: GEL: Error while executing OnTargetConnect(): Target failed to write 0x01C40928 at *(pll_postdiv)=0x8000 [QXDdm36x111.gel:497] at Setup_PLL1() [QXDdm36x111.gel:102] at OnTargetConnect() .ARM9: Error: Failed to get PRSC statusARM9: Unable to determine target status after 20 attemptsARM9: Failed to remove the debug state from the target before disconnecting.  There may still be breakpoint op-codes embedded in program memory.  It is recommended that you reset the emulator before you connect and reload your program before you continue debugging

如果不用gel文件也是到debug到中途就停了,还没进入程序调试阶段。

Eason Wang:

回复 haikuo shen:

gel文件里面还是会去配置并运行DDR的吧。你可以在gel里面加打印或者在什么地方停下来,具体看看是挂在gel里面的哪一步

haikuo shen:

回复 Eason Wang:

1. 用GEL时显示是配置PLL0时出错了,信息如下:

ARM9: GEL Output: Setup PLL0…ARM9: Trouble Writing Memory Block at 0x1c40928 on Page 0 of Length 0x4: (Error -2030 @ 0x6E6900) Internal error: Access to unknown or invalid register was requested. Restart the application. If error persists, please report the error. (Emulation package 5.1.641.0) ARM9: GEL: Error while executing OnTargetConnect(): Target failed to write 0x01C40928 at *(pll_postdiv)=0x8000 [QXDdm36x111.gel:497] at Setup_PLL1() [QXDdm36x111.gel:102] at OnTargetConnect() .ARM9: Error: Failed to get PRSC status

 

2. 我也试过不用GEL文件,也无法跳到程序调试界面。

请问有可能是硬件问题吗?

haikuo shen:

回复 haikuo shen:

并且必须要用DDR吗?是不是如果把测试程序下到内部ram中就不用ddr了?

Eason Wang:

回复 haikuo shen:

在使用DDR之前,DDR是需要做初始化的。所以不论你是否使用了DDR,只要对DDR有初始化的动作,那就有可能是在初始化DDR的过程中不成功。所以建议是按照我之前给的,去排查一下看看。

赞(0)
未经允许不得转载:TI中文支持网 » 【求助】DM368无法用仿真器调试
分享到: 更多 (0)