电子科技大学二零 零九 至二零 一零 学年第 二 学期期 末 考试
微处理器系统结构与嵌入式系统设计 课程考试题 A 卷 ( 120 分钟) 考试形式:一本书开卷 考试日期 2010年1月 14 日
课程成绩构成:平时 10 分, 期中 15 分, 实验 15 分, 期末 60 分
得分 签名 一 二 三三三三三三三合复核人签(1) (1) (2) (3) (4) (5) (6) 计 名 注意:请将第一、二题答案填入本页指定位置。
得 一、 单选题答案(共30分,共 30题,每题1 分)
1 C 2 B 3 4 D A 5 B 6 A 7 B 8 9 10 11 12 13 14 15 D D A B D A B C
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 C A B D B C A C D C B A B C D 二、 填空题答案(共25分,共 25空,每空1 分)
得 1. ① 小端格式 ② 高字节放高地址,低字节放低地址
2. ① 取指令 ② 指令译码 ③ 计算操作数地址 ④ 取操作数 ⑤ 执行指令 ⑥ 写结果
3. ① 时钟频率f ② 指令平均执行时间CPI ③ 指令条数IC (可交换顺序)
4. ① 程序员角度看到的计算机结构 ② 计算机各部件的逻辑结构及连接方式 ③ 体系结构 5. ① 双工 ② 半双工 (可交换顺序) 6. ① 一次存取及处理数据
7. ① IRQ ② FRQ (可交换顺序) 8. ① R0~R3 ② 堆栈单元 9. ① 初始化硬件及加载操作系统 10.
① 功能(黑盒) ② 覆盖(白盒) ③ 灰盒 (可交换顺序)
一、单选题(共30分,共 30题,每题1 分)
1.
2. 3. 4. 计算机内机器数通常采用( )形式来表示。
A、原码 B、反码 C、补码 D、ASCII码
组合BCD码“87H”代表的十进制真值是( )。
A、78 B、87 C、-120 D、+120
若下列字符码中有奇偶校验位,但没有数据错误,那么采用偶校验的字符码是( )。
A、11001011 B、11010110 C、11000001 D、11001001
冯·诺依曼基本思想主要是提出了 ( )。
A、二进制和程序存储 B、CPU和存储器 C、二进制和存储器 D、存储器和输入输出设备
第 1 页 共 5页
5. 以下叙述中,不符合RISC指令系统特点的是( )。 A、指令长度固定,指令种类少 B、寻址方式种类丰富,指令功能尽量增强 C、选取使用频率较高的一些简单指令 D、设置大量通用寄存器,访问存储器指令简单 6. 以下所列提高微机系统性能的技术,说法不正确的是( )。 A、采用流水线结构后每条指令的执行时间明显缩短。 B、增加Cache存储器后CPU与内存交换数据的速度得到提高。 C、引入虚拟存储技术后扩大了用户可用内存空间。 D、提高主机时钟频率后加快了指令执行速度。 7. 微程序控制器中,机器指令与微指令的关系是()。 A、每一条机器指令由一条微指令来执行 B、每一条机器指令由一段微指令编写的微程序来解释执行 C、每一条机器指令组成的程序可由一条微指令来执行 D、一条微指令由若干条机器指令组成 8. 微处理器中运算器的主要功能是进行( )。 A、逻辑运算 B、算术运算 C、更新标志位 D、以上所有 9. 在分页管理的存储系统中,( )通过地址映射表来完成虚拟地址到物理地址的转换。 A、ALU B、寄存器 C、接口 D、.MMU 10. 下列因素中,与Cache的命中率无关的是( )。 A、主存存取时间 B、块的大小 C、Cache组织方式 D、Cache容量 11. 指令系统中采用不同寻址方式的目的主要是( )。 A、实现存储程序和程序控制 B、缩短指令长度,扩大寻址空间,提高编程灵活性 C、可以直接访问外存 D、提供扩展操作码的可能并降低指令译码难度 12. 程序控制类指令的主要功能是( )。
A、进行算术运算和逻辑运算 B、进行主存和CPU之间的数据传送 C、进行CPU和I/O设备之间的数据传送 D、改变程序执行的顺序
13. 若只使用一条指令使某寄存器中的高4位不变,低4位清0,则应使用( )操作指令。 A、与 B、或 C、非 D.位取反 14. 以下ARM指令中,( )的源操作数采用了寄存器间接寻址方式。 A、MOV R0,#2 B、LDR R0,[R1] C、BL SUB1 D、ADD R0,R1,R2,LSL #1 15. ARM处理器比较无符号数大小时是根据 ( ) 标志位来判断的。 A、C和N B、C和V C、C和Z D、Z和V
16. 在单地址指令格式下,为了完成两个数的算术运算,除地址码指明的一个操作数以外,另一个数常需采用( )寻址方式。 A、基址变址 B、相对 C、隐含 D、寄存器 17. 在软件开发过程中“汇编”通常是指( )。 A、将汇编语言转换成机器语言的过程 B、将机器语言转换成汇编语言的过程 C、将高级语言转换成机器语言的过程 D、将高级语言转换成汇编语言的过程 18. 在汇编过程中不会产生指令码,只用来指示汇编程序如何汇编的指令是()。
A、汇编指令 B、伪指令 C、机器指令 D、宏指令
19. 存储器内容不会因电源的关闭而消失的存储器类型是( )。 A、DRAM B、SRAM C、SDRAM D、EEROM 20. 宏与子程序的相同之处为( )。 A、目标代码都是唯一的 B、都需要先定义后调用 C、执行时需要保护现场/恢复现场 D、目标代码都不是唯一的
21. 软件和固件的功能在逻辑上( )。 A、固件优于软件 B、软件优于固件 C、等价 D、视情况而定 22. 若处理器采用( )方式对I/O端口进行编址,则不需要开发专门的I/O指令集。 A、统一编址法 B、独立编址法 C、AB选项都对 D、AB选项都不对
23. 在主机与外围设备进行数据交换时,为解决两者之间的同步与协调、数据格式转换等问题,必须要引入
( )。 A、数据缓冲器 B、I/O总线 C、I/O接口 D、串并移位器
24. 除了I/O设备本身的性能外,影响嵌入式系统I/O数据传输速度的主要因素是( )。 A、Cache性能 B、CPU字长 C、主存容量 D、总线传输速率
25. 微处理器系统中引入中断技术可以( )。
第 2 页 共 5页
得 得
A、提高外设速度 B、减轻内存负担 C、提高CPU效率 D、增加信息交换精度 26. ARM系统中,字符串在内存中存放时,一般是以( )为存放单位。 A、比特位 B、字节 C、字 D、双字 27. ARM汇编程序中,代码段的定义应该使用( )伪指令。 A、AREA B、DCB C、 MACRO D、GBLA
28. ARM工作状态下,每取出一条指令后程序计数器PC的值应该( )。 A、自动加1 B、自动加4 C、自动清0 D、自动置1
29. 嵌入式系统由硬件部分和软件部分构成,以下( )不属于嵌入式系统软件。 A、操作系统内核 B、驱动程序 C、FPGA编程软件 D、嵌入式中间件 30. 关于实时操作系统(RTOS)的任务调度器,以下描述中正确的是 ( )。
A、任务之间的公平性是最重要的调度目标
B、RTOS调度算法只是一种静态优先级调度算法 C、RTOS调度器都采用了基于时间片轮转的调度算法 D、大多数RTOS调度算法都是可抢占式(可剥夺式)的
二、填空题(共25分,共 25空,每空1 分)
1.
多字节数据存储时可以采用大端格式或小端格式。ARM处理器的默认格式是( ),其存放规则是( )。
2. 一种合理的指令六级流水线的各个阶段可能包括( )、( )、( )、( )、( )、( )。 3. CPU执行程序时间T可以用来测定计算机的性能,T由( )、( )和( )三个因素决定。 4.
计算机体系结构是指( ),计算机组成是指( )。在设计一个计算机系统时指令集结构的确定属于以上两个方面中的( )范畴。
5. 串行通信根据其数据传送方向的不同可分为单工、( )和( )等三种。 6. CPU内部的数据通路宽度也即字长,体现了CPU的( )能力。 7. ARM支持( )和( )两种中断异常。
8.
ARM系统中,按照ATPCS的规定,子程序调用时可以利用( )等四个寄存器来传递参数,更多的参数可利用( )来传递。
9. 引导程序BootLoader是嵌入式系统加电后执行的第一段代码,其主要作用是( )。 10.
嵌入式系统的测试可以采用( )、( )和( )等方法。
三、应用分析题(共45分)
1.
试说明现代计算机系统中存储器系统是如何分层的?有什么好处?(8分)
(5分)微机中的存储器子系统一般分为四级,即:寄存器组、高速缓存、内存和外存。
? 第一级寄存器组位于微处理器的内部,速度最快,但数目较少;
? 第二级高速缓存Cache是为了解决CPU与主存之间的速度不匹配问题而设置的,其性能是速度快、容量小。
? 第三级内部存储器(即主存)容量大、速度较慢(相对于Cache),通常用于存放运行的程序和数据。
? 第四级外部存储器容量巨大,可读可写,单位存储成本最低,且可以脱机保存信息。 (3分)现代微机把这些不同容量、不同速度的存储器按一定的体系结构组织起来,形成一个统一的存储系统,主要是为了解决存储容量、存取速度和价格之间的矛盾。 2.
试比较随机逻辑结构的处理器和微码结构的处理器优缺点。(8分)
(4分)1.从设计开销角度
? 随机逻辑CPU的硬件和指令集必须同步进行设计和优化,因此比较复杂。
第 3 页 共 5页
得 得 得 得
? 微码CPU的指令集设计并不直接影响现有硬件,修改指令集并不需要重新设计新的硬件。 (4分)2.从性能角度
? 如果采用相同指令集,则随机逻辑CPU操作会更快。
? 如果执行相同的计算任务,微码CPU能够通过使用更少(但更复杂)的指令达到更高性能。 ? 当系统整体性能受限于存储器的速度时,微码CPU对性能提高的优势更为明显。
3.
有如下ARM汇编程序段: (4分)
??
LDR R0,=0xFFFFFFFF LDR R1,=0x1 ADDS R0,R0,R1 ??
问:ADDS指令执行完后CPSR寄存器中的哪些位受到影响?怎样影响?请标在下图中。
N Z C V I F T M4 M3 M2 M1 M0 0 1 1 0 ?? 4. 有如下ARM汇编程序段:(9分) 存储单元地址 存储单元内容 MOV R1,#0x11 MOV R2,#0x22 MOV R3,#0x33 MOV R4,#0x44
40H 55 44H 44 MOV R5,#0x55 48H 33 4CH 22 STMFA R13!,{R2-R5} (R13 初始值 )50H MOV R2,#0X77
LDMFA R13!,{R2-R5}
设堆栈指针R13初始值为#0x50,则:
1) STM指令执行完后堆栈指针R13=( 0x40 )。请在图中标出STM指令执行完后堆栈段的数据存放情况。 2) LDM指令执行完后堆栈指针R13=( 0x50 ),各寄存器的值分别为:
(R1)=( 0x11 ) ,(R2)=( 0x22 ) ,(R3)=( 0x33 ) ,(R4)=( 0x44 ) ,(R5)=( 0x55 )
5. 三星S3C2440微处理器采用的是什么CPU内核?当由nRESET引脚送来复位信号时,内核会进行哪些操作?(8
分)
(2分)三星S3C2440微处理器采用的是ARM920T内核
(6分)当从nRESET引脚送来的复位信号变为低电平后,内核将丢弃当前正在执行的指令,并从增量字地址处连续取得新的指令,当nRESET引脚再次变为高电平时,内核将会执行如下操作。
① 复制当前的PC和CPSR的值,以覆盖R14_svc和SPSR_svc寄存器;
② 强制M[4:0]寄存器值变为10011(进入超级用户模式),并将CPSR中的I和F位置位,将CPSR中的T位清零;
③ 强制PC从地址0x00处取得下一条指令; ④ 恢复正常ARM工作状态运行。
6. 某系统数据总线宽度为8,地址总线宽度为20。其系统存储器扩展电路如下图所示。(8分)
① 图中74LS138的作用是什么?它在什么条件下才工作?
② 图中地址信号采用哪种译码方式?有什么缺点? ③ 图中RAM芯片的地址范围分别是多少?
④ 利用ARM汇编语言编写程序段将RAM最低地址开始的20个字节清零。
第 4 页 共 5页
((2分)74LS138用于对系统高位地址线译码以产生存储芯片的片选信号;当M/IO信号为高
/RD或/WR为低电平、A17为低电平时74LS138工作。
2分)图中采用的是部分译码方式;其缺点是系统中会出现地址重叠现象,读写不可靠。 2分)RAM的地址范围为:08000H~0BFFFH等 地址信A19 A18 A17 A16 A15 A14 A13~A0 号 首地址 X X 0 0 1 X 00 0000 0000 0000 末地址 X X 0 0 1 X 11 1111 1111 1111 ④ (2分)MOV R0, 0
MOV R1,0 MOV R2, 0 MOV R3,0 MOV R4,0 MOV
R5,8000H STMIA
R5,{R0~R4}
第 5 页 共 5页
① (电平、② (③ (