TMS320C54x系列DSP指令和编程指南——第1章 汇编语言工具概述
第1章 汇编语言工具概述
TMS320C54x DSP的汇编语言开发工具包括:
■ Assembler
■ Archiver
■ Linker
■ Absolute lister
■ Cross-reference utility
■ Hex conversion utility
■ Mnemonic-to-algebraic translator utility
本章将概要介绍上述工具在软件开发流程中如何协调工作,并对每个开发工具进行简要说明。
1.1 软件开发工具概述
图1.1给出了C54x的软件开发流程,阴影部分强调的是最常用的开发流程,其它部分是可选的,用来增强开发能力。

1.2 软件开发工具介绍
下面简要介绍图1.1中的各个开发工具。
■ C/C++编译器 将C语言或C++语言的源代码转换成C54x的汇编语言代码。编译器工具包中也包含了建库工具,用来建立用户自己的运行时支持库。
■ 汇编器 将汇编语言源代码为COFF格式的机器语言目标代码。C54有两种汇编器,分别用来汇编助记符汇编语言源文件和代数汇编语言源文件。源文件中可以包含指令、汇编伪指 令以及宏伪指令。用户可以使用汇编伪指令来控制汇编器的操作,如源列表的格式、数据对齐以及段的内容等。
■ 连接器 将汇编器产生的多个可重新定位的COFF目标文件组合起来,生成一个可执行的COFF目标程序块。可靠垫的COFF目标程序块生成后,将符号与存储位置对应起来,并且解决对这些符号的访问。它也接受之前连接器运行时所创建的文档库成员和输出模块。连接器伪指令用来组合目标文件的段,把段或符号限定在某个地址或某些存储器地址范围内,并定义或者重新定义全书符号等。
■ 文档管理器 将一组文件收集保存到单个档案文件中,称为库。例如,用户可以将几个宏文件保存为一个宏库。汇编器搜索库,并且将其中的成员作为宏块供源文件调用。用户也可以将多个目标文件保存成一个目标程序库,连接器在执行连接时将外部对此目标程序的调用导入到库中。
■ 助记符指令到代数指令的转换器 将包含助记符指令的源文件转换成包含代数指令的源文件。
■ 建库工具 用来建立用户定制的C/C++运行时支持库。TI提供的标准运行时支持库函数的源代码存储在rts.src文件中,目标代码存储在文件trs.lib中。
■ 十六进制转换工具 TMS320C54x中的CCS调试器以COFF文件为输入,但是绝大多数的EPROM编程器却不能识别COFF文件,需要使用十六进制转换工具将OCFF目标文件转换成TI-tagged格式、Intel格式、Motorola格式或者Tektronix格式的目标文件后才能下载到EPROM编程器中。
■ 地址列表器 读取连接后的目标文件,创建.abs输出文件。用户可以汇编.abs文件产生一个包含绝对地址而非相对地址的列表。如果不用绝对地址列表器,产生这样一个列表是很麻烦的工作,可能需要很多手工操作。
■ 交叉引用列表器 用目标文件产生一个交叉引用的列表,显示符号、符号的定义它们在已经连接的源文件中的引用情况。
上述开发处理流程生成一个可以在C54x目标系统中执行的程序。可以使用以下三种调试工具精简和优化代码:
■ 软件仿真器
■ 评估板(EVM)
■ XDS仿真器
TMS320C54x系列DSP指令和编程指南——第1章 汇编语言工具概述的更多相关文章
- TMS320C54x系列DSP指令和编程指南——第2章 通目标文件格式介绍
第2章 通用目标文件格式介绍 汇编器和连接器可以产生在TMS320C54x器件上执行的目标文件,这些目标文件的格式称为通用目标文件格式(COFF).采用COFF格式有利于程序的模式化编程,因为它支持用 ...
- TMS320C54x系列DSP的CPU与外设——第1章 绪论
第1章 绪论 TMS320C54x DSP是TMS320系列DSP产品中的定点数字信号处理器.C54x DSP满足了实时嵌入式应用的一些要求,例如通信方面的应用. C54x的中央处理单元(CPU)具有 ...
- TMS320C54x系列DSP的CPU与外设——第2章 TMS320C54x DSP体系结构总体介绍
第2章 TMS320C54x DSP体系结构总体介绍 本章介绍TMS320C54x DSP体系结构的概况,包括中央处理单元(CPU).存在器和片内外设. C54x DSP采用了高级的改进哈佛结构,用8 ...
- TMS320C54x系列DSP的CPU与外设——第8章 流水线
第8章 流水线 本章描述了TMS320C54x DSP流水线的操作,列出了对不同寄存器操作时的流水线延迟周期.(对应英语原文第7章) 8.1 流水线操作 TMS320C54x DSP有一个6段的指令流 ...
- TMS320C54x系列DSP的CPU与外设——第3章 存储器
第3章 存储器 本章介绍了TMS320C54x DSP存储器的构成和操作.一般来说,C54x器件共有192K 16位字的存储窨,这个空间分成3个专用的部分:64K字程序.64K字数据和64K字I/O ...
- TMS320C54x系列DSP的CPU与外设——第5章 数据寻址
第5章 数据寻址 C54x DSP提供7种基本寻址方式. ■ Immediate addressing uses the instruction to encode a fixed value. ...
- C++ 系列:Boost Thread 编程指南
转载自:http://www.cppblog.com/shaker/archive/2011/11/30/33583.html 作者: dozbC++ Boost Thread 编程指南0 前言1 创 ...
- erlang 编程指南 第三章-顺序编程 课后练习
1. sum(3) => 6; sum(1,3) => 6; sum(6,6) => 6; sum(N) when is_integer(N) -> sum_acc(N,0); ...
- 安卓权威编程指南 - 第五章学习笔记(两个Activity)
学习安卓编程权威指南第五章的时候自己写了个简单的Demo来加深理解两个Activity互相传递数据的问题,然后将自己的学习笔记贴上来,如有错误还请指正. IntentActivityDemo学习笔记 ...
随机推荐
- Mac OSX 无法SSH远程的原因
在mac中开启了远程共享,拿windows上的putty 死活无法ssh上去. 后来下载了个新版的putty, 连上了.
- [转]如何让div中的内容垂直居中
转自:http://blog.163.com/yan_1990/blog/static/197805107201211311515454/ 虽然Div布局已经基本上取代了表格布局,但表格布局和Div布 ...
- SQL Server Profiler教程
SQL Server Profiler是SQL Server企业版自带的一个sql 语句跟踪和分析工具,功能十分强大.熟练地使用它,对我们分析数据库性能问题很有帮助,比如当数据访问使用EF等ORM框架 ...
- JavaWeb chapter 2 Servlet
1. 什么是Servlet: Servlet是运行于Web容器中,按照其自身规范编写的Java应用程序. Servlet是用Java语言编写的,它是一个Java类,因而Servlet遵守所有Java ...
- 一个 11 行 Python 代码实现的神经网络
一个 11 行 Python 代码实现的神经网络 2015/12/02 · 实践项目 · 15 评论· 神经网络 分享到:18 本文由 伯乐在线 - 耶鲁怕冷 翻译,Namco 校稿.未经许可,禁止转 ...
- Spring Bean配置
Spring 是什么 •Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能. •Spring 是一个 IOC(DI) 和 ...
- 转发自AstralWind的博客(python正则表达式)
原文地址:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python ...
- SparkSQL之旅
1.准备数据employee.txt ,Gong Shaocheng, ,Li Dachao, ,Qiu Xin, ,Cheng Jiangzhong, ,Wo Binggang, 将数据放入hdfs ...
- iOS 开发获取唯一标识
在做流量精灵的时候有这样一个需求,帐户默认需要取手机的imsi 信息.这就有一个好处,即便用户删除我们的应用后从新下载,下次进入时他们还会以同样的身份登陆,并且获得原先纪录.这样不仅对于开发公司人员来 ...
- Ubuntu 14.04中Mysql中文乱码问题最小化解决
[client]default-character-set=utf8 [mysqld]default-storage-engine=INNODBcharacter-set-server=utf8col ...