dsp器件原理与应用02_tms320c6000系列dsp开发工具

dsp器件原理与应用02_tms320c6000系列dsp开发工具

ID:33576791

大小:674.97 KB

页数:21页

时间:2019-02-27

dsp器件原理与应用02_tms320c6000系列dsp开发工具_第1页
dsp器件原理与应用02_tms320c6000系列dsp开发工具_第2页
dsp器件原理与应用02_tms320c6000系列dsp开发工具_第3页
dsp器件原理与应用02_tms320c6000系列dsp开发工具_第4页
dsp器件原理与应用02_tms320c6000系列dsp开发工具_第5页
资源描述:

《dsp器件原理与应用02_tms320c6000系列dsp开发工具》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第2章TMS320C6000系列DSP开发工具随着DSP应用的日益广泛深入和市场竞争的日趋激烈,如何降低开发难度,缩短开发周期成了开发者关心的焦点问题。对于DSP厂商,其DSP产品的开发环境如何,开发工具是否完备,学习和使用是否方便是产品推广的重要因素。TI公司的TMS320C6000系列DSP采用独特的VLIW结构,芯片强大的硬件功能是否能充分发挥在很大程度上取决于代码的效率,即取决于代码生成工具的好坏。为此,TI公司推出了世界上第一个效率可达70%~80%的汇编语言级C编译器,它产生的代码的平均效率是其他DSP编译器的3倍。另外

2、,C6000独有的汇编优化器使开发者可以采用线性汇编语言(串行汇编语言)得到近似标准汇编的性能,因而降低了开发难度。2.1.CCS组件在CCS(CodeComposerStudio)推出之前,DSP软件开发的过程是分立的,开发者要自行使用单独的代码编辑器、代码生成工具以及软件或硬件仿真工具。CCS出现后,上述操作都隐藏在CCS集成环境下。CCS扩展了基本的代码生成工具,集成了了调试和实时分析功能。开发者的一切开发过程,包括工程的建立、源程序的编辑以及程序的编译和调试等,都在CCS集成环境下进行。CCS包括:TMS320C6000代

3、码生成工具集成开发环境DSP/BIOS插件RTDX插件,主机接口和应用程序接口2.2.代码生成工具图2-1是C6000软件开发流程图,其中阴影部分是开发C代码的常规流程,其他功能用于辅助和加速开发过程。1图2-1C6000软件开发流程图1.C/C++编译器C6000的C/C++编译器对C/C++代码进行编译,生成C6000汇编代码。如图2-2所示,C/C++编译器内分为语法分析器(parser)、优化器(optimizer)和代码生成器(codegenerator)。2图2-2C6000C/C++编译器(1)语法分析器语法分析

4、器的功能是对C/C++代码进行预处理,进行语言检查,然后生成一个中间文件(.if)作为优化器或代码生成器的输入。语法分析器还对宏、包含文件(#include)、条件编译等进行处理。(2)优化器优化器对语法分析器输出的.if文件进行优化,目的是缩短代码长度和提高代码执行速度,生成.opt文件。所进行的优化包括针对C/C++代码的一般优化和针对C6000的优化,如重新安排语句和表达式,把变量分配给寄存器(寄存器变量),打开循环,模块级优化(若干个文件组成一个模块进行优化)等。(3)代码生成器代码生成器利用语法分析器和优化器产生的中间文件

5、,生成C6000汇编代码(.asm)。代码生成器也可以直接对中间文件(.if)进行处理生成汇编代码。编译过程可以通过编译器的各种选项进行控制。除了C/C++编译选项外,还有控制ANSIC类型检查的选项、与C6000有关的设置选项、语法分析器选项、优化器选项、函数内嵌选项、汇编器选项、文件默认扩展名设置选项、文件目录设置选项、链接器选项等等。3下面是一些常用的编译选项:-g,对编译结果没有影响,只是方便调试。作用是在输出文件中加入进行符号调试所需的伪指令。使用-g选项会使得代码生成器完成的某些优化不能进行。选项-g和-o一起使用,编

6、译结果是与符号调试兼容的最优化代码。-k,默认情况下,当汇编过程介绍后,C/C++编译器和汇编优化器产生的临时汇编文件会被自动删除,使用-k选项可以保留这些汇编文件。选项-k在需要查看优化后的程序循环时特别有用。-s,启动交叉列表功能,即把优化器的注释(使用了选项-On)或C/C++语句(没有使用选项-On)与C/C++编译器生成的汇编代码放在一个文件里。选项-s包括了-k的功能。C/C++代码的优化在语法分析之后和代码生成之前进行,通过编译器的优化器选项-o启动,有4个优化级别(-o0,-o1,-o2,-o3,默认为-o2),

7、参见表2-1。表2-1C6000C/C++编译器的优化选项优化选项作用优化级别-o0优化寄存器的使用低-o1本地优化-o2或-o全局优化高-o3文件级优化除了由优化器完成的优化外,C/C++编译器的代码生成器也完成一些优化工作。这些优化工作不受优化选项的影响。优化器所完成的最重要的优化处理是软件流水(softwarepipeline)。从-o2开始优化器对软件循环进行软件流水处理。软件流水是专门针对循环代码的一种优化技术,利用软件流水可以生成非常紧凑的循环代码,这也是C6000的C/C++编译器能够达到较高编译效率的主要原因。在默

8、认情况下,优化器对每个C/C++文件分别进行优化。在某些情况下,如果能够在整个程序范围内进行优化,则优化的效率还可以提高,此时可以在编译选项内加入-pm,它的作用是把一个程序所包含的所有C/C++文件合成一个模块进行优化处理。注意:在

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。