DSP的开发环境与工具.pdf

上传人:灯火****19 文档编号:134976442 上传时间:2020-06-10 格式:PDF 页数:60 大小:2.99MB
返回 下载 相关 举报
DSP的开发环境与工具.pdf_第1页
第1页 / 共60页
DSP的开发环境与工具.pdf_第2页
第2页 / 共60页
DSP的开发环境与工具.pdf_第3页
第3页 / 共60页
DSP的开发环境与工具.pdf_第4页
第4页 / 共60页
DSP的开发环境与工具.pdf_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《DSP的开发环境与工具.pdf》由会员分享,可在线阅读,更多相关《DSP的开发环境与工具.pdf(60页珍藏版)》请在金锄头文库上搜索。

1、1 第四章第四章 DSP的开发 环境与工具 的开发 环境与工具 DSP开发环境和工具的重要性开发环境和工具的重要性 如何提高开发速度 降低开发难度 是 所有开发者所共同关心的 如何提高开发速度 降低开发难度 是 所有开发者所共同关心的 DSP的硬软件开发环境如何 开发工具的 功能是否丰富 使用是否方便 其所得 结果的效果怎样 等等 已经成为该DSP 是否为用户所接受 从而得到推广使用 得重要指标之一 DSP的硬软件开发环境如何 开发工具的 功能是否丰富 使用是否方便 其所得 结果的效果怎样 等等 已经成为该DSP 是否为用户所接受 从而得到推广使用 得重要指标之一 2 DSP开发环境和工具的重

2、要性开发环境和工具的重要性 各DSP生产厂商以及许多第三方公司作了 极大的努力 为DSP系统集成和硬软件的 开发提供了大量有用的工具 使其成为 DSP发展过程中最为活跃的领域之一 并 随着DSP技术的发展而不断地完善 各DSP生产厂商以及许多第三方公司作了 极大的努力 为DSP系统集成和硬软件的 开发提供了大量有用的工具 使其成为 DSP发展过程中最为活跃的领域之一 并 随着DSP技术的发展而不断地完善 本章仍然以TI公司的本章仍然以TI公司的TMS320TMS320系列DSP 尤 其是目前广泛使用的 系列DSP 尤 其是目前广泛使用的 C54xxC54xx为例 介绍 目前使用得比较广泛的开发

3、环境和工具 为例 介绍 目前使用得比较广泛的开发环境和工具 DSP的开发环境和工具的开发环境和工具 集成开发环境集成开发环境CCS 编译器 连接器 优化 编译器 连接器 优化C编译器 转换 工具等 编译器 转换 工具等 CMD内存定位文件内存定位文件 DSP BIOS 实时操作系统实时操作系统 3 D S P 开 发 流 程 图 开 发 流 程 图 4 1 代码生成工具代码生成工具 4 每个每个DSP系列都提供代码生成工具系列都提供代码生成工具 C编译器编译器 C compiler 将将C源程序代码编译 成为 源程序代码编译 成为320系列对应汇编语言源代码 编译 包中包括一个 系列对应汇编语

4、言源代码 编译 包中包括一个外壳程序外壳程序 shell program 一个 一个优化器优化器 optimizer 和一个内部列表 公用程序 和一个内部列表 公用程序 interlist utility 汇编器汇编器 assembler 将汇编语言源文件转 变为基于公用目标文件格式 将汇编语言源文件转 变为基于公用目标文件格式 COFF 的 机器语言目标文件 的 机器语言目标文件 每个每个DSP系列都提供代码生成工具系列都提供代码生成工具 连接器 连接器 linker 将目标文件连接起来 产生一个可执行模块 它能调整并解决 外部符号参考 连接器的输入是可重新 定位的 将目标文件连接起来 产生

5、一个可执行模块 它能调整并解决 外部符号参考 连接器的输入是可重新 定位的COFF目标文件和目标库文件 目标文件和目标库文件 归挡器 归挡器 archiver 将一组文件归入一 个归挡文件 也叫归档库 另外 归档 器允许通过删除 替代 提取或增加文 件来调整库 归档器最有用的应用之一 是建立目标文件库 将一组文件归入一 个归挡文件 也叫归档库 另外 归档 器允许通过删除 替代 提取或增加文 件来调整库 归档器最有用的应用之一 是建立目标文件库 5 每个每个DSP系列都提供代码生成工具系列都提供代码生成工具 助记符到代数语言的转换公用程序 助记符到代数语言的转换公用程序 mnemonic to

6、algebraic translator utility 转换汇编语言源文件 该程序 接收含有助记符的指令 并将其转换为 代数指令 产生一个含有代数指令的汇 编语言源文件 转换汇编语言源文件 该程序 接收含有助记符的指令 并将其转换为 代数指令 产生一个含有代数指令的汇 编语言源文件 每个每个DSP系列都提供代码生成工具系列都提供代码生成工具 运行支持库公用程序 运行支持库公用程序 runtime support utility 建立用户的建立用户的C语言运行支持库 标准运行支持库函数在 语言运行支持库 标准运行支持库函数在rts src里提供源代 码 在 里提供源代 码 在rts lib里提

7、供目标代码 里提供目标代码 运行支持库 运行支持库 runtime support library 包含包含ANSI标准运行支持函数 编译器公 用程序函数 浮点算术函数和被 标准运行支持函数 编译器公 用程序函数 浮点算术函数和被C54x编 译器支持的 编 译器支持的C输入输入 输出函数 输出函数 6 每个每个DSP系列都提供代码生成工具系列都提供代码生成工具 TI DSP的调试器接收可执行的的调试器接收可执行的COFF文 件作为输入 但大多可擦除存储器却不 支持 文 件作为输入 但大多可擦除存储器却不 支持COFF文件 文件 十六进制转化公用程序 十六进制转化公用程序 hex convers

8、ion utility 将将COFF目标 文件转化为 目标 文件转化为TI Tagged ASCII hex Intel Motorola S Tektronix等目标格 式 从而可以将转化文件装载在可擦除 程序存储器里 同时该转换工具还可以 自动生成 等目标格 式 从而可以将转化文件装载在可擦除 程序存储器里 同时该转换工具还可以 自动生成BOOTLOADER程序所需要的 引导信息 程序所需要的 引导信息 每个每个DSP系列都提供代码生成工具系列都提供代码生成工具 绝对列表器 绝对列表器 absolute lister 接收已经 连接的目标文件作为输入 并产生 接收已经 连接的目标文件作为输

9、入 并产生 abs文 件作为输出 汇编 文 件作为输出 汇编 abs文件后产生含有绝 对地址的列表 文件后产生含有绝 对地址的列表 交叉引用列表 交叉引用列表 Cross Reference Lister 用目标文件来产生一个交叉引用列表 列出符号 符号的定义 以及它们在已 连接的源文件中的引用 用目标文件来产生一个交叉引用列表 列出符号 符号的定义 以及它们在已 连接的源文件中的引用 7 汇编器包括以下功能汇编器包括以下功能 处理汇编语言源文件中的源语句 产生一个可重新定位的目标文件 处理汇编语言源文件中的源语句 产生一个可重新定位的目标文件 允许将代码分段允许将代码分段 定义和引用全局符号

10、定义和引用全局符号 汇编条件块汇编条件块 支持宏调用 并允许在程序内或在 库中定义宏 支持宏调用 并允许在程序内或在 库中定义宏 asm500 input file object file listing file options input file 汇编源文件名 缺省后缀为汇编源文件名 缺省后缀为 asm object file 编译输出的编译输出的OBJ文件名文件名 缺省后缀为缺省后缀为 obj listing file 产生的列表文件名产生的列表文件名 缺省后缀为缺省后缀为 lst options 编译器使用的各种选择 常用选项有 编译器使用的各种选择 常用选项有 c 若使用该选项 编

11、译器忽略字母的大小写 例如若使用该选项 编译器忽略字母的大小写 例如 abc与与ABC是一样的 系统缺省为区分大小写 是一样的 系统缺省为区分大小写 ASM500命令格式如下命令格式如下 8 i 设置搜索路径 通知编译器在指定的搜索 路径中去查找 设置搜索路径 通知编译器在指定的搜索 路径中去查找 copy include中的文件 用法举 例 中的文件 用法举 例 ic c54x l 小写的小写的L 在编译时产生列表文件 缺省 后缀为 在编译时产生列表文件 缺省 后缀为 lst mg 汇编源程序使用代数指令集 或在源代码 中使用 汇编源程序使用代数指令集 或在源代码 中使用 Algebraic

12、Algebraic s 将所有的符号都放入符号表 若不使用该 选项 编译器仅将全局变量放入符号表 将所有的符号都放入符号表 若不使用该 选项 编译器仅将全局变量放入符号表 v 指定版本 特别是需要使用指定版本 特别是需要使用 BOOTLOADER时 应加时 应加 v548开关 开关 不同系列使用不同的汇编工具不同系列使用不同的汇编工具 由于TI的各个DSP系列所使用的汇编指令 机器代码各不相同 所以应使用相应的 编译器编译 由于TI的各个DSP系列所使用的汇编指令 机器代码各不相同 所以应使用相应的 编译器编译 若使用TMS320C3X 4X系列的DSP 编译器 命令为 若使用TMS320C3

13、X 4X系列的DSP 编译器 命令为ASM30 EXEASM30 EXE C2000系列使用C2000系列使用 DSPA EXEDSPA EXE C6000系列使用C6000系列使用ASM6X EXEASM6X EXE 有关编译器的详细的选项说明请参阅相 应的技术手册 有关编译器的详细的选项说明请参阅相 应的技术手册 9 5 1 2 连接器 5 1 2 连接器 连接器将目标文件连接成一个可执行目 标模块 连接器将目标文件连接成一个可执行目 标模块 当它产生一个可执行模块时 执行重定 位操作并解决外部引用的问题 当它产生一个可执行模块时 执行重定 位操作并解决外部引用的问题 连接器指令允许合并目

14、标文件 文件 块 把块和标志合并到特定的地址中 以及定义或重新定义全局符号 连接器指令允许合并目标文件 文件 块 把块和标志合并到特定的地址中 以及定义或重新定义全局符号 连接器有以下的功能连接器有以下的功能 定义一个与目标系统存储器一致的存储 模块 定义一个与目标系统存储器一致的存储 模块 重新定位块 以赋予它们最后的地址重新定位块 以赋予它们最后的地址 在目标系统存储器内将块重新定位到特 定的区域 在目标系统存储器内将块重新定位到特 定的区域 定义或重定义全局变量 以赋予它们特 定的值 定义或重定义全局变量 以赋予它们特 定的值 解决未定义的输入文件之间的外部引用解决未定义的输入文件之间的

15、外部引用 10 连接工具的使用连接工具的使用 使用使用LNK命令可以将一个或多个命令可以将一个或多个OBJ文 件连接为一个 文 件连接为一个 OUT文件 文件 在连接时 可以通过段定位控制命令将 不同的代码 数据写入不同的内存单元 在连接时 可以通过段定位控制命令将 不同的代码 数据写入不同的内存单元 注意 注意 LNK生成的生成的OUT文件不是纯二进 制代码文件 而是包含代码 符号表 代码定位信息的复合文件 文件不是纯二进 制代码文件 而是包含代码 符号表 代码定位信息的复合文件 下面我们以TMS320中的C5000系列为例 LNK500的使用格式 的使用格式 e global symbol

16、 定义程序的进入点 global symbol必须在源程序中使 用 global命令说明 e global symbol 定义程序的进入点 global symbol必须在源程序中使 用 global命令说明 c 使用C编译器的ROM初始化模式 c 使用C编译器的ROM初始化模式 cr 使用C编译器的RAM初始化模式 lnk500 cr 使用C编译器的RAM初始化模式 lnk500 options filename 1 filename n options filename 1 filename n LNK500命令常用的选项有LNK500命令常用的选项有 11 LNK500命令常用的选项有LNK500命令常用的选项有 i dir 指定库文件的路径 i dir 指定库文件的路径 l filename 指定连接时使用的库文 件名 l filename 指定连接时使用的库文 件名 m filename 生成MAP文件 m filename 生成MAP文件 o filename 指定生成的OUT文件名 系统缺省为a out o filename 指定生成的OUT文件名 系统缺省为a out

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号