DSP得软件开发流程为:将一个或多个汇编语言程序(源程序)经过汇 编与链接 ,生成COFF 格式得可执行文件,再通过软件仿真器或在线仿真器得调试,打开FlashBurn软件,新建一个cdd文件并进行设置装载FBTCout,然后再擦除和烧写Flash 去掉仿真器并复位DSP目标板来加载。
bootloader是dsp芯片上固化的一段引导程序,dsp程序在ram上掉电易丢,所以启动时运行bootloader将辅存中的程序调入ram中
至于dsp的框架结构在ti公司有(有点复杂),开发时通常是先在开发板上仿真然后实践,由于dsp一般用于数字信号处理,离不开matlab软件连调。说起来有点复杂,要熟悉dsp开发流程序最简单的方法就是自己动手实践一下,如做个滤波器,频谱分析器等就可以深刻了解了。
ps有点繁琐,自己慢慢体会!
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)避免循环内部的乘除运算:循环内部的乘除运算尽量移到循环外部以及用加法替代。
跳转指令用于实现程序流程的跳转,在 ARM (同样在TI C66x DSP)程序中有两种方法可以实现程序流程的跳转:
—使用专门的跳转指令(如B指令)。
—直接向程序计数器 PC写入跳转地址值。
通过向程序计数器 PC写入跳转地址值,可以实现在 4GB的地址空间中的任意跳转,在跳转之前结合使用MOV LR,PC等类似指令,可以保存将来的返回地址值,从而实现在 4GB连续的线性地址空间的子程序调用。
ARM指令集中的跳转指令可以完成从当前指令向前或向后的 32MB的地址空间的跳转,包括以下4条指令:
— B 跳转指令(TI C66x DSP指令集也有该指令)
B 指令的格式为:
B 目标地址; //程序跳转到目标地址处执行
B Label //程序无条件跳转到标号Label处执行
dsp28335中存在两个程序时运行方法:用两个中断,分别是PWM1中断(3,1)和QEP1中断(5,1),其中PWM1中断的优先级要比QEP1中断优先级高,且PWM1中断为不可被抢占中断,QEP1中断为可被抢占中断。
dsp28335属于TI公司的DSP C2000系列产品。
dsp28335主要是用于电气控制领域,和工业产品,比如变频器控制、伺服控制等,也可以当作普通MCU使用。
以上就是关于怎样生成可执行的DSP文件,怎样进行DSP程序的加载全部的内容,包括:怎样生成可执行的DSP文件,怎样进行DSP程序的加载、DSP的开发流程是、dsp 用什么编程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)