完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
本人总结了关于ti DSP的boot原理,格式,以及参考代码供大家参考。不足之处,敬请指正。
2014.12.8: 更新:改成CCSV5.5工程,内容稍做修改与简化。 http://processors.wiki.ti.com/index.php/Main_Page Think Over Before Asking. http://www.catb.org/~esr/faqs/smart-questions.html#goal |
|
相关推荐
100个回答
|
|
这个应该加精. :)
|
|
|
|
Tony您好,我看了这个Boot_DSP_on_SOC_V0.1,我尝试在仿真器上首先执行arm程序,然后loaddsp到RAM上,随后使用唤醒操作dsp,但是,发现唤醒后,dsp并没有执行(led没有变化), 为验证程序争取与否,我尝试单独用仿真器加载这个dsp文件测试可以正常工作,如点亮led.这是为什么呢? |
|
|
|
zhao25 发表于 2018-6-21 05:20 我用的是Logic L138 板子。 |
|
|
|
可以先把DSP RESET 一下 在 //Wake up the DSP前面加上 CSL_FINST(psc0Regs->MDCTL[CSL_PSC_DSP], PSC_MDCTL_LRST, ASSERT); while(CSL_FEXT(psc0Regs->PTSTAT, PSC_PTSTAT_GOSTAT1)==CSL_PSC_PTSTAT_GOSTAT1_IN_TRANSITION); |
|
|
|
Tony您好:
我看了您写的 Boot_DSP_on_SOC_V0.1,所以想尝试一个在用CCS跑一下您的ARM程序(OMAPL138_ARMbootDSPCoffOMAPL138DemoInterrupt),但打开后发现没有.pjt文件(可能是我知道的太少了),所以就用OMAPL138DemoInterrupt中的代码自己建了一个工程,同时又手动添加了rts67plus.lib,编译链接时出现了下面的错误。 error: library 'C:CCStudio_v3.3C6000cgtoolslibrts67plus.lib', member'boot.obj' is of unknown type。这个错误怎么办呀。呵呵 |
|
|
|
sczclever 发表于 2018-6-21 05:56 这是CCS4的工程。 http://processors.wiki.ti.com/index.php/Main_Page Think Over Before Asking. http://www.catb.org/~esr/faqs/smart-questions.html#goal |
|
|
|
lifei639156 发表于 2018-6-21 06:02 您好Tony: omap-l138 ARM端程序应该加载哪个RTS库,是rts32arm9.lib?我加载之后出现了下面的错误: undefined first referenced symbol in file --------- ---------------- pinit C:CCStudio_v3.3tms470cgtoolslibrts32arm9.lib cinit C:CCStudio_v3.3tms470cgtoolslibrts32arm9.lib >> error: symbol referencing errors - './Debug/omap-l138_int.out' not built |
|
|
|
sczclever 发表于 2018-6-21 06:14 1. 请问是用的CCS4还是CCS3.3? 2. 请问是哪个工程? http://processors.wiki.ti.com/index.php/Main_Page Think Over Before Asking. http://www.catb.org/~esr/faqs/smart-questions.html#goal |
|
|
|
lifei639156 发表于 2018-6-21 06:21 hi,Tony Boot_DSP_on_SOC_V0.1.zip 很好,很强大,OMAPL138DemoInterrupt 是用CC5开发的,我用ccs4无法使用,可以通过某些设置后直接在CCS4 上使用吗?后来我新建了一个CCS4默认的hello的工程,并加入OMAPL138DemoInterrupt中的src,在仿真的时候跑到_call_swi(327680);就死在那里了,而且无法在handler.asm 中设置断点,设置后显示是灰色,并且有个"!".我想问一下是有什么设置没有设置好吗?如果是,怎么样进行设置,谢谢! |
|
|
|
caoguiqun 发表于 2018-6-21 06:38 viky zhong,请问你的上述问题解决了吗?我在官方的开发板上跑ARM程序是可以的,也能够进中断,但是在自己做的板子上遇见跟你一样的问题,不知道能否帮忙解答一下,谢谢 |
|
|
|
wmc55555 发表于 2018-6-21 06:47 hi,xiaobin,在工程属性的ccs build中,把output fomat 改成legacy COFF 即可解决问题 |
|
|
|
你好:我用的是ccs4.2,我按照上面的工程,在CCS4.2中测试了arm加载dsp,但是dsp没有启动 (1)当我不屏蔽掉switch_to_privileged_mode();,的时候程序打印出 cannot open the file,当我屏蔽掉switch_to_privileged_mode();程序可以执行完毕,但是dsp没有启动。我认为switch_to_privileged_mode();不应该被屏蔽掉,但是为什么,有了这个语句之后会打不开dsp的文件呢 (2)另外,那位有ccs4.2的类似程序,能给我参考一下,邮箱 ytuxiaobin@163.com |
|
|
|
wmc55555 发表于 2018-6-21 07:06 关于上面的问题,我找到原因了,switch_to_privileged_mode();会对file的指针造成影响,另外现在arm能够加载dsp,而且dsp也能够运行,但是要求的前提是uboot没有加载,这个比较麻烦,大家有遇见这个情况吗? |
|
|
|
zhao25 发表于 2018-6-21 05:20 winteliang您好,我也出现了这样的问题,但是我不知道添加 楼下说的reset DSP,麻烦你和我说说,谢谢 |
|
|
|
tony,您好,我运行Boot_DSP_on_SOC_V0.1.zip里的程序,烧写 .bin(ubl_spi.out和一个点亮LED的程序用AIS工具生成的的),我断电后LED并没有点亮,单独运行时LED能点亮,请问我的问题出在哪了? 楼上有位仁兄说reset DSP,可我没有找到唤醒DSP的程序,麻烦指点下我,唤醒DSP的程序在哪,谢谢。。。
|
|
|
|
richips 发表于 2018-6-21 07:51 这个demo是讲如何通过ROM bootloader一次性加载ARM和DSP的代码,要将ARM与DSP的.out文件通过Aisgen.exe合成一个文件进行烧写,而不是分开烧写,分开烧写的话你可以参考另一个demo,ARM如何加载DSP代码。 请看一下附带的说明文档。 http://processors.wiki.ti.com/index.php/Main_Page Think Over Before Asking. http://www.catb.org/~esr/faqs/smart-questions.html#goal |
|
|
|
lifei639156 发表于 2018-6-21 07:57 Tony Tang: ”一次性加载ARM和DSP的代码,要将ARM与DSP的.out文件通过Aisgen.exe合成一个文件进行烧写“ (1)这应该理解为烧写只烧写UBL,而UBOOT不是必须的? (2)dsp的程序大小是否收到限制? |
|
|
|
wmc55555 发表于 2018-6-21 08:15 1. 用Linux自然要UBOOT,从芯片的角度,只负责将用户代码加载运行起来,后面的过程则由用户实现了。 2. 没有。 http://processors.wiki.ti.com/index.php/Main_Page Think Over Before Asking. http://www.catb.org/~esr/faqs/smart-questions.html#goal |
|
|
|
lifei639156 发表于 2018-6-21 08:28 tony tang: 你好,我看了你的那个“分开加载dsp和arm”这个程序我能够在仿真环境下修改以适合我购买的合纵达开发板,实验的结果是能够在仿真环境下实现ARM对DSP的唤醒,dsp也能够正确运行。 另外我也看了你的“一次性加载ARM和DSP的代码”,这个代码中dsp的程序是用bios下的,我对bios不熟悉,所以修改了你给出的OMAPL138_INT_DSP这个程序,代码的执行设定了在了与ARM不重合的shared RAM中,然后用AISGEN将arm的OUT文件与其相连合成一个,但是烧写的结果是ARM的程序可以运行,而dsp的程序没有运行,试着修改了多次,仍然没有成功,所以有几个问题想请教一下: (1)ARM与dsp一起烧写是否要求dsp的程序要是dsp bios的? (2)我使用的nand write烧写程序,是由合纵达提供,烧写的nand flash,他是将程序烧写到了nand flash第一个block,这里的位置是否有问题? (3)我看了你的dsp bios的那个程序(文件夹 dsp),里面的程序的入口地址是0x11800000,ARM程序的入口地址是0x8000412c,这两个程序的在两个不同的ram中,这里我不大理解,arm的RBL能够把烧写的程序加载到两个不同的RAM中吗?关于这方面的文档资料有哪些?能否给个链接? (4)烧写的时候对nand write的烧写方式有什么特殊要求吗? (5)关于我以上的调试过程,你能否给几个调试的建议 谢谢 |
|
|
|
只有小组成员才能发言,加入小组>>
509 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
380 浏览 1 评论
939 浏览 0 评论
TMS320F28377D:新做了以377d为芯片的板子,上电后芯片复位引脚出现方波请问如何解决?
2111 浏览 0 评论
TPS55340通电后输入端保险丝烧断,芯片输入和GND之间短路
3857 浏览 4 评论
21浏览 3评论
CC3100BOOST使用CC3200lunchXL进行烧录
887浏览 2评论
129浏览 2评论
166浏览 2评论
144浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-20 06:33 , Processed in 0.951405 second(s), Total 80, Slave 75 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号