欢迎来到天天文库
浏览记录
ID:8912946
大小:24.50 KB
页数:11页
时间:2018-04-12
《dsp程序编写和调试的常见问题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、DSP仿真器为什么必须连接目标系统(Target)?DSP的仿真器同单片机的不同,仿真器中没有DSP,提供IEEE标准的JTAG口对DSP进行仿真调试,所以仿真器必须有仿真对象,及目标系统。目标系统就是你的产品,上面必须有DSP。仿真器提供JTAG同目标系统的DSP相接,通过DSP实现对整个目标系统的调试。仿真工作正常对于DSP的基本要求1)DSP电源和地连接正确。2)DSP时钟正确。3)DSP的控制信号RS和HOLD信号接高电平。4)C2000的watchdog关掉。5)不可屏蔽中断NMI上拉高电平。CCS或Emurst运行时提示“Can'tInitializeTarge
2、tDSP”1)仿真器连接是否正常?2)仿真器的I/O设置是否正确?3)XDSPP仿真器的电源是否正确?4)目标系统是否正确?5)仿真器是否正常?建议使用目标板测试。DSP的C语言同主机C语言的主要区别?1)DSP的C语言是标准的ANSIC,它不包括同外设联系的扩展部分,如键盘输入、屏幕显示等。但在CCS中,为了方便调试,可以将数据通过prinf命令虚拟输出到主机的屏幕上。2)DSP的C语言的编译过程为,C编译为ASM,再由ASM编译为OBJ。因此C和ASM的对应关系非常明确,非常便于人工优化。3)DSP的代码需要绝对定位;主机的C的代码有操作系统定位。4)DSP的C的效率较
3、高,非常适合于嵌入系统。Link的cmd文件的作用是什么?Link的cmd文件用于DSP代码的定位。由于DSP的编译器的编译结果是未定位的,DSP没有操作系统来定位执行代码,每个客户设计的DSP系统的配置也不尽相同,因此需要用户自己定义代码的安装位置。以C5000为例,基本格式为:-osample.out-msample.map-stack100sample.objmeminit.obj-lrts.libMEMORY{PAGE0:VECT:origin=0xff80,length0x80PAGE0:PROG:origin=0x2000,length0x400PAGE1:DA
4、TA:origin=0x800,length0x400}SECTIONS{.vectors:{}>PROGPAGE0.text:{}>PROGPAGE0.data:{}>PROGPAGE0.cinit:{}>PROGPAGE0.bss:{}>DATAPAGE1}如何将OUT文件转换为可以烧写ROM的文件格式?DSP的开发软件集成了一个程序,可以从执行文件OUT转换到编程器可以接受的格式,使得编程器可以用次文件烧写EPROM或Flash。对于C2000的程序为DSPHEX;对于C3x程序为HEX30;对于C54x程序为HEX500;对于C55x程序为HEX55;对于C6x程序
5、为Hex6x。以C32为例,基本格式为:sample.out-x-memwidth8-bootorg900000h-iostrb0h-strb003f0000h-strb101f0000h-osample.hexROMS{EPROM:org=0x900000,len=0x02000,romwidth=8}SECTIONS{.text:paddr=boot.data:paddr=boot}在CCS下,OUT文件加载时提示“Dataverificationfailed...”的原因?Link的CMD文件分配的地址同GEL或设置的有效地址空间不符。中断向量定位处或其它代码、数据段
6、定位处,没有RAM,无法加载OUT文件。解决方法:1)调整Link的CMD文件,使得定位段处有RAM。2)调整存储器设置,使得RAM区有效。TIDSP的C语言的特点,如何使我编写的C更高效?TIDSP的C语言是标准的ANSI的C,是一个专门优化的C。对于C3x/C5000/C6000的用户,C对于ASM的效率可以达近1:1。TI的DSP,每个系列有每个的特点。要编制高效的C程序,建议:1)根据DSP的特点,调整程序编写的流程,任务的分配。2)数据尽量放在片内。3)对于要求高的子程序,用人工优化或ASM编写。为什么要使用BIOS?1)BIOS是BasicI/OSystem的简
7、称,是基本的输入、输出管理。2)用于管理任务的调度,程序实时分析,中断管理,跟踪管理和实时数据交换。3)BIOS是基本的实时系统,使用BIOS可以方便地实现多任务、多进程的时间管理。4)BIOS是eXpressDSP的标准平台,要使用eXpressDSP技术,必须使用BIOS。如何从老的编译工具升级到CCS?1)在Project菜单下,创建project。2)将源文件(C和ASM文件),加入project中。3)将Link的CMD加入project中,并将CMD中的库文件设置去除。4)将include文件和库文件加
此文档下载收益归作者所有