ImageVerifierCode 换一换
格式:DOCX , 页数:9 ,大小:478.38KB ,
资源ID:2448940      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2448940.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ARM处理器工作模式实验报告.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ARM处理器工作模式实验报告.docx

1、ARM处理器工作模式实验报告肇 庆 学 院电子信息与机电工程 学院 实验日期: 2015 年 11 月 30 日班级:12电气1班 :李俊杰 学号: 19 老师评定:_ _ 实验二:ARM处理器工作模式实验一、实验目的通过实验掌握学会使用MSR/MRS指令实现ARM处理器工作模式的切换,观察不同模式下的寄存器,加深对CPU结构的理解。通过实验掌握ld中如何使用命令行指定代码段起始地址。二、实验设备硬件:PC机。软件:Embest IDE Pr0 2004集成开发环境,Windows 98/2000/NT/XP。三、实验内容通过ARM汇编指令,在各种处理器模式下切换并观察各种模式下寄存器的区别。

2、掌握ARM不同模式的进入与退出。四、实验原理1ARM处理器模式ARM体系结构支持表3-2所列的7种处理器模式。在软件控制下可以改变模式,外部中断或异常处理也可以引起模式发生改变。大多数应用程序在用户模式下执行。当处理器工作在用户模式时,正在执行的程序不能访问某些被保护的系统资源,也不能改变模式,除非异常发生。这允许适当编写操作系统来控制系统资源的使用。 图2-1除用户模式外的其他模式称为“特权模式”,它们可以自由地访问系统资源和改变模式。其中的5种称为“异常模式”,即FIQ(Fast Interrupt Request)、IRQ(lnterrupt Request)、管理(Supervisor

3、)、中止(Abort)和未定义(Undefined)。当特定的异常出现时,进入相应的模式。每种模式都有某些附加的寄存器,以避免异常出现时用户模式的状态不可靠。剩下的模式是“系统模式”。仅ARM体系结构V4以及以上的版本有该模式。不能由于任何异常而进入该模式。它与用户模式有完全相同的寄存器,但它是特权模式,不受用户模式的限制。它供需要访问系统资源的操作系统任务使用,但希望避免使用与异常模式有关的附加寄存器。避免使用附加寄存器保证了当任何异常出现时,都不会使任务的状态不可靠。2程序状态寄存器3.2节提到的程序状态寄存器CPSR和SPSR包含了条件码标志、中断禁止位、当前处理器模式以及其他状态和控制

4、信息。每种异常模式都有一个程序状态保存寄存器SPSR。当异常出现时,SPSR用于保留CPSR的状态。3本实验涉及到的Id命令行参数-Ttext org使用org作为输出文件的text段的起始地址。org必须是十六进制数。实验操作步骤(1)参考3.1节实验A的步骤(1)建立一个新的工程,命名为ARMMode。(2)参考3.1节实验A的步骤(2)和实验参考程序编辑输入源代码。编辑完毕后,保存文件为ARMMode.s。(3)选择菜单项Project- Add To Project- Files,或在工程管理窗口右击选择快搪菜单命令,打开文件选择对话框,在工程目录下选择刚才建立的源文件ARMMode.

5、s。(4)参考3.1节实验A的步骤(4)进行相应设置。注意:在链接器设置选项卡的Link Options框内,手动加上“-Ttext Ox0”,即指定代码段起始地址为Ox0,如图3-8所示。(5)参考3.1节实验A的步骤(5)生成目标代码。(6)在调试设置选项卡中的Download address文本框内,输入的下载地址应该与链接器设置中指定的代码段起始地址相同,以保证程序能够正常执行,如图3-9所示。(7)选择菜单项DebugRemote Connect连接软件仿真器,执行Download命令下载程序,并打开寄存器窗口。(8)单步执行,观察并记录寄存器RO和CPSR值的变化,以及每次变化后执

6、行寄存器赋值后36个寄存器值的变化情况,尤其注意各个模式下R13和R14的值。结合实验内容和相关资料,观察程序运行,通过实验加深理解ARM各种状态下寄存器的使用。理解和掌握试验后,完成实验练习题。图2-2 五、实验结果图2-3 系统模式图2-4 快中断模式图2-5管理模式图2-6中止模式图2-7普通中断图2-8未定义模式实验参考程序.global _start.text_start: #-Setup interrupt/exception vectors B Reset_HandlerUndefined_Handler: B Undefined_Handler B SWI_HandlerPre

7、fetch_Handler: B Prefetch_HandlerAbort_Handler: B Abort_Handler NOPIRQ_Handler: B IRQ_HandlerFIQ_Handler: B FIQ_HandlerSWI_Handler: MOV pc,lrReset_Handler: # into System mode MRS r0,CPSR /* 读CPSR值 */ BIC r0,r0,#0x1f /* 清低5位 */ ORR r0,r0,#0x1f /* 将模式设为系统模式 */ MSR CPSR,r0 /*将r0写入CPSR */ MOV r0,#1 /*在系

8、统模式初始化寄存器*/ MOV r1,#2 MOV r2,#3 MOV r3,#4 MOV r4,#5 MOV r5,#6 MOV r6,#7 MOV r7,#8 MOV r8,#9 MOV r9,#10 MOV r10,#11 MOV r11,#12 MOV r12,#13 MOV r13,#14 MOV r14,#15 # into FIQ mode MRS r0,CPSR BIC r0,r0,#0x1f ORR r0,r0,#0x11 /*将模式设为快中断模式*/ MSR CPSR,r0 MOV r8,#16 /*在快中断模式初始化寄存器 */ MOV r9,#17 MOV r10,#1

9、8 MOV r11,#19 MOV r12,#20 MOV r13,#21 MOV r14,#22 # into SVC mode MRS r0,CPSR BIC r0,r0,#0x1f ORR r0,r0,#0x13 /*将模式设为管理模式*/ MSR CPSR,r0 MOV r13,#23 /*在管理模式初始化寄存器*/ MOV r14,#24 # into Abort mode MRS r0,CPSR BIC r0,r0,#0x1f ORR r0,r0,#0x17 /*将模式设为中止模式*/ MSR CPSR,r0 MOV r13,#25 /*在中止模式初始化寄存器*/ MOV r14,

10、#26# into IRQ mode MRS r0,CPSR BIC r0,r0,#0x1f ORR r0,r0,#0x12 /* 将模式设为普通中断模式*/ MSR CPSR,r0 MOV r13,#27 /* 在普通中断模式初始化寄存器*/ MOV r14,#28# into UNDEF mode MRS r0,CPSR BIC r0,r0,#0x1f ORR r0,r0,#0x1b /*将模式设为未定义模式*/ MSR CPSR,r0 MOV r13,#29 /*在未定义模式初始化寄存器*/ MOV r14,#30 B Reset_Handler.end总结:通过此次实验学会了使用MSR/MRS指令实现ARM处理器工作模式的切换,观察不同模式下的寄存器,加深了对CPU结构的理解,同时掌握了ld中如何使用命令行指定代码段起始地址。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1