1、如果是跑sysbios的情况下,要注意每个核程序空间是在运行在哪个区域,空间区域冲突了,肯定是跑不起来的,也就是要关注的的platform。
2、在连接上DSP6678时是否有加载*.gel文件;
3、问题中提到的“不能正常运行”究竟是什么状态,是功能不正常还是DEBUG状态不正常,功能不正常就需要调试功能,状态不正常,就是一debug状态就是running,这样的话要看工程设置。
CCS
CCS有两种工作模式:
1、软件仿真器模式:可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。
2、硬件在线编程模式:可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。
CCS的开发系统主要由以下组件构成:
① TMS320C54x集成代码产生工具;
② CCS集成开发环境;
③ DSP/BIOS实时内核插件及其应用程序接口API;
④ 实时数据交换的RTDX插件以及相应的程序接口API;
⑤ 由TI公司以外的第三方提供的各种应用模块插件。
扩展资料
dsp编程中双重循环、多重循环的优化:
(1)多重循环拆成单层循环,减少循环层数;
例如,双重循环内一个cycle只使用了一个乘法器,拆成单层循环后,一个cycle可使用2个乘法器,充分利用DSP乘法器资源,同时运算速度也会加快;
(2)循环次数少的放在外层循环,循环次数多的放在内存循环;
(3)二维数组的二重循环:二维数组的行循环放在外层循环,列循环放在内层循环;
(4)避免循环内部的乘除运算:循环内部的乘除运算尽量移到循环外部以及用加法替代。
#1. 我觉得你可能有些理解上的偏差,DSP程序放在flash里面,而且还是AIS格式的,是跑不了的。#2. DSP程序是CCS编译的,cmd里的链接地址应该是L2或者DDR上吧,那么DSP程序是要加上相应的地址上才能运行的。
方法:
#1. 如果想通过Linux启动DSP,可以用DSPLINK或才SYSLINK。只做加载与启动,DSP可以不跑DSPBIOS或者SYSBIOS。
#2. Linux的启动用了UBL吗?还是只用了UBOOT?
#2.1如果只用UBL,可以将DSP.out与UBL.out合成一个AIS,这样ARM启动时就可以一直加载DSP程序,在你想要运行DSP时,将DSP入口地址写到HOST1CFG寄存器,并将DSP local reset释放即可。
#2.2 如果只用UBOOT启动,同样将DSP.out与Uboot合成一个AIS,方法一样。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)