ARM体系结构复习题

ARM体系结构复习题
ARM体系结构复习题

ARM体系结构复习

复习纲要:

第一章:嵌入式的概念,课后习题

第二章:流水线结构(p28)“冯.洛衣漫”,“哈佛”结构的概念(p31),大小端格式(很重要,可能是大题的哦,嘻嘻p34)

第三章:寻址方式(解答和填空很可能要考P36),课后习题

第四章(第八章):ARM处理模式(P68),ARM内核(T,D,M, ,,I ,,的含义),异常的响应(P80),中断向量,异常原因。

第五章:次重点,习题。ARM存储器的层次(P88)

第九章:8*8键盘(大题,编程),课后习题。

填空:

1.嵌入式系统由(嵌入式处理器),(嵌入式外围设备),(嵌入式操作系统),(嵌入式应用软件)几大部分组成。

2.嵌入式系统是以(应用为中心)和(计算机)为基础,并且软硬件是(可剪裁),能满足应用系统对功能,可靠性,成本,体积和功耗指标的严格要求的专用计算机。

3.嵌入式系统结构模型由(应用层软件),(系统软件层),(硬件层)等部分构成。

4.嵌入式系统结构将存储器看作是从(零地址开始的字节的)线性组合,从第0—3字节放置第一个存储的自数据,从第4到7字节放置第二存储的字节数,依次排列。作为32位的微处理器,ARM体系结构所支持的最大寻址空间为(4GB)

5.嵌入式体系结构可以用两种方法存储自数据,称为(右端格式)和(小段格式)

6.每一段ARM指令包含了(4)位的条件码,位于指令最高的【31:28】,条件码共(16)种,每种条件码可用(2)个字符表示。

7.实现程序流程的跳转有(专门跳转)和(直接向程序计数器pc写入跳转地址值)两种方法

8.数据处理指令按其实现功能可分为(数据传送指令)(算术逻辑指令)(比较指令)3种

9.乘法指令与乘加指令,其运算结果可分为(32)(64)位两类。

10.数据交换指令在(存储器),(寄存器)之间进行交换数据。

11.ARM内核有4个功能模块T,D,M,I。其中,T代表(16位Thumb),D代表(Debug),M 代表(8位乘法器),I代表(Embedded ICE vogic)

12.ARM微处理器的工作状态包括:(Thumb状态)(ARM状态)

13.引起异常的原因有(指令执行引起的异常有软件中断,未定义指令,预取址中止和数据中止),(外部产生的中断有复位,FIQ,IRQ)

14.ARM异常中断的种类有(复位),(未定义指令),(软件中断),(指令预取中止),(数据访问中止),(外部中断请求),(快速中断请求)。

15.嵌入式系统中人机接口配置特点包括(专用型),(小型廉价),(I/O接口型),(存储器扩展型)4种

16.常见的键盘的种类有(独立式按键),(行列式键盘)。

解答:

1.什么是软硬件协同设计?嵌入式系统开发与PC系统软件开发有何不同?

:由于嵌入式是一个专用的系统,所以在嵌入式产品的设计过程中,软件与硬件的设计是结合的,相互协调的。这就称为“协同设计”。前者要对特定的用户环境,考虑成本,功能,稳定性。软件与硬件的开发要相互照应。而后者主要以效益,清晰的开发,占用内存少为主。

2.存储器结构分哪几种?有何区别?

:分为“冯。诺衣漫”,“哈佛”这两种。二者之间的区别是。冯诺衣漫结构的数据空间和地址空间是不分开的,哈佛结构是分开的。冯诺衣漫结构在高速运行时,传输过程有一定的瓶颈,而哈佛结构相对于前者,有大大的提高。

3.什么是流水线结构?

:流水线结构不同于微编码的处理器,是ARM中一种布线方式。一般分为三个阶段。第一阶段是从内存中取回的指令,第二阶段开始解码,第三阶段实际的执行。

4.ARM系统中对字节,半字,字的存取是如何实现的?

5.ARM的存储器层次如何?有何特点?

:分为寄存器组:看作存储器层次的顶层。

片上RAM:与存储器有同等的速度功耗低,简单。

片上cache:容量为8——32KB,访问时间约为10ns.

主存储器:高性能的PC机可能有主存储器。

硬盘:作为后缓存储器,大小不等。

6.引起异常的原因有哪些?

:指令执行引起的异常有软件中断,未定义指令,预取址中断和数据中止。

:外部产生的中断有复位,FIQ,IRQ.

7.ARM中异常中断的种类有哪些?

:复位,未定义指令,软件中断,指令预取中止,数据访问中止,外部中断请求,快速中断请求。

8.简述S3C2410X中LCD 控制器的基本用法,和S3C44B0X中LCD控制器的基本用法?

三.编程题

1.大端,小端的存放格式。

2.编写一个1+2+3、、、、、、+100的汇编程序。

3.编写一个S3C2410X中扩展8*8的键盘。

DATA SEGMENT

SUM1 DW 0,13,10,'$'

DATA ENDS

STACK1 SEGMENT

S DB 1000 DUP( 0 )

STACK1 ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DATA, SS:STACK1 START: MOV AX, DATA

MOV DS, AX

MOV AX, 0

MOV CX, 0

LOOP1: ADD AX, CX

INC CX

CMP CX, 101

JL LOOP1

MOV SUM1, AX

lea di ,sum1

call cv

mov ah,9

lea dx,sum1

int 21h

jmp ok

cv:

push cx

push dx

xor cx,cx

mov si,10

s0:

xor dx,dx

inc cx

div si

push dx

cmp ax,0

jnz s0

s1:

pop dx

add dl,"0"

mov byte ptr [di],dl

inc di

loop s1

mov al,20h

s2:

cmp byte ptr [di],0

jz s3

cmp byte ptr [di],43h

jz s3

mov byte ptr [di],al inc di

jmp s2

s3:

pop dx

pop cx

ret

ok:

MOV AH,4CH

INT 21H

CODE ENDS

END START

相关主题
相关文档
最新文档