实时数字信号处理技术c软件开发代码产生工具和

实时数字信号处理技术c软件开发代码产生工具和

ID:27422119

大小:578.01 KB

页数:73页

时间:2018-12-02

实时数字信号处理技术c软件开发代码产生工具和_第1页
实时数字信号处理技术c软件开发代码产生工具和_第2页
实时数字信号处理技术c软件开发代码产生工具和_第3页
实时数字信号处理技术c软件开发代码产生工具和_第4页
实时数字信号处理技术c软件开发代码产生工具和_第5页
资源描述:

《实时数字信号处理技术c软件开发代码产生工具和》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实时数字信号处理技术C6000软件开发(3)代码产生工具和C6000程序结构北京理工大学电子工程系李云杰(O)010-68940716liyunjie@bit.edu.cn学习目标软件开发流程和开发工具C6000程序基本结构代码产生工具代码产生工具(CodeGenerationTools)C编译器汇编优化器汇编器连接器其它一些工具C编译器C编译器对符合ANSI标准的C代码进行编译,产生C6000汇编代码,分为:语法分析器C优化器代码产生器C优化器包括针对C代码的一般优化和针对C6000的优化:重新安排语句和表达式把变量分配

2、给寄存器打开循环…具有四个优化级别优化选项作用优化级别-o0优化寄存器的使用低高-o1本地优化-o2或-o全局优化-o3文件级优化C优化器C代码产生器也可以完成一些优化工作C优化器最重要的优化处理-软件流水-pm把一个程序所有的C文件合成一个模块进行优化处理效率可达汇编语言代码的70%~80%汇编优化器对线性汇编代码(.sa文件)进行优化输入:用户编写的线性汇编代码输出:标准汇编代码.asm文件编程过程不需考虑:并行指令安排指令延迟寄存器使用效率可达汇编语言代码的95%~100%汇编器产生可重新分配地址的机器语言目标文件输

3、入:C编译器产生的汇编文件汇编优化器输出的汇编文件文档管理器管理的宏库内的宏输出:目标代码是TI的COFF格式汇编代码内除机器指令外,还有汇编伪指令连接器根据用户说明的程序和数据存放地址,把汇编器产生的浮动地址代码和数据映射到用户系统的实际地址空间.输入:可重新分配地址的目标文件(.obj)输出:可执行的目标文件(.out)其它工具以及C运行库文档管理器(Archiver)建库工具(Library-buildUtility)十六进制转换工具(HexConversionUtility)交叉引用列表工具(Cross-refer

4、enceLister)C运行支持库(Run-timeSupportLibrary)c6000cgtoolsincludec6000cgtoolslibDSPs程序的仿真模式仿真模式优点缺点软件仿真simulator主机上的仿真软件进行模拟,无需目标板速度慢;无法仿真某些外设的功能硬件仿真emulator速度快仿真结果与系统实际一致仿真程序下载到DSP芯片内运行,需要目标板C6000程序基本结构C程序的基本结构汇编代码结构线性汇编语言结构C程序和汇编代码的接口实现C程序的基本结构主程序main.c连接命令文件.c

5、mdc6000cgtoolsliblnk.cmdC运行库文件rtsxxxx.libc6000cgtoolslibC程序的基本结构若从EPROM中加载要运行的程序还需要Vectors.asmIST(中断服务表)被连接分配到0地址C运行环境入口点:_c_int00rtsxxx.libC程序的基本结构CCS带有一个函数库dev6x.lib其中包含有中断向量表,无需程序员写vectors.asm中断“挂”接也很方便针对C6000的外设预定义了大量的外设地址和宏定义regs.h中有GET_BIT(),SET_BIT()

6、,GET_FIELD()可以方便的对寄存器进行位操作.几乎所有外设寄存器的地址都已经定义C程序的基本结构使用devlib实现中断“挂”接Preprocesser中头文件搜索路径设置为:..c6000evm6xdspinclude将dev6x.lib文件加入项目..c6000evm6xdsplib在.cmd文件中,将.vec段分配在0地址在主程序中使用#include包含头文件在main()中调用intr_reset()函数调用intr_hook()等函数C6000编译器的C环境实现定义:Cr

7、un-timeenvironmentTheruntimeparametersinwhichyourprogrammustfunction.Theseparametersaredefinedby1.thememoryconventions2.registerconventions3.stackorganization4.functioncallconventions5.systeminitialization.存储器模型C6000编译器把整个存储区当作单个线性存储块,并将它分为代码区和数据区编译器假定目标存储器的全部32-b

8、it地址空间是可用的。定义存储器映象并将代码和数据分配到目标存储器的是连接器,而非编译器。Cmd文件是linker使用的。C6000的存储器映射程序和数据的存放不是随意的C6000存储器地址映射(MemoryMap)决定着各种资源的访问地址MAP文件-m选项连接器输出存储器映象文件(.map)详细说明存

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

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

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