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

下载本文档

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

文档简介

第13章 TMS320LF240x的系统开发 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图设计要综合考虑设备结构特点和数模混合电 路布线工艺。(Protell99 SE 电子逻辑分析和仿真) 硬件调试主要进行硬件基本功能调试,确定可以满 足功能和技术指标要求。 (1)软件需求分析 (2)算法仿真:利用高级语言 (3)编码:可读性 (4)软件调试、测试:代码效率、执行效率 软件实现: 系统集成与系统测试: 软硬件联合调试,调整时序关系,完成系统 实现。按照系统功能指标要求进行系统测试和各 种环境实验。 13.2 DSP系统的仿真调试工具 (1)标准评估模块(EVM) (2)DSP入门套件(DSK) (3)硬件仿真器(Emulator/XDS) (4)软件仿真器(Simulator) (5)DSP软件开发平台(CCCCS) 13.2.1 标准评估模块 标准评估模块(EVM,Evaluation Module)是TI或 TI的第三方为TMS320 DSP的使用者设计和生产的 的一种评估平台,它的运行环境和资源较为完 善,可用于某型号DSP的器件评估、程序调试与 检查以及系统的调试。 EVM提供了一套完整的DSP系统,包括A/D、D/A 、外部程序数据存储器、外部I/O等,用户可以 使用EVM来进行DSP的实验、编写和运行实时的源 代 码,对代码进行评估,且可用来调试用户自己的 系统。 此TMS320LF2407 EVM板的性能指标如下: TMS320LF2407运行速度30MIPS 128K存储空间:64K程序存储器和64K数据存储器 4路的DAC7625数模转换 UART接口,符合RS232标准 32K片上FLASH CAN总线标准接口 用户开关和测试指示灯 数据、地址、I/O、控制扩展接口 具有IEEE1149.1兼容的逻辑扫描电路,该电路用 于测试和仿真 +5V电源输入,内部3.3V电源管理 13.2.2 DSK入门套件 DSP入门套件(DSK,DSP Starter Kit)是TI公司 为TMS320 DSP的初学者设计和生产的一种评价 DSP平台的廉价开发工具板。在PC机环境下,用 户可以使用DSK来做系统实验和应用,进行诸如 自动控制系统、语音处理等应用;也可以编写 和运行实时的代码;还可以用来建立和调试用 户自己的系统。 DSK套件包括一块TMS320 DSP芯片为基础的电路 板、配套的电源和电缆、专用的C编译器、汇编 器链接器以及相应的调试软件和文档。 DSK电路板上除了DSP之外,一般还带有一定的 存储器,并配有通信接口(并口或串口,用来和 PC机通信)、电源插口、模拟信号I/O接口、扬 声器接口等,可以很容易地实现一个简单的控 制系统或语音系统,为初学者学习DSP开发提供 了一个良好的平台。 13.2.3 DSP硬件仿真器 TI公司推出,也称开发系统(XDS, eXtendedDevelopment System),是基于边界扫 描(Boundary Scan)的在线系统仿真技术。 它用于系统集成阶段的原理样机软硬件联合调试。 扫描式仿真是一种独特的、非插入式的系统仿真与 系统调试方法,程序可以从片外或片内的目标存储 器实时执行,在任何时钟速度下都不会引入额外的 等待状态。 硬件仿真器的主机是PC或工作站。 主机通过仿真器与目标系统的JTAG接口相连,控 制目标板上的DSP器件。 目标板上的DSP本身带有仿真功能,硬件仿真器 本身只是一个控制器,它通过DSP芯片内部的 串行扫描路径对处理器进行控制,完成实时测 试和调试。 仿真器与目标系统的接口是利用一个标准的14针接 口 (JTAG接口)来实现的(JTAG-IEEE1149.1标准) 仿真器与主机的接口有多种形式: PCI接口:仿真器作为一个插卡插在主机中。早 期的DSP仿真器多采用这种接口方式,但这种仿 真器使用不方便,现在已经很少见了; 并口:仿真器通过打印机接口与主机连接。由于 计算机并口采用39针连接器进行连接,并口仿真 器体积相对也较大; USB接口:目前越来越多的计算机外设采用USB 作为总线接口,其高速数传和热插拔的特性使得 外部设备可以方便地与计算机连接,并且具有很 好的连通性能。DSP硬件仿真器也出现了USB接 口的产品,而且发展迅速,USB接口仿真器已经 成为目前最常见的DSP硬件仿真器。 13.2.4 DSP软件仿真器 软件仿真器是一个软件程序,使用主机的处理器 和存储器来仿真TMS320 DSP的微处理器和微计算 机模式,从而进行软件开发和非实时的程序验证 。在PC机上,典型的软仿真速度是每秒几百条指令。 软件仿真器的主要功能和性能有: 在主机上执行用户的DSP程序 修改和检查寄存器 显示和修改数据和程序存储器 仿真外设、高速缓存和流水时序 提取指令周期时序,用以分析器件的表现 设置断点,添加指令,读写内存、数据总线或程 序总线上的数据 跟踪累加器、程序计数器、辅助寄存器等 单步执行指令 在用户指定的时间产生中断 对非法操作码和无效数据输入等提供出错信息 执行批处理文件中的命令 用文件的方式快速存储和调用仿真参数 反汇编能力,以便对语句作编辑和重汇编 存储器的内容可以同时显示为十六进制的16位 值和汇编后的源代码 多种执行模式(单个多个指令计数、单个多个 周期计数、until条件、while条件循环计数、无限 制地运行键入的halt等) 跟踪表达式的值、cache和指令流水线,以便优化 代码 周期计数 在单步执行或运行的模式下显示时钟周期数 现在软件仿真器已作为CCS(Code Composer Studio)的一个标准插件,已经被广泛地应用于 DSP的开发中。 13.2.5 软件开发平台 软件开发平台,也称为代码生成工具,是DSP系统 软件开发中必不可少的工具,它对用户程序进行管 理,经过编译、链接后产生真正可以在DSP上运行 的程序。目前常见的DSP软件开发平台主要有CC (Code Composer)和CCS(Code Composer Studio)。软件开发平台主要包含了DSP代码生成 过程中所必需的C编译器、汇编器和链接器。 早期的软件仿真器软件与其他开发工具(如代码生 成工具)是分离的,使用起来不太方便。 C编译器(C Compiler):将C语言源代码程序自 动地编译成DSP汇编语言源代码程序; 汇编器(assembler):将汇编语言源代码文件 汇编成机器语言COFF目标文件,在源文件中包含 了汇编指令、宏命令及指令等; 链接器(linker):把汇编生成的可重定位的 COFF目标模块组合成一个可执行的COFF目标模 块。它能调整并解决外部符号参考。链接器的输 入是可重定位的COFF目标文件和目标库文件,它 也可以接收来自文档管理器中的目标文件以及链 接以前运行时所产生的输出模块。 3.3 DSP系统开发环境 C高级语言编程(或C和汇编的混合编程)、C优化 编译和集成的软硬件开发环境。 CC(Code Composer) CCS(Code Composer Studio) CCS是一种针对TMS320调试接口的集成开发环境 。 CCS包含源代码编辑工具、代码调试工具、可执 行代码生成工具和实时分析工具,并支持设计和 开发的整个流程。 13.3.1 CCS的主要特性 完全集成的开发环境 高度集成的源代码编辑器 支持编译和调试的后台编辑 对C语言源文件和DSP汇编语言文件的目标管理 支持探针在算法中通过文件提取或加入信号和数据 可以在后台执行DOS程序 图形分析功能 方便的代数分解窗口 有在任何算法点观察信号的图形窗口探针 有状态观察窗口 13.3.2 CCS开发软件的主要流程 DSP开发工具: C编译器(C Compiler) 汇编器(assembler) 链接器(linker) 档案管理器(achiever) 助记符到代数语言的转换程序 运行支持库公用程序(runtime-support utility) 运行支持库(runtime-support library) 十六进制转换公用程序(Hex conversion utility) 13.3.3 公共目标文件格式(COFF) CCS的汇编器输出的目标文件和链接器输出的可执 行文件都是公共目标文件格式(Common Object File Format,COFF)。由于COFF在编写程序时采 用代码和数据块的形式,因此有利于模块化编程 。 这些代码和数据块称为段。 所谓段(sections)是指连续地占有存储空间的一 个数据或代码块。在编写程序时,程序按段组 织。段是目标文件中可重新定位的最小单元,一 个目标程序中的每个段通常是分开的和不同的。 COFF目标文件至少包含以下3个默认的段: (1).txt 文本段,通常包含可执行代码 (2).data 数据段,通常包含初始化的数据 (3).bss 保留空间段,通常为没有初始化的变量 保留空间 此外,还有命名段。汇编器和链接器可用来产生、 命名和链接命名段,这些段的使用和.data,.text 和.bss段相同。 段有两种基本类型:初始化段和未初始化段。 初始化段包含数据或代码,包括:.text段、.data段 以及由汇编器伪指令.sect产生的命名段; 未初始化段为没有初始化的数据保留存储空间,包 括:.bss段和由汇编器伪指令.sect产生的命名段。 链接器的功能之一是将段重新定位到目标系统的存储 器空间中,该功能称为定位或分配(allocate)。 因为大多数系统中包含有几种存储器,所以使用段可 以使目标存储器的使用更为有效。所有的段都是独 立可重新定位的,可将任何段放入目标存储器的任 何位置。例如,可以定义一个包含有初始化程序的 段,然后将它分配到包含ROM的存储器空间中去。 13.3.4 CCS软件界面 CCS主菜单中各菜单项功能: File(文件):文件管理,载入执行程序、符号及数 据,文件输入输出等 Edit(编辑):文件及变量编辑,如剪贴、撤消、字 符串查找等 View(查看):工具条显示设置,内存、寄存器和 图形显示等 Project(工程):工程管理(新建、打开、关闭及添 加文件等)、编译、构建工程等 Debug(调试):断点、探针设置,单步执行、复位 等 Profiler(性能):性能菜单,包括时钟和性能断点设 置等 GEL(扩展功能):利用通用扩展语言设置扩展功能 Option(选项):选项设置,设置字体、颜色、键盘 属性、动画速度、内存映射等 Tools(工具):包括引脚连接、端口连接、命令窗口 、 连接设置等 DSP/BIOS(实时分析工具):用来辅助CCS环境实现 程序实时调试 Windows(窗口):窗口管理,包括窗口排列、窗口 列表等 Help(帮助):CCS在线帮助菜单,包括用户手册、 入门指南等 13.3.5 CCS工程组成 (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菜单 ProjectBuild OptionsLinker页面中可以对链 接器选项进行设置。 这些链接器选项的实现有三种方式: (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

提交评论