DSP

ccs的工具以及不同文件的作用

2019-07-13 14:42发布

 CCS里面包含了C编译器,汇编优化器,汇编器,连接器和其他一下工具 1 C编译器可以对符合ANSI标准C代码进行编译,包含语法分析器,C优化器和代码产生器。语法分析器对C语言进行预处理,语法检查,产生中间文件.if,作为C优化器和代码产生器输入文件。C优化器是对语法分析器.if文件进行优化,较少代码长度和提高执行效率,生成.opt文件。代码优化器将前二者生成结果生成汇编文件(asm)。C代码优化器有不同优化级别,-o0 –o1  -o2 –o3 一般默认-o2,可以在CCS的工程选项中设置 CCS可以通过选项来设置。默认情况下,优化器是对每个文件分别进行优化,但是在需要全局优化时候可以通过-PM选项,把一个程序包含所有C文件合成一个模块进行优化,在下图最后一个选项可以完成该功能。 1 2.汇编优化器  汇编优化器对用户编写线性汇编代码作为输入,输出标准汇编语言 3。汇编器 汇编器可以将C编译器产生汇编文件或者汇编优化器产生汇编文件以及文档管理器宏 产生目标coff文件 4连接器 接受可接受地址目标文件(.obj)作为输入,生成可执行目标文件.out.TI连接器是根据用户说明程序和数据存放地址,把汇编产生浮动地址代码和数据映射到用户实际地址空间。 二。CCS的各种文件说明 1.include头文件(.h)主要作用
头文件,一般用于定义程序中函数、参数、变量和一些宏单元,同库函数配合使用。因此,在使用库时,必须用相应头文件说明。
2.DSP/BIOS CONFIG FILES
开发基于DSP/BIOS程序保存BIOS配置之后自动产生文件。在保存BIOS配置时候会产生program.cbd/programcfg.h54 /programcfg.s54/programcfg.cmd/programcfg.h/programcfg_c.c(C5000 example,program为你项目名),这些文件被分配在project不同目录。
3.Source Files
源程序,实现DSP系统指定功能主要代码部分
4.Program.cmd
链接文件,在源文件经过汇编器(Assembler)输出OBJ Files(目标文件)需要通过Linker(链接器)才能得到OUT files,在链接阶段Linker根据.cmd里面存储区、Section分配以及lib来链接rst.lib、csl.lib、DSP/BIOS library跟对段重定位
5.Library Filers作用
Rst.lib:C语言实时运行支持库,建立C运行环境,由_c_int00主要完成设置堆栈指针、初始化全局变量、调用main()
Csl.lib:芯片支持库,实现片内外设操作
DSPLIB/IMGLIB:信号处理库,利用针对不同DSP优化函数进行数学运算
通用视/音LIB:例如263、264、jpeg、G.7XX、mp3、wmv。。。
其他自己封装LIB:例如bsl.lib(board source library),对DSP系统板上资源操作。
其他文件:
.opt工程关于开发环境参数文件。如工具条位置等信息;
.aps (AppStudio File),资源辅助文件,二进制格式,一般不用去管他.
.clw ClassWizard信息文件,实际上是INI文件格式,有兴趣可以研究一下.有时候ClassWizard出问题,手工修改CLW文件可以解决.如果此文件不存在话,每次用ClassWizard时候绘提示你是否重建.
.dsp (DeveloperStudio Project):项目文件,文本格式,不过不熟悉话不要手工修改.
DSW(DeveloperStudio Workspace)是工作区文件,其他特点和DSP差不多.
.plg 是编译信息文件,编译时error和warning信息文件(实际上是一个html文件),一般用处不大.在Tools->Options里面有个选项可以控制这个文件生成.
.hpj (Help Project)是生成帮助文件工程,用microsfot Help Compiler可以处理.
.mdp (Microsoft DevStudio 
Project)是旧版本项目文件,如果要打开此文件话,会提示你是否转换成新DSP格式.
.bsc 是用于浏览项目信息,如果用Source Brower话就必须有这个文件.如果不用这个功能话,可以在Project Options里面去掉Generate Browse Info File,可以加快编译速度.
.map 是执行文件映像信息纪录文件,除非对系统底层非常熟悉,这个文件一般用不着.
.pch (Pre-Compiled File)是预编译文件,可以加快编译速度,但是文件非常大.
.pdb (Program Database)记录了程序有关一些数据和调试信息,在调试时候可能有用.
.exp 只有在编译DLL时候才会生成,记录了DLL文件中一些信息.一般也没什么用.
.ncb 无编译浏览文件(no compile browser)。当自动完成功能出问题时可以删除此文件。build后会自动生成。
原文地址:http://hi.baidu.com/ueszx/item/32961a171bb2578e88a9560e