资源预览内容
第1页 / 共72页
第2页 / 共72页
第3页 / 共72页
第4页 / 共72页
第5页 / 共72页
第6页 / 共72页
第7页 / 共72页
第8页 / 共72页
第9页 / 共72页
第10页 / 共72页
亲,该文档总共72页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第四章第四章DSP的的开发环境与工具开发环境与工具 一般估计,一个嵌入式系统,开一般估计,一个嵌入式系统,开发的发的80%的努力,以及系统的的努力,以及系统的80%的复杂程度,取决于软件。的复杂程度,取决于软件。 因此,设计人员在为实时系统选因此,设计人员在为实时系统选择处理器时,都极为看重先进的、择处理器时,都极为看重先进的、易于使用的开发环境与工具。易于使用的开发环境与工具。DSP的开发环境和工具大致的开发环境和工具大致可以分为以下几类:可以分为以下几类:v代码生成工具代码生成工具v系统集成及调试环境与工具系统集成及调试环境与工具v实时操作系统实时操作系统C 优化编译器优化编译器 TI 为为其其TMS320系系列列 DSP提提供供了了系系列列的的 C 编编译译器器。将将标标准准 C 源源文文件件编编译译成成为为相相应应片片种种的的汇汇编编语语言言源源代代码码文文件件,进进而而汇汇编和连接,产生可执行的目标文件。编和连接,产生可执行的目标文件。 这这些些 C 编编译译器器符符合合ANSI C 标标准准;有有运运行行 支支 持持 库库 ; 一一 个个 外外 壳壳 程程 序序 ( shell program)可可以以一一步步将将 C 源源代代码码翻翻译译成成为为TMS320的目标代码。的目标代码。C 优化编译器主要特点优化编译器主要特点v 完全符合完全符合ANSI C标准标准v带带有有一一个个完完整整的的运运行行支支持持库库,包包括括字字符符串串操操作作,动动态态存存储储器器分分配配,数数据据转转换换,三三角角、指指数数和和双双曲曲线线函函数数等等。可可以以对对运运行行支支持持函函数数库库和和用用户户定义函数库作扩展定义函数库作扩展C 优化编译器主要特点优化编译器主要特点v使用多种先进技术来从使用多种先进技术来从 C 源代码产源代码产生高效汇编代码。通用优化可用于生高效汇编代码。通用优化可用于任何任何 C 代码,而对各片种的专门优代码,而对各片种的专门优化更适应该片种的结构特点。通过化更适应该片种的结构特点。通过简化循环、重新安排语句和表达式、简化循环、重新安排语句和表达式、将变量安排入寄存器等方法来改善将变量安排入寄存器等方法来改善执行速度执行速度,减小减小 C 程序的大小程序的大小C 优化编译器主要特点优化编译器主要特点v归档器公用程序(归档器公用程序(Archiver Utility),),将文件归入单一的档案文将文件归入单一的档案文件或库中,可以对库作文件的添加、件或库中,可以对库作文件的添加、删除、替换等。可以将目标文件库删除、替换等。可以将目标文件库作为连接器的输入作为连接器的输入C 优化编译器主要特点优化编译器主要特点v公用目标文件格式(公用目标文件格式(COFF,Common Object File Format)使用使用户能够在连接时定义自己系统的存户能够在连接时定义自己系统的存储器映射,将储器映射,将 C 代码和数据连接到代码和数据连接到特定的存储区域,从而最大限度地特定的存储区域,从而最大限度地改善其性能。改善其性能。COFF还为源程序一级还为源程序一级的查错提供强有力的支持的查错提供强有力的支持C 优化编译器主要特点优化编译器主要特点v包含一个外壳程序(包含一个外壳程序(Shell Program),),只用一个命令,就可以只用一个命令,就可以编译、汇编、和连接,直接从编译、汇编、和连接,直接从C原文原文件产生可执行的件产生可执行的COFF文件文件C 优化编译器主要特点优化编译器主要特点v多种列表文件:多种列表文件:(1)汇编语言源文件,可以有选择地)汇编语言源文件,可以有选择地包括内部列表、包括内部列表、C源代码及使用寄存源代码及使用寄存器的信息器的信息(2)预处理输出文件)预处理输出文件(3)带有行号和操作码的汇编列表文)带有行号和操作码的汇编列表文件件C 编译器的优化编译器的优化C编译器的效率取决于所作的优化的编译器的效率取决于所作的优化的范围和数量。范围和数量。TMS320的的C编译器能编译器能作很宽范围的多种优化,从而改善作很宽范围的多种优化,从而改善其编译所得代码的效率。其编译所得代码的效率。TMS320的的C编译器所作的优化分为适编译器所作的优化分为适用于所有处理器的通用优化和针对用于所有处理器的通用优化和针对特定片种的专门优化特定片种的专门优化通用优化通用优化v改变表达式,字符简化,常数合并改变表达式,字符简化,常数合并将表达式简化成为要求较少指令和较少寄将表达式简化成为要求较少指令和较少寄存器的等价形式:存器的等价形式:(a+b) - (c+d) - (a+b)-c)-d)a = (b+4) - (c+1) - a = b - c + 3通用优化通用优化v数据流优化数据流优化 使用较少代价的表达式,检测出并使用较少代价的表达式,检测出并去除不必要的赋值,避免再计算已去除不必要的赋值,避免再计算已经计算过的值经计算过的值通用优化通用优化v优化转移优化转移/ /简化控制流简化控制流 分析程序的转移情况,重新安排分析程序的转移情况,重新安排操作顺序,消去转移或多余的条件操作顺序,消去转移或多余的条件通用优化通用优化v优化循环相关变量,例如:优化循环相关变量,例如: 为数组元素设置下标的代码改为为数组元素设置下标的代码改为指针增量的代码;指针增量的代码; 用计数器控制的循环写成块循环,用计数器控制的循环写成块循环,或使用高效的增或使用高效的增/ /减量转移指令减量转移指令通用优化通用优化v在循环中总是计算同样值的表达式,在循环中总是计算同样值的表达式,移到循环外面移到循环外面针对特定片种的专门优化针对特定片种的专门优化v将地址寄存器作为指针来使用。当将地址寄存器作为指针来使用。当数组下标结构成为循环变量时,这数组下标结构成为循环变量时,这种优化特别有效种优化特别有效针对特定片种的专门优化针对特定片种的专门优化v以省时为基础的寄存器配置以省时为基础的寄存器配置 根据变量的类型、使用的情况和频根据变量的类型、使用的情况和频率,将寄存器配置存放变量和暂时率,将寄存器配置存放变量和暂时使用的值。循环中使用的变量的优使用的值。循环中使用的变量的优先级高于其他变量;不再重复使用先级高于其他变量;不再重复使用的变量可以配置到同一个寄存器的变量可以配置到同一个寄存器针对特定片种的专门优化针对特定片种的专门优化v通过使用块循环指令通过使用块循环指令RPTB来支持零来支持零开销循环开销循环v使用寄存器来传递函数的自变量使用寄存器来传递函数的自变量汇编语言工具汇编语言工具TMS320的的汇汇编编语语言言工工具具是是一一个个软软件件包,其中包括包,其中包括:v汇编器汇编器v连接器连接器v归档器归档器v交叉引用列表器交叉引用列表器v十六进制转换公用程序十六进制转换公用程序汇编器(汇编器(Assembler) 将将汇汇编编语语言言的的源源程程序序文文件件汇汇编编成成为为机机器器语语言言的的目目标标程程序序文文件件,其其格格式式为为COFF(公公用用目目标标文文件件格格式式)。汇汇编编语语言言源源程程序序可可以以包包括括汇汇编编语语言言指指令令(instruction)、汇汇编编指指令令(assembler directives)和和宏宏指指令令(macro directives)连接器(连接器(Linker) 连连接接器器的的基基本本任任务务是是将将目目标标文文件件连连接接在在一一起起,产产生生可可执执行行模模块块。连连接接器器可可以以接接受受的的输输入入文文件件包包括括汇汇编编器器产产生生的的COFF目目标标文文件件、命命令令文文件件、库库文文件件、以以及及已已部部分分连连接接好好了了的的文文件件。它它所所产产生生的的可可执执行行COFF目目标标模模块块可可以以装装入入各各种种开开发发工工具具,或或由由TMS320器件来执行器件来执行归档器(归档器(Archiver) 归档器允许用户将一组文件归入归档器允许用户将一组文件归入一个档案文件(库)。例如,将若一个档案文件(库)。例如,将若干个宏归入一个宏库,汇编器将搜干个宏归入一个宏库,汇编器将搜索这个库,并调用源文件中使用的索这个库,并调用源文件中使用的宏。也可以用归档器将一组目标文宏。也可以用归档器将一组目标文件收入一个目标文件库,连接器将件收入一个目标文件库,连接器将连接库内的成员,并解决外部引用连接库内的成员,并解决外部引用交叉引用列表器交叉引用列表器(Cross-Reference Lister) 交叉引用列表器是一个查错的工交叉引用列表器是一个查错的工具。它接受已经连接好的目标文件具。它接受已经连接好的目标文件作为输入,产生一个交叉引用列表作为输入,产生一个交叉引用列表作为输出。它列出符号、符号的定作为输出。它列出符号、符号的定义、以及它们在已经连接的源文件义、以及它们在已经连接的源文件中的引用中的引用十六进制转换公用程序十六进制转换公用程序(Hex Conversion Utility)将将COFF目标文件转换成为若干种标准的目标文件转换成为若干种标准的文件格式:文件格式:vASCII-十六进制十六进制vExtended TektronixvIntel MCS-86vMotorola ExorciservTI SDSMAC系统集成与调试工具系统集成与调试工具 TI公司为公司为TMS320系统的集成与调系统的集成与调试所提供的工具包括调试器接口试所提供的工具包括调试器接口(C/Assembly source debugger)、)、软仿真器(软仿真器(Simulator)、)、DSP入门入门套件(套件(DSK,DSP Starter Kit)、)、标准评估模块(标准评估模块(EVM)、)、以及扩展以及扩展开发系统开发系统XDS(eXtended Development System)等)等调试器接口调试器接口(C/Assembly source debugger)v为为嵌嵌入入式式系系统统的的开开发发提提供供了了丰丰富富的的功功能能与与灵灵活活性性。该该调调试试器器是是下下面面要要讨讨论论的的软软仿仿真真器器、评评估估模模块块、在在线线仿仿真真器器等等的的标标准接口。准接口。v该该调调试试器器可可以以运运行行在在PC或或SPARC等等平平台台上上,对对用用C 或或汇汇编编语语言言写写的的程程序序提提供供完完全全的的控控制制。其其代代码码分分析析功功能能通通过过快快速速确确认认最最费费时时的的程程序序段段,提提示示应应该该将将开开发发时时间集中在什么地方间集中在什么地方TMS320 debugger界面界面TMS320 debugger界面界面数据显示窗口数据显示窗口DEBUGGER的性能的性能v支持多操作,增强并行处理能力支持多操作,增强并行处理能力(多处理器、断点、单步)(多处理器、断点、单步)v对对C代码和汇编代码单独调试或同时代码和汇编代码单独调试或同时调试调试v灵活配置窗口界面灵活配置窗口界面v灵活的命令输入方式(鼠标、功能灵活的命令输入方式(鼠标、功能键、下拉菜单、批处理文件)键、下拉菜单、批处理文件)v全屏编辑,连续更新全屏编辑,连续更新代码分析器(代码分析器(CODE PROFILE)v分别或同时分析分别或同时分析C C代码和汇编代码代码和汇编代码v对全局变量、模块、函数可以在各对全局变量、模块、函数可以在各种层次上建立代码分析区域种层次上建立代码分析区域v广泛的统计功能,向用户提供代码广泛的统计功能,向用户提供代码中瓶颈问题的各种信息(代码的总中瓶颈问题的各种信息(代码的总执行时间、调用子程序的时间等)执行时间、调用子程序的时间等)软仿真器(软仿真器(Simulator)vTMS320软件仿真器是一个软件程序,软件仿真器是一个软件程序,使用主机的处理器和存储器来仿真使用主机的处理器和存储器来仿真TMS320 DSP的微处理器和微计算机的微处理器和微计算机模式,从而进行软件开发和非实时模式,从而进行软件开发和非实时的程序验证。在的程序验证。在PC机上,典型的仿机上,典型的仿真速度为每秒几百条指令真速度为每秒几百条指令软仿真器的性能软仿真器的性能v在主机上执行用户的在主机上执行用户的DSP程序程序v修改和检查寄存器修改和检查寄存器v显示和修改数据及程序存储器显示和修改数据及程序存储器v外设、外设、cache、pipeline的时序仿真的时序仿真v设置断点设置断点v跟踪跟踪ACC、PC、AR、表达式的值表达式的值v单步执行单步执行软仿真器的性能软仿真器的性能v产生中断产生中断v对非法操作码和无效数据输入等提对非法操作码和无效数据输入等提供出错信息供出错信息v执行批处理文件中的命令执行批处理文件中的命令v文件方式快速存储和调用仿真参数文件方式快速存储和调用仿真参数v反汇编反汇编v周期计数并显示周期计数并显示DSP入门套件入门套件(DSK,DSP Starter Kit)v为初学者设计和生产的为初学者设计和生产的DSK是一种用以是一种用以评价评价DSP平台的廉价的开发工具。在平台的廉价的开发工具。在PC机的机的DOS或或Windows下,用户可以使用下,用户可以使用DSK来作来作DSP的实验,进行诸如控制系的实验,进行诸如控制系统、语音处理等应用;也可以用来编写统、语音处理等应用;也可以用来编写和运行实时源代码,并对其作评估;还和运行实时源代码,并对其作评估;还可以用来调试用户自己的系统可以用来调试用户自己的系统TMS320C5x DSKTMS320C5x DSK评估模块评估模块(EVM,Evaluation Module)vTMS320的评估模块(的评估模块(EVM)是廉是廉价的开发板,用于器件评估、标准价的开发板,用于器件评估、标准程序检查、以及有限的系统调试。程序检查、以及有限的系统调试。EVM是一个是一个PC插件,包括目标处理插件,包括目标处理器、一个小容量的存储器、和有限器、一个小容量的存储器、和有限的外设。的外设。EVM可以用来实时运行代可以用来实时运行代码,并与外部系统接口码,并与外部系统接口TMS320 EVMTMS320C62 EVMTMS320C40 PPDSDES(DSP EXPEREMENT SYSTEM) 电子科技大学电子科技大学-德州仪器德州仪器DSP实验室,根据实验室,根据TI的的DSK和和EVM的特点和不足,在多年从事的特点和不足,在多年从事DSP技术研究及虚拟仪器开发的基础技术研究及虚拟仪器开发的基础上,自行开发了一套上,自行开发了一套TMS320C54x的实验与开发系统的实验与开发系统DES。DES PC插卡插卡DES的图形化中文界面的图形化中文界面信号源信号源虚拟示波器虚拟示波器虚拟频谱仪虚拟频谱仪v包含一片包含一片100MHz的的VC5402(片内含片内含16K DARAM),),两块两块AIC接口芯片接口芯片AC01(总共有总共有两路独立的两路独立的A/D和和D/A通道),通道),32K字的外部程字的外部程序存贮器,序存贮器,16K字的外部数据存贮器以及字的外部数据存贮器以及32K字节的字节的bootloader EPROM。v预预留留bootloader EPROM插插座座、McBSP串串口口、HPI并并口口、JTAG调调试试接接口口以以及及其其他他通通用用IO的的插头插头v可可以以广广泛泛应应用用于于教教学学、实实验验、算算法法研研究究、系系统统设计等领域。设计等领域。VC5402应用板应用板1. 1. 两路独立的两路独立的A/DA/D和和D/AD/A通道;通道;2. HPI2. HPI接口引脚;接口引脚;3. 32KB3. 32KB启动启动FLASH RAMFLASH RAM; 4. 16KW4. 16KW外部数据存储器;外部数据存储器;5. 32KW5. 32KW外部程序存储器;外部程序存储器; 6. 6. 外部电源输入外部电源输入7. 7. McBSPsMcBSPs串口引脚;串口引脚; 8. TMS320VC5402-PGE1008. TMS320VC5402-PGE100;9. JTAG9. JTAG引脚;引脚; 10.10.复位按钮复位按钮TMS320硬件仿真器硬件仿真器(Emulators)v扩扩 展展 开开 发发 系系 统统 ( XDS, extended development system)是是功功能能强强大大的的全全速速仿真器,用以作系统级的集成与调试。仿真器,用以作系统级的集成与调试。v扫扫描描式式仿仿真真(Scan-Based Emulator)是是一一种种独独特特的的、非非插插入入式式的的系系统统仿仿真真、集集成成、调调试试方方法法。使使用用这这种种方方法法,程程序序可可以以从从片片内内或或片片外外的的目目标标存存储储器器实实时时执执行行,在在任任何何时时钟钟速速度度下下都都不不会会引引入入额额外外的的等等待状态待状态TMS320边界扫描式仿真器边界扫描式仿真器TMS320边界扫描式仿真器边界扫描式仿真器集成化的集成化的DSP开发环境开发环境CODE COMPOSER STUDIOv为为TI的的C2000, C5000和和C6000而设计而设计v将编辑、调试、项目管理、分析和探测将编辑、调试、项目管理、分析和探测集成在一个环境里集成在一个环境里v代码生成器(代码生成器(C编译器、汇编器与连接器)编译器、汇编器与连接器)v指令集仿真器指令集仿真器v实时的基础软件(实时的基础软件(DSP/BIOS) v主机和目标机之间的实时数据交换主机和目标机之间的实时数据交换(RTDX)v实时分析和数据可视化实时分析和数据可视化v目前可用于目前可用于WIN95/98/NT/UNIX基于基于WIN的图形化界面的图形化界面集成式开发环境的结构集成式开发环境的结构实时数据交换(实时数据交换(RTDX)从探测点注入和提取信号从探测点注入和提取信号多目标调试多目标调试eXpressDSP实时软件技术实时软件技术eXpressDSP实时软件技术实时软件技术v使使DSP产品的开发过程得以简化和产品的开发过程得以简化和统一统一v为为OEM厂商提供可重复使用的软件厂商提供可重复使用的软件组成部分组成部分v大大缩短产品的开发时间,可以达大大缩短产品的开发时间,可以达到到50%以上以上eXpressDSP实时软件技术实时软件技术Code Composer StudioCode Composer Studiov开放的、具有强大集成能力的开发环境开放的、具有强大集成能力的开发环境v由先进开发工具组成的直观的系统,可由先进开发工具组成的直观的系统,可以大大缩短以大大缩短DSPDSP的编程时间的编程时间v高级的编码工具,可提供第三方工具接高级的编码工具,可提供第三方工具接入的开放式结构入的开放式结构v开发人员可以采用特定的工具自定义环开发人员可以采用特定的工具自定义环境,满足特殊的设计需要境,满足特殊的设计需要v一个广泛的、可以升级的软件基础一个广泛的、可以升级的软件基础v提供提供DSP应用所必须的基本的运行应用所必须的基本的运行时间系统服务和集成化支持时间系统服务和集成化支持DSP算法接口标准算法接口标准DSP算法接口标准算法接口标准v以公用性为基础的通用软件以公用性为基础的通用软件v它是一套编码协定和应用编程接口它是一套编码协定和应用编程接口(API)v该算法可以由创造者编写,然后被该算法可以由创造者编写,然后被其他系统集成人员广泛引用其他系统集成人员广泛引用v目前已有越来越多的厂商采纳目前已有越来越多的厂商采纳eXpressDSP实时软件技术,编写标准实时软件技术,编写标准化的软件化的软件v随着越来越多应用产品厂商的参与,基随着越来越多应用产品厂商的参与,基于于C2000、C5000、C6000系列系列DSP的算的算法库和程序库也就越来越丰富法库和程序库也就越来越丰富DSP的操作系统的操作系统v对于简单的对于简单的DSP任务,用前面介绍的开任务,用前面介绍的开发工具已能满足开发任务的需要,往往发工具已能满足开发任务的需要,往往不需要操作系统就可以进行。但当不需要操作系统就可以进行。但当DSP的任务增加和任务的复杂性提高,例如的任务增加和任务的复杂性提高,例如对实时性要求很高的多对实时性要求很高的多DSP并行操作的并行操作的多任务系统,可能就需要某种操作系统多任务系统,可能就需要某种操作系统来管理系统的资源,安排多任务的执行来管理系统的资源,安排多任务的执行和任务间的信息交换等和任务间的信息交换等
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号