TMS320LF240 x的系统开发.ppt_第1页
TMS320LF240 x的系统开发.ppt_第2页
TMS320LF240 x的系统开发.ppt_第3页
TMS320LF240 x的系统开发.ppt_第4页
TMS320LF240 x的系统开发.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第13章TMS320LF240 x的系统开发,13.1系统开发过程,DSP系统开发过程:,(1)明确开发任务,确定技术指标采样速度、精度、存储量、控制信号形式、实时性要求(2)总体方案系统组成、算法设计、核心元件选择、软硬件分工(3)硬件实现硬件需求分析、元件选择、原理图设计、PCB图设计、硬件调试(4)软件实现需求分析、算法仿真、编码、软件调试(5)系统集成和测试软硬件联合调试、系统测试,硬件实现:,元件选取:,(1)处理器控制器:单片机、DSP、ARM等。考虑公司、产品系列、工作频率、工作电压、工作温度等;(2)A/D:采样频率、精度。考虑片上是否自带采样保持器、多路器、参考电源等;(3)D/A:信号频率、精度。考虑是否有片上基准电源、多路器、输出运放等;(4)存储器:包括SRAM、EPROM、SDRAM、FIFO等。考虑工作频率、存储容量、字长、接口方式、工作电压等;(5)逻辑控制:CPLD、FPGA。考虑公司、产品系列、片内资源、I/O资源、工作速度;,(6)通信接口:根据速率和距离决定采用何种通信方式,并进一步选择通信接口芯片;(7)总线接口:PCI、CPCI、CAN、VXI、PXI等。考虑使用的场合、数传速率(总线宽度、频率高低、同步方式等)进行选择;(8)信号调理:运算放大器、比较器、多路器等。考虑带宽、输入信号范围、输出信号范围、响应速度(信号建立时间)等;,(9)人机接口:键盘、LED、数码管、液晶屏等;(10)电源:电压的高低和电流容量的大小。电压高低要匹配,电流容量要足够。,原理图设计中关键部分要进行仿真:软件仿真、硬件仿真。,PCB图设计要综合考虑设备结构特点和数模混合电路布线工艺。(Protell99SE电子逻辑分析和仿真),硬件调试主要进行硬件基本功能调试,确定可以满足功能和技术指标要求。,(1)软件需求分析(2)算法仿真:利用高级语言(3)编码:可读性(4)软件调试、测试:代码效率、执行效率,软件实现:,系统集成与系统测试:,软硬件联合调试,调整时序关系,完成系统实现。按照系统功能指标要求进行系统测试和各种环境实验。,13.2DSP系统的仿真调试工具,(1)标准评估模块(EVM)(2)DSP入门套件(DSK)(3)硬件仿真器(Emulator/XDS)(4)软件仿真器(Simulator)(5)DSP软件开发平台(CCCCS),13.2.1标准评估模块,标准评估模块(EVM,EvaluationModule)是TI或TI的第三方为TMS320DSP的使用者设计和生产的的一种评估平台,它的运行环境和资源较为完善,可用于某型号DSP的器件评估、程序调试与检查以及系统的调试。,EVM提供了一套完整的DSP系统,包括A/D、D/A、外部程序数据存储器、外部I/O等,用户可以使用EVM来进行DSP的实验、编写和运行实时的源代码,对代码进行评估,且可用来调试用户自己的系统。,此TMS320LF2407EVM板的性能指标如下:,TMS320LF2407运行速度30MIPS128K存储空间:64K程序存储器和64K数据存储器4路的DAC7625数模转换UART接口,符合RS232标准32K片上FLASHCAN总线标准接口用户开关和测试指示灯数据、地址、I/O、控制扩展接口,具有IEEE1149.1兼容的逻辑扫描电路,该电路用于测试和仿真+5V电源输入,内部3.3V电源管理,13.2.2DSK入门套件,DSP入门套件(DSK,DSPStarterKit)是TI公司为TMS320DSP的初学者设计和生产的一种评价DSP平台的廉价开发工具板。在PC机环境下,用户可以使用DSK来做系统实验和应用,进行诸如自动控制系统、语音处理等应用;也可以编写和运行实时的代码;还可以用来建立和调试用户自己的系统。,DSK套件包括一块TMS320DSP芯片为基础的电路板、配套的电源和电缆、专用的C编译器、汇编器链接器以及相应的调试软件和文档。,DSK电路板上除了DSP之外,一般还带有一定的存储器,并配有通信接口(并口或串口,用来和PC机通信)、电源插口、模拟信号I/O接口、扬声器接口等,可以很容易地实现一个简单的控制系统或语音系统,为初学者学习DSP开发提供了一个良好的平台。,13.2.3DSP硬件仿真器,TI公司推出,也称开发系统(XDS,eXtendedDevelopmentSystem),是基于边界扫描(BoundaryScan)的在线系统仿真技术。,它用于系统集成阶段的原理样机软硬件联合调试。扫描式仿真是一种独特的、非插入式的系统仿真与系统调试方法,程序可以从片外或片内的目标存储器实时执行,在任何时钟速度下都不会引入额外的等待状态。,硬件仿真器的主机是PC或工作站。,主机通过仿真器与目标系统的JTAG接口相连,控制目标板上的DSP器件。,目标板上的DSP本身带有仿真功能,硬件仿真器本身只是一个控制器,它通过DSP芯片内部的串行扫描路径对处理器进行控制,完成实时测试和调试。,仿真器与目标系统的接口是利用一个标准的14针接口(JTAG接口)来实现的(JTAG-IEEE1149.1标准),仿真器与主机的接口有多种形式:,PCI接口:仿真器作为一个插卡插在主机中。早期的DSP仿真器多采用这种接口方式,但这种仿真器使用不方便,现在已经很少见了;并口:仿真器通过打印机接口与主机连接。由于计算机并口采用39针连接器进行连接,并口仿真器体积相对也较大;USB接口:目前越来越多的计算机外设采用USB作为总线接口,其高速数传和热插拔的特性使得外部设备可以方便地与计算机连接,并且具有很好的连通性能。DSP硬件仿真器也出现了USB接口的产品,而且发展迅速,USB接口仿真器已经成为目前最常见的DSP硬件仿真器。,13.2.4DSP软件仿真器,软件仿真器是一个软件程序,使用主机的处理器和存储器来仿真TMS320DSP的微处理器和微计算机模式,从而进行软件开发和非实时的程序验证。,在PC机上,典型的软仿真速度是每秒几百条指令。,软件仿真器的主要功能和性能有:在主机上执行用户的DSP程序修改和检查寄存器显示和修改数据和程序存储器仿真外设、高速缓存和流水时序提取指令周期时序,用以分析器件的表现设置断点,添加指令,读写内存、数据总线或程序总线上的数据跟踪累加器、程序计数器、辅助寄存器等单步执行指令,在用户指定的时间产生中断对非法操作码和无效数据输入等提供出错信息执行批处理文件中的命令用文件的方式快速存储和调用仿真参数反汇编能力,以便对语句作编辑和重汇编存储器的内容可以同时显示为十六进制的16位值和汇编后的源代码,多种执行模式(单个多个指令计数、单个多个周期计数、until条件、while条件循环计数、无限制地运行键入的halt等)跟踪表达式的值、cache和指令流水线,以便优化代码周期计数在单步执行或运行的模式下显示时钟周期数,现在软件仿真器已作为CCS(CodeComposerStudio)的一个标准插件,已经被广泛地应用于DSP的开发中。,13.2.5软件开发平台,软件开发平台,也称为代码生成工具,是DSP系统软件开发中必不可少的工具,它对用户程序进行管理,经过编译、链接后产生真正可以在DSP上运行的程序。目前常见的DSP软件开发平台主要有CC(CodeComposer)和CCS(CodeComposerStudio)。软件开发平台主要包含了DSP代码生成过程中所必需的C编译器、汇编器和链接器。,早期的软件仿真器软件与其他开发工具(如代码生成工具)是分离的,使用起来不太方便。,C编译器(CCompiler):将C语言源代码程序自动地编译成DSP汇编语言源代码程序;汇编器(assembler):将汇编语言源代码文件汇编成机器语言COFF目标文件,在源文件中包含了汇编指令、宏命令及指令等;链接器(linker):把汇编生成的可重定位的COFF目标模块组合成一个可执行的COFF目标模块。它能调整并解决外部符号参考。链接器的输入是可重定位的COFF目标文件和目标库文件,它也可以接收来自文档管理器中的目标文件以及链接以前运行时所产生的输出模块。,3.3DSP系统开发环境,C高级语言编程(或C和汇编的混合编程)、C优化编译和集成的软硬件开发环境。,CC(CodeComposer)CCS(CodeComposerStudio),CCS是一种针对TMS320调试接口的集成开发环境。CCS包含源代码编辑工具、代码调试工具、可执行代码生成工具和实时分析工具,并支持设计和开发的整个流程。,13.3.1CCS的主要特性,完全集成的开发环境高度集成的源代码编辑器支持编译和调试的后台编辑对C语言源文件和DSP汇编语言文件的目标管理支持探针在算法中通过文件提取或加入信号和数据可以在后台执行DOS程序图形分析功能方便的代数分解窗口有在任何算法点观察信号的图形窗口探针有状态观察窗口,13.3.2CCS开发软件的主要流程,DSP开发工具:,C编译器(CCompiler)汇编器(assembler)链接器(linker)档案管理器(achiever)助记符到代数语言的转换程序运行支持库公用程序(runtime-supportutility)运行支持库(runtime-supportlibrary)十六进制转换公用程序(Hexconversionutility),13.3.3公共目标文件格式(COFF),CCS的汇编器输出的目标文件和链接器输出的可执行文件都是公共目标文件格式(CommonObjectFileFormat,COFF)。由于COFF在编写程序时采用代码和数据块的形式,因此有利于模块化编程。这些代码和数据块称为段。,所谓段(sections)是指连续地占有存储空间的一个数据或代码块。在编写程序时,程序按段组织。段是目标文件中可重新定位的最小单元,一个目标程序中的每个段通常是分开的和不同的。,COFF目标文件至少包含以下3个默认的段:,(1).txt文本段,通常包含可执行代码(2).data数据段,通常包含初始化的数据(3).bss保留空间段,通常为没有初始化的变量保留空间,此外,还有命名段。汇编器和链接器可用来产生、命名和链接命名段,这些段的使用和.data,.text和.bss段相同。,段有两种基本类型:初始化段和未初始化段。初始化段包含数据或代码,包括:.text段、.data段以及由汇编器伪指令.sect产生的命名段;未初始化段为没有初始化的数据保留存储空间,包括:.bss段和由汇编器伪指令.sect产生的命名段。,链接器的功能之一是将段重新定位到目标系统的存储器空间中,该功能称为定位或分配(allocate)。,因为大多数系统中包含有几种存储器,所以使用段可以使目标存储器的使用更为有效。所有的段都是独立可重新定位的,可将任何段放入目标存储器的任何位置。例如,可以定义一个包含有初始化程序的段,然后将它分配到包含ROM的存储器空间中去。,13.3.4CCS软件界面,CCS主菜单中各菜单项功能:,File(文件):文件管理,载入执行程序、符号及数据,文件输入输出等Edit(编辑):文件及变量编辑,如剪贴、撤消、字符串查找等View(查看):工具条显示设置,内存、寄存器和图形显示等Project(工程):工程管理(新建、打开、关闭及添加文件等)、编译、构建工程等Debug(调试):断点、探针设置,单步执行、复位等,Profiler(性能):性能菜单,包括时钟和性能断点设置等GEL(扩展功能):利用通用扩展语言设置扩展功能Option(选项):选项设置,设置字体、颜色、键盘属性、动画速度、内存映射等Tools(工具):包括引脚连接、端口连接、命令窗口、连接设置等DSP/BIOS(实时分析工具):用来辅助CCS环境实现程序实时调试Windows(窗口):窗口管理,包括窗口排列、窗口列表等Help(帮助):CCS在线帮助菜单,包括用户手册、入门指南等,13.3.5CCS工程组成,(1).pjt文件CCS工程文件。在CC中,工程文件的扩展名为.mak。(2).lib文件CCS运行支持库。(3).h文件头文件。(4).c文件C源文件。(5).asm文件汇编语言源文件。(6).cmd文件链接命令文件。(7).obj文件目标文件,COFF格式。(8).out文件可执行文件,COFF格式。,13.3.6头文件,CCS工程中的头文件与其它基于C语言的开发环境中的头文件基本相同,主要是用来定义工程中的常量和数据结构。为了提高开发效率,开发人员往往会将DSP片内的控制寄存器定义写成一个头文件,这样在各个基于相同型号DSP的开发中,可以共享这个定义控制寄存器的头文件。,13.3.7中断向量定义,与传统的单片机类似,DSP的中断也可以采用查询和回调两种方式来处理。如果采用回调方式处理,其实现方式是在中断向量地址处放置一个跳转语句,跳转到相应的中断处理函数。在CCS中,需要编写一个.asm文件,定义所有的中断向量。,13.3.8链接命令文件,CCS的链接器也可以有很多选项,如-l、-stack、-o等,另外在链接器选项中还应该将开发中的逻辑段与目标系统存储器物理地址的对应关系定义清楚。,(1)利用命令行实现:即在命令行中link命令后面将所有的链接选项写明,使链接器按照选项设定去工作。(2)利用工程选项菜单实现:在CCS菜单ProjectBuildOptionsLinker页面中可以对链接器选项进行设置。,这些链接器选项的实现有三种方式:,(3)利用链接命令文件实现:即编写一个链接命令文件,将所有链接选项写在文件中,并将此文件加入工程。链接命令文件实际上就是一个ASCII码文件,扩展名是.cmd。,推荐使用工程选项菜单和链接命令文件的方式来实现链接器选项的设置。链接器对命令文件名的大小写是敏感的,空格和空行是没有意义的,但可以用作定界符。,链接器命令文件主要包含以下3部分内容:,(1)输入文件名。就是链接的目标文件和文档库文件或者是其他的命令文件,可以没有。(2)链接器选项。如-l、-stack、-o等,这些选项可以用在链接命令行,也可以用在命令文件中。(3)MEMORY和SECTIONS都是链接命令,MEMORY命令定义目标存储器的配置,SECTIONS命令定义逻辑段与目标存储器的对应关系。,13.4控制程序开发语言的选择,DSP控制程序的开发可以采用三种开发语言:汇编语言、C语言和C语言与汇编语言混合编程。,1.汇编语言编程,优点:(1)TI的DSP汇编语言包含大量的高效指令,可以实现很高的代码效率和实时性;(2)TI的DSP汇编语言具有灵活的寻址方式,底层控制灵活性好;(3)TI的DSP汇编语言执行效率高,指令周期明确,保证系统的实时性。,不足:,(1)TI的DSP汇编指令集庞大,掌握困难,需要长期的实践积累;(2)流程控制不便,开发周期长;(3)程序可读性差,修改升级困难;(4)不同系列DSP间的汇编指令不尽相同,开发程序的可移植性差。,总结:主要适用于一些运算

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论