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.

在CCS上用XDS560v2仿真器在线调试DM8127的DSP核

你好,

我买了一个Appro DM8127 的IPNC方案作参考和一个XDS560v2仿真器. 我有C6670和C6748的开发经验.

我的问题是如何在CCS里利用仿真器连接DM8127的DSP核进行单核调试? 我参照过以下链接, 可以唤醒DSP核(用evm816x.gel文件, evm814x.gel无法下载, 这两个文件在链接里有提到), 并可以运行一个简单的"hello world"例子(代码在L2SRAM).

processors.wiki.ti.com/.../Connecting_to_DSP_on_C6A8168,_DM8168,_DM8148

support.spectrumdigital.com/.../evm816x.gel

CCS工程的设置是TMSC6748. 但是当我加载另一个工程到DSP和的时候出现了错误, 该工程代码在DDR, 且可在C6748开发板上正常运行. 如果正常加载的话, DSP会定位在main函数然后待运行. 但是加载完那个C6748的工程到DSP的时候, DSP核已经在运行状态了了, 好像是要把所有的内存都置零, 现象是程序执行指针一直在增加而且把该地址的值置为零. 我已经把DDR段从0xC0000000改成0x80000000.

我们需要把代码放在DDR, L2SRAM用作cache. 所以我想知道有没有办法利用gel文件初始化DSP和DDR, 像C6670和C6748那样. C6748的工程没有访问任何外设, 是纯算法性质的工程.

我有C6670和C6748的开发调试经验, 但对于DM8127很陌生, 对于如何单独调试DSP核没有概念. 需要你们的帮助. 

谢谢. 

Karlphy. 

  • Karlphy,

    你是否有尝试在下载DSP代码前用CCS复位一下DSP?

  • Chris, 

    按照你说的方法已经可以正常运行了, 用的是evm816x.gel这个文件的脚本来bring up DSP核. 

    我是在demo的uboot 阶段按键停止了下一阶段的boot. 然后连上ARM核, 执行evm816x.gel文件的hotmenu C674x()的脚本来唤醒DSP核后再连接DSP核的. 

    但我在脚本上的hotmenu C674x()函数没看到其他初始化DDR或者其他外设的代码. 是否可以认为是arm在uboot 阶段已经把DDR初始化了? 而且用到的gel文件是816x的, 814x的没有提供下载链接, 请问这种操作方法是否正确或者有没有推荐的操作方法? 

    谢谢. 

    Karlphy. 

  • Karlphy Fong 说:

    但我在脚本上的hotmenu C674x()函数没看到其他初始化DDR或者其他外设的代码. 是否可以认为是arm在uboot 阶段已经把DDR初始化了?

    [Chris]是的。

    Karlphy Fong 说:

    但我在脚本上的hotmenu C674x()函数没看到其他初始化DDR或者其他外设的代码. 是否可以认为是arm在uboot 阶段已经把DDR初始化了? 而且用到的gel文件是816x的, 814x的没有提供下载链接, 请问这种操作方法是否正确或者有没有推荐的操作方法? 

    【Chris】CCS5.5里面就有DM8148_EVM.gel.
  • Chris, 

    已经找到DM8148_EVM.gel. 

    谢谢你的热心帮助, 万分感谢! 

    Karlphy. 

  • 你好,

    我目前正在学习DM8127的开发板。

    想对其中的DSP核进行裸调,不知是否需要先让A8的核先跑起来。

    我依据http://processors.wiki.ti.com/index.php/Connecting_to_DSP_on_C6A8168,_DM8168,_DM8148

    进行DM8148工程创建,未能启动。

    想了解下DSP下调试需要哪些步骤。

    谢谢


  • 能问下,你的 CCS版本吗?我用的CCS3.3来调 DM8148,好像找不到配置文件。