DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt

DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt

ID:50085991

大小:1.20 MB

页数:217页

时间:2020-03-08

DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt_第1页
DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt_第2页
DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt_第3页
DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt_第4页
DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt_第5页
资源描述:

《DSP处理器原理与应用 教学课件 作者 鲍安平 全书第4章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章DSP软件开发4.1程序定位方式的比较4.2公共目标文件格式4.3DSP汇编程序简介4.4DSPC语言程序基础4.5TIDSP软件开发平台4.6本章小结习题与思考题在第3章中,简单介绍了DSP软件开发的一般流程以及TI公司的eXpressDSP,从中我们可以看到,DSP软件的开发与普通软件的开发有很大的不同。本章重点讲述TI公司DSP的软件开发基础、软件开发方法以及软件的架构。一般来说程序是由代码和数据组成的。要运行的程序其代码和数据必须存放在CPU能够寻址的存储空间里,而代码和数据是以代码块和数据块的形式存放的。代码块和数据块是程序

2、的最小单元,一个代码块或数据块在存储空间中连续、顺序存放,不同的代码块或数据块,可以存放于不同的存储空间中。   如何确定这些代码块或数据块在存储空间的地址,就是我们通常说的程序的定位。程序的定位有以下三种。4.1程序定位方式的比较1.编译时定位编程时由ORG语句确定代码块和数据块的绝对地址,编译器以此地址为首地址,连续、顺序地存放该代码块或数据块,也就是说我们在编程的时候已经知道程序存放的大概位置。MCU系统常采用这种方式。这种定位方式属于绝对定位,其优点是简单、容易上手;缺点是程序员必须熟悉硬件资源,模块化编程差且不支持工程化管理。2.

3、链接时定位编程时以“SECTIONS”伪指令区分不同的代码块或数据块。编译器每遇到一个“SECTIONS”伪指令,从0地址重新开始一个代码块或数据块。链接器将同名的“SECTIONS”合并,并按.cmd文件中的“SECTIONS”命令进行实际的定位。程序员在编写程序的时候并不知道程序最终的具体地址。具体的“SECTIONS”伪指令将在本章的后面部分加以介绍。DSP系统常采用这种方式。这种定位方式属于相对定位,其缺点是复杂灵活、上手较难;优点是程序员不必熟悉硬件资源,模块化编程强且支持工程化管理。3.加载时定位编程、编译和链接时均未对程序进行

4、绝对定位。程序运行前,由操作系统对程序进行重新定位,并加载到存储空间中。例如,在Windows操作系统下运行一个应用软件,运行前我们并不知道应用软件将会被加载到内存的什么位置。PC机系统常采用这种方式。这种定位方式也属于相对定位,其缺点是必须要有操作系统支持;优点是模块化编程强且支持工程化管理。   由上我们可以看出,DSP软件的定位方式介于MCU与GPP之间。下面我们来介绍“SECTIONS”伪指令的具体情况以及相关的知识。4.2.1段(sections)汇编器和链接器建立的目标文件,是一个可以在TMS320C55X器件上执行的文件。这些

5、目标文件的格式称为公共目标文件格式,即COFF(CommonObjectFileFormat)。由于COFF在编写汇编语言程序时采用代码和数据块的形式,会使模块化编程和管理变得更加方便。这些代码和数据段称为“段”。因为当编写一个汇编语言程序时,它可按照代码段和数据段来考虑问题。汇编器和链接器都有一些命令建立并管理各种各样的段。4.2公共目标文件格式段(sections)是COFF文件中最重要的概念。每个目标文件都被分成若干个段。一个段就是最终在存储器映像中占据连续空间的一个数据或代码块。在编制汇编语言源程序时,程序按段组织,每行汇编语句都从

6、属一个段,且由段汇编伪指令标明该段的属性。目标文件中的每一个段是相互独立的。在编程时,段没有绝对定位,每个段都认为是从“0”地址开始的一块连续的存储空间,所以软件开发人员只需要将不同的代码块和数据块放到不同的段中,而无需关心这些段究竟定位于系统何处。采用段的优点是便于程序的模块化编程,便于工程化管理,可将软件开发人员和硬件开发人员基本上分离开。一般地,COFF目标文件都包含3个缺省的段:.text段:通常包含可执行代码;.data段:通常包含已初始化数据;.bss段:通常为未初始化变量保留存储空间。   另外,汇编器与链接器允许程序员建立和

7、链接自定义的段,这些段的用法与上述3个缺省段的用法相类似。所有的段可以分为两大类,即已初始化段和未初始化段。4.2.2汇编器对段的处理汇编器对段的处理是通过段伪指令区分出各个段,且将段名相同的语句汇编在一起。每个程序都可以由几个段结合在一起形成。   汇编器有5个伪指令支持该功能,分别是:.bss(未初始化段).usect(未初始化段).text(已初始化段).data(已初始化段).sect(已初始化段)如果汇编语言程序中一个段伪指令都没有用,那么汇编器把程序中的内容都汇编到.text段。1.未初始化段未初始化段(Uninitialize

8、dSections)由.bss和.usect伪指令建立。未初始化段就是TMS320C55X在目标存储器中的保留空间,以供程序运行过程中的变量作为临时存储空间使用。在目标文件中,这

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

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

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