发 帖  
原厂入驻New
[问答] TMS320C6416带bios的程序运行时,连接不上仿真器怎么回事
5 天前  40 tms320c6416 GPIO
分享
您好,
  我正在使用TMS320C6416这款芯片,我目前的程序用的是dspbios 5.31操作系统,开发调试软件是ccs 3.3 。
开发环境与软件功能:
  程序用到了2个GPIO口用来点灯,1个GPIO用来做中断接收数据,此外还用到了3组mcbsp接口以及emIF。tcf文件中配置了两个任务,一个是点灯,一个用作串口调试。
问题现象:
  1. 该程序通过仿真器在线运行在板卡上时一切正常,中途disconnect了之后也能再连接上。 但是一旦我将程序烧写到flash中,上电后6416依然能正常运行,串口和闪灯也和在线运行时一样,可此时JTAG再也无法connect上了,除非我再擦除flash,dsp无法启动后才能再度connect;
  2. 我将该程序tcf文件中的任务,中断全部取消掉,再烧写到flash里,上电后依然无法成功连接JTAG;
  3. 连接不上JTAG时,测量TCK,TDI,TDO,TMS等信号,和成功连接时对比均正常。TDI/TDO有信号波动。
  4. 我制作了使用相同接口,带有相同功能的不使用BIOS的软件版本,此时烧写到flash中,上电启动后能正常连上JTAG;
  想请教一下为什么使用了BIOS就连不上JTAG? 信号也没有被拉死啊。相比裸驱版本BIOS多做了些什么吗? 还望得到贵司的帮助,谢谢!

Best Regards,
Anqi
0
5 天前   评论 分享淘帖
10 个讨论
请问报错信息是什么?
vuywsdfwf 发表于 2020-5-22 14:28
请问报错信息是什么?

Shine您好,
  jtag连接时,报错信息如图,麻烦帮忙分析下,谢谢!
光摄微针 发表于 2020-5-22 14:42
Shine您好,
  jtag连接时,报错信息如图,麻烦帮忙分析下,谢谢!

请查看一下供电电源的纹波是否在手册范围内,输入时钟是否正确?reset信号是否足够长(从电源和CLKIN稳定后开始)?
您好,
  我们测量过6416的电压纹波和clk均在spec范围内,reset信号大概拉了200ms。 而且上电后我们的业务软件运行无碍,一切接口均运行正常,看起来没啥毛病,就是jtag连不上。。。

Best Regards,
Anqi
光摄微针 发表于 2020-5-22 15:03
您好,
  我们测量过6416的电压纹波和clk均在spec范围内,reset信号大概拉了200ms。 而且上电后我们的业务软件运行无碍,一切接口均运行正常,看起来没啥毛病,就是jtag连不上。。。

降低TCLK时钟频率试试                                                                          http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal
lifei639156 发表于 2020-5-22 15:21
降低TCLK时钟频率试试                                                                          http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal

您好,
  试过把JTAG时钟频率从10mhz降低到10khz,还是报同样的错。
  谢谢您的建议!

Best Regards,
Anqi
光摄微针 发表于 2020-5-22 15:40
您好,
  试过把JTAG时钟频率从10mhz降低到10khz,还是报同样的错。
  谢谢您的建议!

你用的C6416是什么版本的?
在errata中有关于1.1版本之前的RTA问题说明。


                                                                         http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal
lifei639156 发表于 2020-5-22 15:57
你用的C6416是什么版本的?
在errata中有关于1.1版本之前的RTA问题说明。

Hi Tony,
  我的6416芯片是2.0版本的, 0x01b00200处的silicon revision register的值为0x00126416,即DEV_REV[20:16]为0x10010,对应2.0版本的cpu

Best Regards,
Anqi
光摄微针 发表于 2020-5-22 16:15
Hi Tony,
  我的6416芯片是2.0版本的, 0x01b00200处的silicon revision register的值为0x00126416,即DEV_REV[20:16]为0x10010,对应2.0版本的cpu

不过你还是可以试试在BIOS的配置里将HSRTDX功能去掉,看结果如何                                                                          http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal
lifei639156 发表于 2020-5-22 16:32
不过你还是可以试试在BIOS的配置里将HSRTDX功能去掉,看结果如何                                                                          http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal

Hi Tony,
  您好,试了您说的方法,我把RTDX功能disable掉之后,我的板子就能连上JTAG了。看起来是BIOS的实时数据交互占用了JTAG的数据线。
  非常感谢您的分析!

Best Regards,
Anqi

只有小组成员才能发言,加入小组>>

1195个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表