DSP原理与应用_(第4章DSP的开发环境与工具)_第1页
DSP原理与应用_(第4章DSP的开发环境与工具)_第2页
DSP原理与应用_(第4章DSP的开发环境与工具)_第3页
DSP原理与应用_(第4章DSP的开发环境与工具)_第4页
DSP原理与应用_(第4章DSP的开发环境与工具)_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

1、 DSP的开发环境与工具的开发环境与工具 C优化编译器优化编译器 汇编器(汇编器(Assembler) 连接器(连接器(Linker) 归档器(归档器(Archiver) 交叉引用列表器(交叉引用列表器(Cross-Reference Lister) 十六进制转换公用程序(十六进制转换公用程序(Hex Conversion Utility) 系统集成与调试工具系统集成与调试工具 C/汇编源代码调试(汇编源代码调试(C/Assembly source debugger) 代码分析器(代码分析器(Code Profile) 软仿真器(软仿真器(Simulator) DSP入门套件(入门套件(DSK

2、,DSP Starter Kit) 评估模块(评估模块(EVM,Evaluation Module) TMS320硬件仿真器(硬件仿真器(Emulators) 集成化的集成化的DSP开发环境开发环境 Code Composer Studio DSP的操作系统的操作系统 一般估计,一个一般估计,一个嵌入式系统嵌入式系统,开发的,开发的80%的努力,以及系统的的努力,以及系统的80%的复杂程度,取决于的复杂程度,取决于软件软件。 因此,设计人员在为实时系统选择处理器因此,设计人员在为实时系统选择处理器时,都极为看重先进的、易于使用的时,都极为看重先进的、易于使用的开发环境开发环境与工具与工具。 代

3、码生成工具代码生成工具 系统集成及调试环境与工具系统集成及调试环境与工具 实时操作系统实时操作系统 TI为其为其TMS320系列系列DSP提供了系列的提供了系列的C编译器。编译器。将标准将标准C源文件编译成为相应片种的源文件编译成为相应片种的汇编语言源代码文汇编语言源代码文件,进而汇编和连接,产生件,进而汇编和连接,产生可执行的目标文件。可执行的目标文件。 这些这些C编译器符合编译器符合ANSI C标准;有运行支标准;有运行支持库;一个持库;一个外壳程序(外壳程序(shell program)可以可以一一步将步将C源代码翻译成为源代码翻译成为TMS320的目标代码。的目标代码。 完全符合完全符

4、合ANSI C标准标准; 带有一个完整的带有一个完整的运行支持库运行支持库,包括字符串操,包括字符串操 作,动态存储器分配,数据转换,三角、指数作,动态存储器分配,数据转换,三角、指数 和双曲线函数等。可以对运行支持函数库和用和双曲线函数等。可以对运行支持函数库和用 户定义函数库作户定义函数库作扩展扩展。使用多种先进技术使用多种先进技术,来从来从C源代码产生源代码产生高效汇高效汇编代码。编代码。通用优化通用优化可用于任何可用于任何 C 代码,而对各片种的代码,而对各片种的专专门优化门优化更适应该片种的结构特点。更适应该片种的结构特点。通过简化循环、重新安排语句和表达式、将变通过简化循环、重新安

5、排语句和表达式、将变量量放入放入寄存器等方法寄存器等方法,来改善执行速度,减小来改善执行速度,减小C程序的大小程序的大小。包含一个包含一个外壳程序(外壳程序(Shell Program),只用一,只用一个命令,就可以编译、汇编、和连接,直接从个命令,就可以编译、汇编、和连接,直接从C原文件产生原文件产生COFF文件文件。多种多种列表文件列表文件: (1)汇编语言源文件,可以有选择地包括内部)汇编语言源文件,可以有选择地包括内部列表、列表、C源代码及使用寄存器的信息源代码及使用寄存器的信息; (2)预处理输出文件)预处理输出文件; (3)带有行号和操作码的汇编列表文件)带有行号和操作码的汇编列表

6、文件。 C编译器的效率取决于所作的优化的编译器的效率取决于所作的优化的范围范围和和数量数量。TMS320的的C编译器能作很宽范围的编译器能作很宽范围的多种优化,从而改善其编译所得代码的效率。多种优化,从而改善其编译所得代码的效率。 TMS320的的C编译器所作的优化分为适用编译器所作的优化分为适用于所有处理器的于所有处理器的通用优化通用优化和针对特定片种的专和针对特定片种的专门优化门优化。改变表达式,字符简化,常数合并改变表达式,字符简化,常数合并: 将表达式简化成为较少指令和较少寄存器将表达式简化成为较少指令和较少寄存器的的等价形式等价形式: (a+b) - (c+d) - (a+b)-c)

7、-d) a = (b+4) - (c+1) - a = b - c + 3数据流优化数据流优化: 使用较少代价的表达式,检测出并去除不必使用较少代价的表达式,检测出并去除不必要的赋值,避免再要的赋值,避免再次次计算已经计算过的值计算已经计算过的值。优化转移优化转移/ /简化控制流简化控制流: 分析程序的转移情况,重新安排操作顺序,分析程序的转移情况,重新安排操作顺序,消去转移或多余的条件消去转移或多余的条件。优化循环相关变量优化循环相关变量: 把把为数组元素设置下标的代码为数组元素设置下标的代码,改为改为指针增指针增量量的代码;的代码; 将将用计数器控制的循环写成用计数器控制的循环写成块循环块

8、循环,或使用,或使用高效的增高效的增/ /减量转移指令;减量转移指令; 在循环中在循环中,将,将总是计算同样值的表达式移到循总是计算同样值的表达式移到循环外面环外面;将地址寄存器作为指针来使用将地址寄存器作为指针来使用: 当数组下标结构成为循环变量时,这种优当数组下标结构成为循环变量时,这种优化特别有效。化特别有效。以省时为基础的寄存器配置以省时为基础的寄存器配置: 根据变量的类型、使用的情况和频率,将根据变量的类型、使用的情况和频率,将寄存器配置存放变量和暂时使用的值;循环中寄存器配置存放变量和暂时使用的值;循环中使用的变量的优先级高于其他变量;不再重复使用的变量的优先级高于其他变量;不再重

9、复使用的变量可以配置到同一个寄存器。使用的变量可以配置到同一个寄存器。通过使用块循环指令通过使用块循环指令RPTB来支持零开销循环来支持零开销循环使用寄存器来传递函数的自变量使用寄存器来传递函数的自变量 TMS320的汇编语言工具是一个的汇编语言工具是一个软件包,其中包括:软件包,其中包括: 汇编器汇编器 连接器连接器 归档器归档器 交叉引用列表器交叉引用列表器 十六进制转换公用程序十六进制转换公用程序 将汇编语言的源程序文件汇编成为机器语将汇编语言的源程序文件汇编成为机器语言的言的目标程序文件目标程序文件,其格式为,其格式为COFF(公用目标(公用目标文件格式)文件格式)。 汇编语言源程序可

10、以包括汇编语言源程序可以包括: 汇编语言指令(汇编语言指令(instruction) 汇编指令(汇编指令(assembler directives) 宏指令(宏指令(macro directives) 连接器的基本任务是将目标文件连接在一连接器的基本任务是将目标文件连接在一起,起,产生可执行模块产生可执行模块。连接器可以接受的输入。连接器可以接受的输入文件包括文件包括: 汇编器产生的汇编器产生的COFF目标文件目标文件 命令文件命令文件 库文件库文件 已部分连接好了的文件已部分连接好了的文件 它所产生的可执行它所产生的可执行COFF目标模块可以装目标模块可以装入各种入各种开发工具开发工具,或由

11、,或由TMS320器件来执行。器件来执行。 归档器允许用户将一组文件归入一个档案归档器允许用户将一组文件归入一个档案文件(库)。例如,将若干个宏归入一个文件(库)。例如,将若干个宏归入一个宏库宏库,汇编器将搜索这个库,并调用源文件中使用的汇编器将搜索这个库,并调用源文件中使用的宏。也可以用归档器将一组目标文件收入一个宏。也可以用归档器将一组目标文件收入一个目标文件库目标文件库,连接器将连接库内的成员,并解,连接器将连接库内的成员,并解决外部引用。决外部引用。 交叉引用列表器是一个交叉引用列表器是一个查错查错的工具。它接的工具。它接受已经连接好的目标文件作为输入,产生一个受已经连接好的目标文件作

12、为输入,产生一个交叉引用列表作为输出。它列出符号、符号的交叉引用列表作为输出。它列出符号、符号的定义、以及它们在已经连接的源文件中的引用。定义、以及它们在已经连接的源文件中的引用。 将将COFF目标文件转换成为若干种目标文件转换成为若干种标准标准的的文件格式:文件格式: ASCII-十六进制十六进制 Extended Tektronix Intel MCS-86 Motorola Exorciser TI SDSMAC TI公司为公司为TMS320系统的集成与调试所提供的系统的集成与调试所提供的工具包括工具包括: C/汇编源代码汇编源代码调试器调试器(C/Assembly source deb

13、ugger) 软仿真器软仿真器(Simulator) DSP入门套件(入门套件(DSK,DSP Starter Kit) 标准评估模块(标准评估模块(EVM) 扩展开发系统扩展开发系统XDS(eXtended Development System)为嵌入式系统的开发提供了丰富的功能与灵活为嵌入式系统的开发提供了丰富的功能与灵活性。该调试器是下面要讨论的软仿真器、评估性。该调试器是下面要讨论的软仿真器、评估模块、在线仿真器等的标准接口。模块、在线仿真器等的标准接口。该调试器可以运行在该调试器可以运行在PC平台上,对用平台上,对用C或汇编或汇编语言写的程序提供完全的控制。其代码分析功语言写的程序提

14、供完全的控制。其代码分析功能通过快速确认最费时的程序段,提示应该将能通过快速确认最费时的程序段,提示应该将开发时间集中在什么地方开发时间集中在什么地方。支持多操作,增强并行处理能力(多处理器、支持多操作,增强并行处理能力(多处理器、断点、单步)断点、单步);对对C代码和汇编代码单独调试或同时调试代码和汇编代码单独调试或同时调试;灵活配置窗口界面灵活配置窗口界面;灵活的命令输入方式(鼠标、功能键、下拉菜灵活的命令输入方式(鼠标、功能键、下拉菜单、批处理文件)单、批处理文件);全屏编辑,连续更新全屏编辑,连续更新。分别或同时分析分别或同时分析C代码和汇编代码代码和汇编代码;针对针对全局变量、模块、

15、函数全局变量、模块、函数,可以在各种层次可以在各种层次上建立代码分析区域上建立代码分析区域;广泛的统计功能,向用户提供代码中瓶颈问题广泛的统计功能,向用户提供代码中瓶颈问题的各种信息(代码的总执行时间、调用子程序的各种信息(代码的总执行时间、调用子程序的时间等)的时间等)。TMS320软件仿真器是一个软件程序,软件仿真器是一个软件程序,利用利用主主机的处理器和存储器机的处理器和存储器,来仿真来仿真TMS320 DSP的的微处理器和微计算机模式,从而进行软件开发微处理器和微计算机模式,从而进行软件开发和非实时的程序验证。和非实时的程序验证。在在PC机上,典型的仿真速度为每秒几百条指机上,典型的仿

16、真速度为每秒几百条指令。令。在主机上执行用户的在主机上执行用户的DSP程序程序修改和检查寄存器修改和检查寄存器显示和修改数据及程序存储器显示和修改数据及程序存储器外设、外设、cache、pipeline的时序仿真的时序仿真设置断点设置断点跟踪跟踪ACC、PC、AR、表达式的值、表达式的值单步执行单步执行产生中断产生中断对非法操作码和无效数据输入等提供出错信息对非法操作码和无效数据输入等提供出错信息执行批处理文件中的命令执行批处理文件中的命令以以文件方式快速存储和调用仿真参数文件方式快速存储和调用仿真参数反汇编反汇编周期计数并显示周期计数并显示为初学者设计和生产的为初学者设计和生产的,它,它是一

17、种用以评价是一种用以评价DSP平台的廉价的开发工具。平台的廉价的开发工具。在在PC机的机的DOS或或Windows下,用户可以使用下,用户可以使用DSK来作来作DSP的实验,进行诸如控制系统、语的实验,进行诸如控制系统、语音处理等应用;也可以用来编写和运行实时源音处理等应用;也可以用来编写和运行实时源代码,并对其作评估;还可以用来调试用户自代码,并对其作评估;还可以用来调试用户自己的系统。己的系统。TMS320的评估模块(的评估模块(EVM)是廉价的开发)是廉价的开发板,用于器件评估、标准程序检查、以及板,用于器件评估、标准程序检查、以及有有限的系统调试限的系统调试。EVM是一个是一个PC插件

18、,包括目标处理器、一插件,包括目标处理器、一个小容量的存储器、和有限的外设。个小容量的存储器、和有限的外设。EVM可以用来实时运行代码,并与外部系统可以用来实时运行代码,并与外部系统接口接口。扩展开发系统(扩展开发系统(XDS,extended development system)是功能强大的)是功能强大的全速仿真器全速仿真器,用以作系,用以作系统级的集成与调试。统级的集成与调试。扫描式仿真扫描式仿真(Scan-Based Emulator)是一种)是一种独特的、非插入式的系统仿真、集成、调试方独特的、非插入式的系统仿真、集成、调试方法法。使用这种方法,程序可以从片内或片外的目标使用这种方法,程序可以从片内或片外的目标存储器实时执行,在任何时钟速度下都不会引存储器实时执行,在任何时钟速度下都不会引入额外的等待状态入额外的等待状态。为为TI的的C2000,C5000和和C6000而设计而设计将编辑、调试、项目管理、分析和探测集成在将编辑、调试、项目管理、分析和探测集成在一个环境里一个环境里代码生成器(代码生成器(C编译器、汇编器与连接器)编译器、汇编器与连接器)指令集仿真器指令集仿真器实时的基础软件实时的基础软件主机和目标机之间的实时数据

温馨提示

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

评论

0/150

提交评论