




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院4.1 TMS320F28x系列系列DSP的寻址方式的寻址方式 4.1.1 寻址方式选择位寻址方式选择位AMODE 4.1.2 直接寻址方式直接寻址方式 4.1.3 堆栈寻址方式堆栈寻址方式 4.1.4 间接寻址方式间接寻址方式 4.1.5 寄存器寻址方式寄存器寻址方式 4.1.6 其他寻址方式其他寻址方式 4.1.7 32位操作数的定位位操作数的定位4.2 TMS320F28x系列系列DSP指令系统概述指令系统概述 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院 寻址方式是指寻址方式是指CPU根据指令中给出的地址信息根据指
2、令中给出的地址信息来寻找指令中操作数物理地址的方式,即获得操作来寻找指令中操作数物理地址的方式,即获得操作数的方式。指令系统即各种指令的集合,或称指令数的方式。指令系统即各种指令的集合,或称指令集。本章简要介绍集。本章简要介绍C28x系列(系列(TMS320F2812属于属于C28x系列)系列)DSP的寻址方式和指令系统。的寻址方式和指令系统。 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院4.1 TMS320F28x系列系列DSP的寻址方式的寻址方式 C28x系列系列DSP的的CPU支持支持4种基本的寻址方种基本的寻址方式:直接寻址方式、堆栈寻址方式、间接寻址方式式:直接寻址方式
3、、堆栈寻址方式、间接寻址方式和寄存器寻址方式。另外,该系列和寄存器寻址方式。另外,该系列DSP芯片还支持芯片还支持其他的寻址方式:数据其他的寻址方式:数据/程序程序/IO空间立即寻址方式、空间立即寻址方式、程序空间间接寻址方式和字节寻址方式。程序空间间接寻址方式和字节寻址方式。 TMS320F2812支持除支持除IO空间立即寻址方式外空间立即寻址方式外的其他寻址方式。的其他寻址方式。周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院TMS320C28xTMS320C28x指令集采用指令集采用7 7种存储器寻址方式:种存储器寻址方式: 直接寻址方式直接寻址方式 堆栈寻址方式堆栈寻址方式
4、间接寻址方式间接寻址方式 寄存器寻址方式寄存器寻址方式 数据数据/ /程序程序/IO/IO空间立即寻址方式空间立即寻址方式 程序空间间接寻址程序空间间接寻址 字节寻址方式字节寻址方式 TMS320F2812 TMS320F2812支持除支持除IOIO空间立即寻址方式外的其空间立即寻址方式外的其他寻址方式。他寻址方式。周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院 F2812的大多数指令利用操作码中的位字段来选择寻的大多数指令利用操作码中的位字段来选择寻址方式和对寻址方式进行修改在址方式和对寻址方式进行修改在F2812指令系统中,这个指令系统中,这个位字段用于以下寻址方式:位字段用于
5、以下寻址方式:(1)loc16。为位数据访问选择直接堆栈间接寄存器寻址方式。为位数据访问选择直接堆栈间接寄存器寻址方式。(2)loc32。为位数据访问选择直接堆栈间接寄存器寻址方式。为位数据访问选择直接堆栈间接寄存器寻址方式。以上以上7种寻址方式都与种寻址方式都与“loc16/loc32”组合起来使用。组合起来使用。 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院由于由于F2812提供了多种寻址方式,因此用寻址方式选择位提供了多种寻址方式,因此用寻址方式选择位(AMODE)来选择位字段()来选择位字段(loc16/loc32)的解码。该)的解码。该位属于状态寄存器位属于状态寄存器S
6、T1。寻址方式可以大致归类如下:。寻址方式可以大致归类如下: AMODE该方式是复位后的默认方式,也是该方式是复位后的默认方式,也是F2812的的C/C+编译编译 器使用的方式。这种方式与器使用的方式。这种方式与C2xLP CPU的寻址方式不完全兼容。数据页指针的寻址方式不完全兼容。数据页指针 偏移量是位(在偏移量是位(在C2xLP CPU中是位),并且不支持所有的间接寻址方式。中是位),并且不支持所有的间接寻址方式。 AMODE该方式包括的寻址方式完全与该方式包括的寻址方式完全与C2xLP 器件的寻址方式器件的寻址方式 兼容。数据页指针的偏移量是位并支持所有兼容。数据页指针的偏移量是位并支持
7、所有C2xLP 支持的间接寻址方式。支持的间接寻址方式。4.1.1 寻址方式选择位寻址方式选择位AMODE 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院 在在F2812间接寻址方式中,使用哪个辅助寄存器指针在指令中并不间接寻址方式中,使用哪个辅助寄存器指针在指令中并不被明确指出。而在被明确指出。而在C2xLP的间接寻址方式中,位长度的辅助寄存器指的间接寻址方式中,位长度的辅助寄存器指针被用来选择当前使用哪个辅助寄存器以及下次操作将使用哪个辅助寄针被用来选择当前使用哪个辅助寄存器以及下次操作将使用哪个辅助寄存器。存器。 汇编器汇编器/编译器对编译器对AMODE位的追踪位的追踪 编译
8、器总是假定编译器总是假定AMODE=0,所以它只使用对,所以它只使用对AMODE=0有效的寻址模式。而汇编器可以通过设置命令行选项实现默认有效的寻址模式。而汇编器可以通过设置命令行选项实现默认AMODE=0或者或者AMODE=1。 v28 ;假定假定AMODE=0(C28x寻址方式)寻址方式) v28 m20 ;假定假定AMODE=1(与(与C2xLP全兼容的寻址方式)全兼容的寻址方式) 在文件中使用内嵌伪指令在文件中使用内嵌伪指令 . c28_amode ;告诉汇编器后面的代码段都假定告诉汇编器后面的代码段都假定AMODE=0(C28x寻址方式)寻址方式). lp_amode ;告诉汇编器后
9、面的代码段都假定告诉汇编器后面的代码段都假定AMODE=1(与(与C2xLP全兼容的全兼容的 寻址方式)寻址方式) 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院 该寻址方式,该寻址方式,16位的位的DP寄存器被当作一个固定的页指针,寄存器被当作一个固定的页指针,在指令中提供在指令中提供6位或者位的偏移量,将这些偏移量与位或者位的偏移量,将这些偏移量与DP寄寄存器中的值相连接构成完整的地址当访问固定寻址的数据存器中的值相连接构成完整的地址当访问固定寻址的数据结构(比如外围寄存器和结构(比如外围寄存器和C/C+中的全局或静态变量)中的全局或静态变量) 时是时是一种很有效的方法。一种很
10、有效的方法。4.1.2 直接寻址方式直接寻址方式周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院4.1.3 堆栈寻址方式堆栈寻址方式 SP(堆栈指针堆栈指针):在该方式下,位的:在该方式下,位的SP指针被用于访指针被用于访问软件堆栈的信息问软件堆栈的信息F2812的堆栈从存储器的低地址变化到的堆栈从存储器的低地址变化到高地址,高地址,SP指针总是指向下一个空单元当需要访问堆栈中指针总是指向下一个空单元当需要访问堆栈中的数据时,由程序提供位偏移量,的数据时,由程序提供位偏移量,SP的值减去这位的偏的值减去这位的偏移量就是被访问的数据的地址,然后修改堆栈指针移量就是被访问的数据的地址,然
11、后修改堆栈指针SP。周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院4.1.4 间接寻址方式间接寻址方式 XAR0到到XAR7(辅助寄存器指针):在这种寻址方式(辅助寄存器指针):在这种寻址方式下,位的下,位的XARn寄存器被当作一般性数据指针可以通寄存器被当作一般性数据指针可以通过指令实现对辅助寄存器过指令实现对辅助寄存器XARn加,(操作前后)减加,(操作前后)减和变址操作。和变址操作。 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院4.1.5 寄存器寻址方式寄存器寻址方式 在该寻址方式下,寄存器可以是访问的源操作数,也在该寻址方式下,寄存器可以是访问的源操作数,也可
12、以是目标操作数,这样在可以是目标操作数,这样在F2812中就能实现寄存器到寄存中就能实现寄存器到寄存器的操作这一方式包括对器的操作这一方式包括对32位和位和16位寄存器的寻址。位寄存器的寻址。 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院 在该寻址方式下,存储器操作的地址就存在于指令中。在该寻址方式下,存储器操作的地址就存在于指令中。 数据数据/程序程序/IO空间立即寻址方式空间立即寻址方式程序空间间接寻址方式程序空间间接寻址方式 某些指令可以通过使用间接指针对程序空间中的存储器某些指令可以通过使用间接指针对程序空间中的存储器进行访问。因为进行访问。因为F2812 CPU的存储器
13、是标准一致的,这就使的存储器是标准一致的,这就使在一个机器周期中进行两次读操作成为可能。在一个机器周期中进行两次读操作成为可能。 字节寻址方式字节寻址方式4.1.6 其他寻址方式其他寻址方式周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院 由于使用定位于偶数地址的由于使用定位于偶数地址的32位数据的最低有效字,所有位数据的最低有效字,所有针对存储器的针对存储器的32位读写操作都被定位于存储器接口的偶数地位读写操作都被定位于存储器接口的偶数地址边界址边界.地址生成器的输出不需要强制定位地址生成器的输出不需要强制定位,因此指针值保持原因此指针值保持原值。值。例如:例如:MOVB AR0,
14、#5 ; MOVL *AR0,ACC ; 用户在生成不定位于偶数边界的地址时必须考虑上述内用户在生成不定位于偶数边界的地址时必须考虑上述内容。容。32位操作数以下列顺序存放:低位数,位操作数以下列顺序存放:低位数,015;后续的是;后续的是高位数,高位数,1631;接着是最高的;接着是最高的16位地址增量(低位在前的二位地址增量(低位在前的二进制数据格式)。进制数据格式)。 4.1.7 32位操作数的定位位操作数的定位周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院28x 指令按功能可分为指令按功能可分为17 类,共类,共 302 条指令:条指令:寄存器寄存器XARn(AR0AR7)
15、的操作)的操作 14 条条 DP寄存器操作寄存器操作 3 条条 SP寄存器操作寄存器操作 34 条条 AX寄存器操作(寄存器操作(AH,AL) 38 条条 16位位ACC寄存器操作寄存器操作 26 条条 32位位ACC寄存器操作寄存器操作 41 条条 64位位ACC: P寄存器操作寄存器操作 9 条条 P或或XT寄存器的操作(寄存器的操作(P,PH,PL,XT,T,TL) 21 条条 4.2 TMS320F28x系列系列DSP指令系统概述指令系统概述 周鹏周鹏 安徽工程安徽工程大学大学电气工程电气工程学院学院 1616乘法操作乘法操作 20 条条 3232乘法操作乘法操作 13 条条 直接存储器操作直接存储器操作 17 条条 IO空间操作空间操作 3 条条 程序空间操作程序空间操作 5 条条 跳转跳转/调用调用/返回操作返回操作 31 条条 中断寄存器操作中断寄存器操作 9 条条 状态寄存器操作(状态寄存器操作(ST0,ST1) 26 条条 其他操作其他操
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工合同协议格式
- 员工承包仓库合同协议
- 2025不动产抵押担保合同范本
- 总包经理劳务合同协议
- 2025年租赁合同格式范本
- 2025简易仓储租赁合同
- 民宿拍摄合同协议模板
- 模板设备转让合同协议
- 2025中文合同模板范文
- 恋爱到结婚合同协议
- 中欧班列国际运输通道对我国外贸高质量发展的影响效应分析
- 人教版初中数学八年级下册全册教案(2024年春季修订)
- 2025年中国汽车清洗系统行业发展现状调查、竞争格局分析及未来前景预测报告
- 大数据与会计专业专科综合实践报告
- 2025年高考作文素材积累之《黑镜》:科技狂欢与文明困境
- 化妆品生产防渗漏质量控制措施
- DB3307T 128-2023 共富工坊建设与星级评价规范
- 政府绩效评估 课件 蔡立辉 第6-10章 政府绩效评估的结果应用与改进 -政府绩效评估在当代中国的推进
- 2025年职教高考对口升学 护理类 专业综合模拟卷(3)(原卷版)(四川适用)
- 五年级数学下册每日计算小纸条
- 我的家乡成都课件
评论
0/150
提交评论