ARM9常识知识的笔记.docx
- 文档编号:24050068
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:21
- 大小:2.40MB
ARM9常识知识的笔记.docx
《ARM9常识知识的笔记.docx》由会员分享,可在线阅读,更多相关《ARM9常识知识的笔记.docx(21页珍藏版)》请在冰豆网上搜索。
ARM9常识知识的笔记
ARM处理器特点:
1支持Thumb和ARM双指令集,能很好地兼容8位/16位器件。
Thumb指令集比通常的8位和16位CISC/RISC处理器具有更好代码密度。
2指令采用的3级、5级流水技术。
4支持大端格式和小端格式两种方法存储数据。
5支持字节、半字、和字这3种数据类型。
6体积小,成本低,性能高
ARM工作状态:
1、32位ARM状态、
2、16位Thumb状态
ARM处理器七种运行模式:
用户、快中断、中断、管理、(指令预取)中止、系统和未定义(除用户模式外,其余6种模式称为非用户模式,或特权模式;除去用户模式和系统模式外,其余5种模式又称为异常模式)。
R13为堆栈指针SP,R14为链接寄存器LR,R15为程序计数器PC,R16状态寄存器CPSR
ARM(嵌入式)系统(从模块结构上看)三大组成部分:
硬件、软件、开发平台。
嵌入式系统概念:
以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对
功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式开发环境主要组件:
●宿主机
●目标机
●基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE
●运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境
●嵌入式操作系统
常见的嵌入式系统:
移动电话、数码照相机、MP4、数字电视的机顶盒、微波炉、汽车内部的喷油控制系统、防抱死制动系统。
4种电源管理模式:
1正常模式:
正常运行模式
2慢速模式:
不加PLL的低时钟频率模式
3空闲模式:
只停止CPU的时钟
4掉电模式:
切断所有外设和内核的电源
RAM=SRAM+DRAM
边界对齐方式:
字对齐、半字对齐、字节对齐
名词解释:
ROM:
ReadOnlyMemory是只能读出事先所存的数据的固态半导体存储器,其特性是一旦存储资料就无法改变或删除。
ARM:
AdvancedRISCMachines先进精简指令集。
ARM公司1991年成立于英国剑桥,是专门从事基于RISC技术芯片设计开发公司,主要出售芯片设计技术的授权。
SOC:
SystemOnChip片上系统;20世纪90年代中期出现的一个概念,并成为现代集成电路设计的发展方向。
RISC:
ReducedInstructionsetcomputer精简指令集系统
CISC:
ComplexInstructionsetcomputer复杂指令集系统
RTOS:
Real-TimeOS实时操作系统要求不但执行结果正确,而且必须在一定时间内完成.
GUI:
GraphicUserInterface图形用户界面
EOS:
EmbeddedOS,嵌入式操作系统。
DSP:
DigitalSignalProcessor数字信号处理器
MIPS:
MicrosoftInterlockedPipedStages无互锁流水级的微处理器。
SD:
SecureDigitalCard,SD卡,安全数据卡
GPIO:
GeneralPurposeI/O通用输入输出接口
嵌入式目标代码通常固化在:
Flash里的
交叉编译概念:
在宿主机上编译的软件在目标机上运行,这个编译过程叫交叉编译
冯诺依曼结构:
其程序和数据共用一个存储空间(程序与数据没有分开)。
哈佛结构:
程序和数据存储在不同的存储空间(程序与数据分开了)。
信息存储的字节顺序:
大端(低字节在内存高地址)和小端(低字节在内存低地址)存储法
ARM异常响应:
1将一条指令的地址存入相应的链接寄存器LR,以便程序在处理异常返回时能从正确的位置重新开始执行。
若异常是从ARM状态进入,LR寄存器中保存的是下一条指令的地址;若异常是从Thumb状态进入,则在LR寄存器中保存当前PC的偏移量。
2将CPSR状态传送到相应的SPSR中。
3根据异常类型,强制设置CPSR的运行模式位
4强制PC从相关的异常向量地址取下一条指令执行,跳转到相应的异常处理程序。
还可以设置中断禁止位,以禁止中断发生。
---------异常发生时,处理器处于Thumb状态,则会自动切换到ARM状态--------
ARM异常返回:
1将链接寄存器LR的值减去相应的偏移量后送到PC中
2将SPSR内容送回CPSR
3若在进入异常处理时设置了中断禁止位,要在此清除。
RS-232C接口进行串口通信简单连接又称三线连接,发送数据线、接收数据线和信号地
嵌入式系统设计步骤:
1系统定义与需求分析
2系统设计初步说明文档
3系统设计初步方案与设计描述文档
4系统总体设计
5初步设计方案性欲价比评估与方案评审论证
6硬件设计、软件设计
7软硬件集成测试
8系统功能、性能及可靠性测试
9样机
IIC接口原理:
在IIC总线上,只需要两条线:
串行数据SDA线和串行时钟SCL线。
两条线都是又向的。
一填空(每空1分,共20分)
1.嵌入式微处理器一般可分为、、和
四种类型。
2.嵌入式系统体系结构一般具有和两种基本形式。
3.嵌入式存储系统一般由、和组成。
4.嵌入式存储系统具有和两种数据存放格式。
5从编程的角度看,ARM微处理器的一般有和两种工作状态。
6.嵌入式软件的开发一般分为、和三个步骤。
7.嵌入式LINUX的内核有五个组成部分,它们是进程调度、、
、和。
1.嵌入式微控制器MC嵌入式数字信号处理器DSP
嵌入式微处理器EMPU嵌入式片上系统SOC
2.冯洛依曼哈佛
3,高速缓存内存外存
4大端格式小端格式
5ARMTHUMB
6.生成调试固化运行
7.内存管理虚拟文件系统网络接口进程通信
二简答(每题5分,共30分)
1..简要叙述嵌入式系统的定义。
嵌入式系统是以应用为中心,以计算机技术为基础,并且在软、硬件方面可进行裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成。
5分
2.什么是嵌入式实时操作系统?
简单叙述其特点。
实时操作系统就是“在给定的时间内提供某种程度的服务,如果在规定的时间内没有得到结果,那整个的系统就是失败”。
----------3分
对于实时操作系统其首要任务是调度一切可利用的资源完成实时控制任务,其次才着眼提高计算机系统的使用效率。
-----------2分
3.什么是操作系统的移植?
操作系统的移植是指一个操作系统经过适当修改以后,可以安装在不同类型的微处理器系统上进行运行。
4.简要叙述ARM体系微处理器中控制程序的执行流程方式?
在ARM体系微处理器中通常有3种方式控制程序的执行流程方式。
它们是:
正常顺序执行指令;---2分
通过跳转命令跳转到特定的标号处;--------1分
异常处理。
------------2分
5.简要叙述嵌入式系统的设计步骤?
嵌入式系统设计的重要特点是技术多样化,即实现同一个嵌入式系统可以有许多不同的设计方案选择,而不同的设计方案就意味使用不同的设计和生产技术。
嵌入式系统设计一般步骤:
1)需求分析--------1分
2)体系结构设计--------1分
3)硬件/软件设计------------1分
4)系统集成和系统测试-----------2分
6.嵌入式系统中电源管理器的作用有哪些?
操作系统是通过电源管理器来进行系统的电源管理,提高整个系统的电源效率,并为每一个外围设备模块提供电源管理。
----------2分通过电源管理不仅可以减少目标设备上的电源损耗,而且可以在系统重启、运行、空闲和挂起的电源状态下保存RAM中的文件系统。
----------2分电源管理模块通过软件来控制系统时钟,以降低微处理器的耗电量。
这些方案与PLL、时钟控制逻辑、外设的时钟控制以及唤醒信号有关。
-----1分
三选择题(每小题2分,共20分)
1、ADDR0,R1,#3属于(A)寻址方式。
A.立即寻址B.多寄存器寻址C.寄存器直接寻址D.相对寻址
2、GET伪指令的含义是(A)
A.包含一个外部文件B.定义程序的入口C.定义一个宏D.声明一个变量
3、存储一个32位数0x876165到2000H~2003H四个字节单元中,若以小端模式存
储,则2000H存储单元的内容为(C)。
A、0x00B、0x87C、0x65D、0x61
4、μCOS-II操作系统不属于(C)。
A、RTOSB、占先式实时操作系统C、非占先式实时操作系统D、嵌入式实时操作系统
5、若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDRR0,[R1,#8]!
后R0的值为(D)。
A.0x2000B.0x86C.0x2008D.0x39
6、寄存器R13除了可以做通用寄存器外,还可以做(C)。
A、程序计数器B、链接寄存器C、栈指针寄存器D、基址寄存器
7、FIQ中断的入口地址是(A)。
A、0x0000001CB、0x00000008C、0x00000018D、0x00000014
8、ARM指令集和Thumb指令集分别是(D)位的。
A.8位,16位B.16位,32位C.16位,16位D.32位,16位
9、ARM寄存器组有(D)个寄存器。
A、7B、32C、6D、37
五阅读程序题阅读下列与看门狗有关的寄存器描述,解释每一行代码的功能。
(15分)
看门狗定时器控制寄存器(WTCON)
寄存器
地址
读/写
描述
初始值
WTCON
0x53000000
读/写
看门狗定控制寄存器
0x8021
WTCON的标识位
WTCON
Bit
描述
初始值
PrescalerValue
[15:
8]
预装比例值,有效范围值为0~255
0x80
Reserved
[7:
6]
保留
00
WatchdogTimer
[5]
0=禁止看门狗定时器
1=使能看门狗定时器
0
ClockSelect
[4:
3]
这两位决定时钟分频因素
00:
1/1601:
1/32
10:
1/6411:
1/128
00
InterruptGeneration
[2]
0=禁止中断产生
1=使能中断产生
0
Reserved
[1]
保留
0
Reset
Enable/Disable
[0]
1=看门狗复位信号使能
0=看门狗复位信号禁止
1
看门狗定时器数据寄存器(WTDAT)
寄存器
地址
读/写
描述
初始值
WTDAT
0x53000004
读/写
看门狗数据寄存器
0x8000
看门狗计数寄存器(WTCNT)
寄存器
地址
读/写
描述
初始值
WTCNT
0x53000008
读/写
看门狗计数器当前值
0x8000
#definerWTCON(*(volatileunsigned*)0x53000000)//第1行
#definerWTDAT(*(volatileunsigned*)0x53000004)//第2行
#definerWTCNT(*(volatileunsigned*)0x53000008)//第3行
voidwatchdog_test(void){
rWTCON=((PCLK/1000000-1)<<8)|(3<<3)|(1<<2);//第4行
rWTDAT=7812;//第5行
rWTCNT=7812;//第6行
rWTCON|=(1<<5);//第7行
}
答:
第1-3行:
定义看门狗控制寄存器、数据寄存器和计数寄存器为rWTCON、rWTDAT和rWTCNT。
(4分)
第4行:
设置看门狗的预装比例值为1000000,分频因素为1/128,并使能中断。
(6分)
第5-6行:
对数据寄存器和计数寄存器赋值为7812。
(2分)
第7行:
启动看门狗。
(3分)
第一章嵌入式系统概述
1.嵌入式系统的定义
答:
1以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
2.嵌入式系统的组成,能画出嵌入式系统的组成框架。
答:
嵌入式系统由软件系统和硬件系统两部分组成。
3.单片机是不是嵌入式系统?
它与ARM嵌入式系统有何异同?
答:
单片机是嵌入式系统。
单片机一般是4位、8位或16位的数据总线,一般内置存储器,不运行操作系统,侧重于低成本,主要应用与工业控制等领域;而ARM嵌入式系统是32位的数据总线,运算速度快,外接大容量存储器,能运行操作系统以适合多种应用。
4.嵌入式系统与通用计算机之间的区别。
答:
通用计算机系统采用标准化、模块化的设计,其技术要求是高速、海量的信息处理,技术发展方向是处理速度、总线宽度、存储容量的无限提升。
而嵌入式系统怎采用针对性较强的专业化设计,技术要求是满足具体应用,技术发展方向是在保证应用系统的技术要求和可靠性的前提下,尽可能减小成本、体积和功耗。
5.嵌入式处理器的分类
答:
1嵌入式微处理器MPU2嵌入式微控制器MCU3嵌入式DSP处理器
4嵌入式片上系统SOC5嵌入式可编程片上系统SOPC
6.嵌入式操作系统的作用是什么?
请举出3种常见的操作系统。
答:
用于管理存储器分配、中断处理、任务间通信和定时器响应,以及提供多任务处理等功能。
嵌入式操作系统,大大地提高了嵌入式系统硬件工作效率,并为应用软件开发提供了极大的便利。
3种常见的操作系统:
WinCE、Vxworks、uClinux
7.嵌入式系统开发流程(一个是软件开发流程-生成、调试、固化;一个是设计流程:
;一个是开发环境:
宿主机、目标机、)
答:
嵌入式系统开发流程一般可分为4个阶段:
需求分析阶段、硬件开发阶段、软件开发阶段和程序固化阶段。
第二章ARM处理器编程基础
1.计算机中的两种典型体系结构是什么,各自的特点是什么?
冯·诺依曼体系和哈佛体系结构
冯·诺依曼体系:
1)数据与指令都存储在同一存储区中,取指令与取数据利用同一数据总线。
2)被早期大多数计算机所采用
3)ARM7——冯诺依曼体系
结构简单,但速度较慢。
取指不能同时取数据
哈佛体系结构:
1)程序存储器与数据存储器分开.
2)提供了较大的存储器带宽,各自有自己的总线。
3)适合于数字信号处理.
4)大多数DSP都是哈佛结构.
5)ARM9是哈佛结构
6)取指和取数在同一周期进行,提高速度,
改进哈佛体系结构分成三个存储区:
程序、数据、程序和数据共用
2.在ARM系列中,ARM7,ARM9分别是什么体系结构。
ARM7是冯·诺依曼体系结构ARM9是哈佛体系结构
3.ARM7处理器,PXA270处理器分别采用几级流水线;
ARM7采用的是3级流水线PXA270采用的是7级流水线
4.ARM处理器有几种工作状态,各自的特点。
工作状态之间如何进行转换,异常响应时,处理器处于何种状态。
答:
ARM有两种工作状态:
①ARM状态,此时处理器执行32位的字对齐的ARM指令。
②Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令.
在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且不影响处理器运行模式和相应寄存器中的内容。
ARM指令集和Thumb指令集均有切换处理器状态的指令,并可在两种工作状态之间切换,但ARM微处理器在上电或复位后,应该处于ARM状态。
执行BX跳转指令,将操作数的状态位(位0)设置为1时,可以使处理器从ARM状态切换到Thumb状态。
此外,当处理器处于Thumb状态时发生异(如IRQ、FIQ、Undef、Abort、SWI等),则异常处理返回时,自动切换到Thumb状态。
执行BX跳转指令,将操作数的状态位(位0)设置为0时,可以使处理器从Thumb状态切换到ARM状态。
此外,当处理器进行异常处理时,把PC指针放入异常模式链接寄存器中,并从异常向量地址开始执行程序,也可以使处理器切换到ARM状态。
THUMB指令集在功能上只是ARM指令集的一个子集,某些功能只能在ARM状态下执行,如CPSR和协处理器的访问.
进行异常响应时,处理器会自动进入ARM状态.
即使是一个单纯的THUMB应用系统,必须加一个汇编的交互头程序,因为系统总是自动从ARM开始启动
5.ARM体系结构所支持的最大寻址空间为4GB;
6.ARM处理器数据存储格式有哪几种?
各自的特点?
能否举例进行说明。
答:
ARM存储器有大端格式和小端。
大端格式中,字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中;
小端格式则相反。
7.ARM处理器数据类型包括哪些?
各自特点。
答:
字(Word):
在ARM体系结构中,字的长度为32位,而在8位/16位处理器体系结构中,字的长度一般为16位。
半字(Half-Word):
在ARM体系结构中,半字的长度为16位,而在8位/16位处理器体系结构中字的长度一致。
字节(Byte):
在ARM体系结构和8位/16位处理器体系结构中,字的长度均为8位。
由于一个字数据占用地址空间中的4个字节的地址,因此其地址总是4的倍数,在二进制计数中,字数据的地址低2位总为0,称为地址4字节对齐(地址的低两位为0);同理,半字需要2字节对齐(地址的最低位为0)
8.ARM处理器一共有几种中工作模式,分别是?
那种模式下,专业寄存器最多。
ARM处理器一共有7种运行模式,它们分别是:
用户模式(user)、快速中断模式(fiq)、外部中断模式(irq)、管理模式(svc)、数据访问中止模式(abt)
系统模式(sys)和未定义指令中止模式(und)。
9.ARM处理器正常工作时,处于何种工作模式?
答:
用户模式(user)。
9.ARM处理器共有多少个32位寄存器,多少个为通用寄存器,多少个状态寄存器。
答:
共有37个32位寄存器,其中31个为通用寄存器,可用于累加操作,6个为状态寄存器。
10.在ARM指令中,R13寄存器常用?
R14寄存器被称为?
,R15寄存器?
答:
R13常用做堆栈指针,R14被称为子程序连接寄存器或连接寄存器。
R15寄存器用于保存程序计数器(PC)。
R15一般不作为通用寄存器使用
11.弄清楚CPSR每一位的含义,例如:
条件标志位N,Z,C,V;控制位;T标志位
条件码标志位:
N·Z·C·V
N:
Negative/LessThan当用两个补码表示的带符号数进行运算时,N=1表示运算结果为负;N=0表示运算结果为正或者0
C:
Carry/Borrow/Extend
可以有4种方法设置C的值:
加法运算(包括反值比较指令CMN);当运算产生了进位时(无符号数溢出),C=1,否则C=0;
减法运算(包括比较指令CMP);当运算产生了借进位时(无符号数溢出),C=1,否则C=0;
对于包含移位操作的非加/减运算指令,C为移出值的最后一位。
杜宇其他的非加/减运算指令,C的值通常不改变
V:
Overflow
可以有2种方法设置V的值:
对于加/减运算指令,当操作数和运算结果为
二进制的补码表示的带符号数时,V=1表示符号位溢出。
对于其他非加/减运算指令,V的值通常不改变。
1、嵌入式系统的设计可以分成三个阶段:
分析、设计和实现
2、目前使用的嵌入式操作系统主要有WindowsCE/WindowsMobileLinux、uCos、和Symbian
3、微处理器有两种总线架构,使用数据和指令使用同一接口的是冯诺依曼,分开的指令和数据接口、取指和数据访问可以并行进行的是哈佛结构
4、ARM微处理器有七种工作模式,它们分为两类非特权模式、特权模式。
其中用户模式属于非特权模式
5、ARM核有两个指令集,分别是ARM、Thumb
6、ARM微处理器复位后,PC(R15)的地址通常是0X0,
初始的工作模式是管理模式
测验题
一、填空题(30*2=60分)
1.RISC的含义是_精简指令集。
2.C语言程序中嵌入汇编语句的格式为asm(“语句”)__。
3.ARM处理器支持_字节、_半字__、字_三种数据类型。
4.数据在存储器上的存储方式有两种_大端存储、小端存储。
5.嵌入式芯片的I/O口通常都是和其他引脚复用的,通过端口控制寄存器_来对I/O口的功能进行设置。
6.__BX_指令可以完成ARM状态到Thumb状态的切换。
7.ARM状态下的通用寄存器中R13通常用来做堆栈指针、R14用于子程序连接寄存器。
8.CPSR是当前程序状态寄存器_。
9.所有ARM指令均为_32位长度,指令以字对齐方式保存在存储器中。
10.指令ADDR3,R2,R1,LSL#2的含义是_(r3)=(r2)+4*(r1)_____。
11.嵌入式系统应用软件一般在宿主机上开发,在目标机上运行,因此需要一个交叉编译环境。
12.在嵌入式系统的存储结构中,存取速度最快的是寄存器组。
13.在ARM处理器中,中断屏蔽寄存器寄存器包括全局的中断禁止位,控制中断禁止位就可以打开或者关闭中断。
14.在指令系统的各种寻址方式中,获取操作数最快的方式是立即寻址。
15.列举三种常用的嵌入式操作系统:
_ucosII_、____嵌入式linux_、__wince。
16.ARM9TDMI中T的含义是__支持16位宽度的压缩指令集Thumb___。
17.ARM处理器有两种工作状态__arm状态______、___thumb状态_____。
18.ARM状态下的通用寄存器中R14用于子程序连接寄存器、R15用于程序计数器。
19.所有Thumb指令均为_16位长度,指令以_16位半字_对齐方式保存在存储器中。
20.用一条汇编语句写出R2=5*R1的操作_MOVR3,#5MULR2,R1,R3___。
或ADDR2,R1,R1,LSL#2
21.在指令系统的各种寻址方式中,若操作数的地址包含在指令中,则属于寄存器间接寻址。
二、简答(5*4=20分)
1.简述ARM微处理器对异常的响应过程。
1).将PC值存入相应连接寄存器LR,
以便程序在处理异常返回时能从正确的位置重新开始执行
2.将CPSR复制到相应的SPSR中
3.根据异常类型,强制设置CPSR的运行模式位
4.强制PC从相关的异常向量地址取下一条指令执行,
从而跳转到相应的异常处理程序处
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ARM9 常识 知识 笔记