ARM嵌入式系统试题及答案_第1页
ARM嵌入式系统试题及答案_第2页
ARM嵌入式系统试题及答案_第3页
ARM嵌入式系统试题及答案_第4页
ARM嵌入式系统试题及答案_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——ARM嵌入式系统试题及答案

ARM嵌入式系统基础教程期中开卷

专业:软件1002班姓名:王世伟学号:04103060(24)

一、嵌入式系统基本概念

1、什么是嵌入式系统?有何特点?

答:所谓嵌入式,实际上是“嵌入式计算机系统〞,的简称,它是相对于通用计算机系统而言,重视于发展独立的单芯片技术。嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置〞。

特点:(1)嵌入式系统是将先进的计算机技术,半导体技术以及电子技术与各行业的具体应用相结合的产物,这一点就决定了他必然是一个技术密集,资金密集,高度分散,不断创新的知识集成系统。(2)系统内核小(3)专用性强(4)系统精简(5)系统软件要求(6)嵌入式软件开发要走向标准化,需要使用多任务的操作系统。(7)嵌入式系统本身并不具备在其上进行进一步开发的能力。

2、举例在你的身边常见到的嵌入式系统产品,谈一谈你对“嵌入式系统〞的初步理解。

答:产品有:洗衣机,空调,手机。

嵌入式系统就是内置小计算机系,可以对机器进行智能控制的系统。

3、嵌入式系统的3个基本特点?

答:(1)专用性(2)嵌入型(3)计算机系统

4、什么是嵌入式处理器,嵌入式处理器可以分为几大类?

答:嵌入式处理机是嵌入式的核心,是控制,辅助系统运行的硬件单元。

分类:四大类(1)嵌入式微处理器(2)嵌入式微控制器(3)嵌入式DSP处理器(4)SoC片上系统

5、广泛使用的三种类型的操作系统?

答:多道批处理操作系统、分时操作系统以及实时操作系统。

6、列举常见的4种嵌入式操作系统?说明你对嵌入式操作系统的基本认识,嵌入式

操作系统在嵌入式系统开发中的必要性。

答:嵌入式Linux、WinCE、VxWorks、μC/OS-II

没有操作系统的计算机效率十分底下,把操作系统嵌入到计算机中,可以提高

系统的可靠性,开发效率,缩短了开发周期。

二、ARM7体系结构

1、ARM是什么样的公司?

1

答:它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的

RISC处理器。特点是只设计芯片,而不生产。它将技术授权给世界上大量著名的半导体、软件和OEM厂商,并提供服务。

2、什么是RISC?什么是CISC?

答:RISC是精简指令集计算机的缩写。CISC是繁杂指令集计算机的缩写。

3、举出2个ARM公司当前应用比较多的ARM处理器核?

答:ARM7系列、ARM9系列、ARM10系列、ARM11系列、intel的Xscale系列和MPCore系列。

4、ARM7TDMI中的T、D、S、I分别表示什么含义?

答:T:支持高密度16位的Thumb指令集

D:支持片上调试

S:ARM7TDMI的可综合(synthesizable)版本(软核)I:支持EmbededICE观测硬件M:支持64位乘法

5、ARM7TDMI处理器采用什么样的体系结构,其可寻址地址空间多大?

答:ARM处理器使用冯.诺依曼结构

使用单个平面的232个8位字节地址空间。地址空间可以看作是包含230个32位字,或231个16位半字。

6、ARM7TDMI处理器采用几级流水线处理,使用何种存储器编址方式?

答:ARM7TDMI处理器采用三级流水线。

ARM处理器将存储器看做是一个从0开始的线性递增的字节集合。

7、ARM处理器哪几种状态和模式?

答:共7种。

(1)用户模式(2)快速中断模式(3)外部中断模式(4)管理模式(5)数据访问中断模式(6)系统模式(7)未定义指令模式

8、简述ARM处理器两种状态的应用特点。

答:ARM状态:处理器执行32位字对齐方式的ARM指令,每条ARM指令长度为32位,指令的功能强大,处理器默认为此状态。

Thumb状态:处理机执行16位半字对齐方式的Thumb。每条Thumb指令长度为16位,是ARM指令功能的子集。

9、简述ARM处理器7种模式的应用特点。

答:(1)用户模式:ARM处理器正常的程序执行模式。

2

(2)快速中断模式:用于高速数据传输或通道处理。(3)外部中断模式:用于通用的中断处理。(4)管理模式:操作系统使用的保护模式。

(5)数据访问中断模式:当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。

(6)系统模式:运行具有特权的操作系统任务。

(7)未定义指令模式:当未定义的指令执行时进入该模式,可用于支持硬件处理器的软件仿真。

答:M[4:0]是模式控制位,这些位决定处理器的工作模式。

T位:T位标志控制处理器依照ARM指令集运行,还是依照Thumb指令集运行。

31N30Z29C28V2787I6F5T4M43M32M21M10M010、结合CPSR的结构,说明其中的M[4:0]的作用和T位的作用。

11、结合CPSR的结构,说明其中的I位和F位的作用。

答:I位和F位都是中断阻止标志位,用来时能或阻止ARM的两种外部中断。

31N30Z29C28V2787I6F5T4M43M32M21M10M0

12、简述ARM7TDMI内部有哪些寄放器及特点。

答:分别为31个通用32位寄放器和6个状态寄存器。它们不能在同一用力同时被访

问,对其的访问取决于处理器状态和处理器模式。

13、结合下表简述FIQ模式下有哪几个私有寄放器,这些私有寄放器有何使用特点?

寄放器类别寄放器在汇编中的名称R0(a1)R1(a2)R2(a3)R3(a4)通用寄放器和程序计数器R4(v1)R5(v2)R6(v3)R7(v4)R8(v5)R9(SB,v6)R10(SL,v7)R11(FP,v8)R12(IP)R13(SP)R14(LR)R15(PC)状态寄放器CPSRSPSR-SPSR_svcR13R14R13_scvR14_svcR8R9R10R11R12R13_abtR14_abtR15CPSRSPSR_abtSPSR_undSPSR_irqSPSR_fiqR13_undR14_undR13_irqR13_irq各模式下实际访问的寄放器用户系统管理中止R0R1R2R3R4R5R6R7R8_fiqR9_fiqR10_fiqR11_fiqR12_fiqR13_fiqR14_fiq未定义中断快中断

答:FIQ模式下私有寄放器有R8-fiq,R9-fiq,R10-fiq,R11-fiq,R12-fiq,R13-fiq,R14-fiq,和SPSR-fiq。

3

这些寄放器使得在发生FIQ中断,处理器不必为保护寄放器而浪费时间,从而加速了FIQ的处理速度。

14、ARM7TDMI中的PC指向的是下一条将要执行的指令,这句话对吗?为什么?

答:不对,PC中的内容总是指向正在“取指〞指令的地址。

15、简述ARM处理器的CPSR和SPSR的功能、作用和工作方式。

答:CPSR是当前状态寄放器,他可以在任何运行模式下被访问,它包括条件标志位,中断标志位,当前处理器模式标志位,以及其他的一些相关的控制盒状态位。ARM内核就是通过使用CPSR来监视和控制内部操作的。

SPSR用于保存CPSR的当前值,从异常退出时则可由SPSR来恢复CPSR。

16、简述ARM7的内部寄放器R13、R14、R15的主要功能、作用和工作方式。

答:R13作为堆栈指针SP,用于指定堆栈操作出入口的地址。其他6个R13寄放器为堆栈寄放器。为用户模式和系统模式共用一个。

R14可以用作通用寄放器,也可以用作链接寄放器。链接寄放器用于保存子程序地址或者返回地址。

R15:程序寄放器,总是指向正在“取指〞的指令

17、什么是计算机的寻址方式?ARM7TDMI有几种寻址方式?

答:寄放器寻址、马上寻址、寄放器移位寻址、寄放器间接寻址、基址寻址、多寄放器寻址、堆栈寻址、相对寻址。

18、什么是堆栈?ARM中的堆栈是如何定义和使用的?

答:堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。

ARM处理器将RB作为堆栈指针SP,用于保存堆栈的出入口处地址。

19、何谓存储的“大端模式〞、“小端模式〞?写出数据0x12345678在0x20000000字单元中

“小端模式〞下的存储细节。

答:大端模式:依照数据的低字节存放在高地址中的顺序进行存储。小端模式:依照数据的高字节存放在高地址中的顺序进行存储。0x20000000存放0x78,0x20000001存放0x56,0x20000002存放0x340x20000003存放0x12。

20、什么是“字对齐〞和“半字对齐〞?ARM指令必需字对齐存放,Thumb指令必需半字对

齐存放,这句话正确吗?

答:假使一个字数据的访问存储地址A能被4整除,即地址的低两位为零,则为字对齐的存储器访问。

假使一个半数据的访问的存储地址A能被2整除,即地址的最低位为零,则为半字对齐的存储器访问,

假使Thumb状态下将一个非字对齐的地址写入PC,则数据在写入PC时第0位被忽略,最终PC的bit0为0,将会产生不可预料的结果。

4

21、ARM指令长度和Thumb指令长度固定位长吗?位长分别是多少?

答:固定,ARM为一个字(32bit),Thumb为一个半字(16bit)

22、ARM7TDMI中的中断分为那两类?在CPU级别如何分别屏蔽?

答:分别为IRQ,FIQ,在cpu级别通过状态寄放器CPSR中的I和F位置位来屏蔽。

23、什么是ARM7TDMI中的异常?简述ARM7TDMI中的复位、IRQ、FIQ和软中断等几种

主要异常的控制原理。

答:异常是指正常的程序被暂时中止的状态模式。

复位异常时处理器进行管理模式执行相应操作,I和F均为阻止;软中断异常也进入管理模式,I位阻止;IRQ异常时进入中断模式,I位阻止;FIQ异常进入快速中断模式,I和F位均为阻止,都是通过异常向量表。

24、简述ARM7TDMI中产生复位、IRQ、FIQ和软中断等几种主要异常的条件,这几种

异常会使ARM分别进入到哪种模式?ARM核响应异常的过程,以及这几种异常地返回指令是什么?答:复位异常:当nRESET信号被拉低时,ARM处理器放弃正在执行时的指令,等到nRESET下信号再次变高时,ARM执行以下操作:(1)强制M[4:0]复为10011,进入管理模式;(2)将CPSR中的I和F置位;(3)将CPSR中的T位清零(4)强制pc从地址0x00开始对下一条指令进行取值;(5)返回ARM状态并回复执行,无返回指令。IRQ:只有CPSR中相应的I位被清除时,才可能发生IRQ异常,进入中断模式,内核自动作如下处理:(1)将异常处理的返回地址保存到R14-irq中(2)用户模式的CPSR被保存到SPSR-irq中;(3)修改CPSR,阻止新的IRQ中断产生,进入ARM状态,IRQ模式(4)置IRQ模式下的IRQ异常处理程序的中断入口地址向量。地址0x00000018。返回指令:subspc,R14-irq,#4

FIQ:只有CPSR中的想用下位被清零时,才发生下IQ异常进入FIQ模式,FIQ中的8个专用寄放器用来保护中断地址。其返回指令:subspc,R14-fiq,#4

软中断swi:用于进入“管理模式〞,寻常用于请求一个特定的管理函数。返回指令:movspc,R14-svc

三、ARM7TDMI指令系统

1、ARM7TDMI支持哪几种指令集,各有什么特点?

答:支持ARM指令集和Thumb指令集两种。

ARM指令集:指令32位,效率高,代码密度低,所有ARM指令都是可以有条件执行的。

Thumb指令集:指令16位,代码密度较高,Thumb指令仅有一条指令具备条件执行功

2、ARM汇编指令的基本格式?

答:基本指令:

在ARM指令集中,每条指令占有4个字节,即指令长度为32位。

5

3、何谓ARM指令的条件码?默认的条件码是什么?举例说明ARM指令的条件码对指

令执行的影响。

答:条件码是依照指定条件执行的操作条件:默认条件码是AL(无条件执行)例子:比较两值大小,并进行相应加1处理:

cmpR0,R1;ADDHIR0,R0,#1;ADDLSR1,R1,#1

4、解释何为“满堆栈〞、“空堆栈〞、“递增堆栈〞和“递减堆栈〞?ARM指令系统中是如何支

持的?

答:满堆栈:堆栈指针指向最终压入栈的有效数据项。空堆栈:堆栈指针指向下一个待压入数据的空位置。

递增堆栈:在向堆栈写入数据后,堆栈指针的值变大,即向高地址方向生长。递减堆栈:在想堆栈写入数据后,堆栈指针的值变小,即向低地址方向生长。ARM指令支持四种对战类型:满递增,空递增,满递减,空递减。

5、请说明MOV指令与LDR加载指令的区别和用途。

答:LDR的操作数既可以来源于寄放器也可以来源于存储器,MOV的操作数能来源于寄放器。

LDR指令从内存中读取数据放入寄放器,用于对内存变量和数据的访问、查表、

程序的跳转、外围部件的控制操作等;MOV指令将8位马上数或寄放器传送到目标寄放器(Rd),可用于移位运算等操作。

6、解释B指令、BL指令与BX指令的功能区别?简述他们的应用场合。

答:B指令:是分支指令,跳转到标号指定的地址程序。Bl指令:带连接的分支指令,跳转到指定的地址程序,同时还将程序计数器PC的值保存到LR寄放器中。BX指令:带状态切换的分支指令,跳转到Rm指定的地址处执行程序,根据跳转地址的最低位来切换处理器状态。B/BL指令跳转范围限制在当前指令的+-32MB地址内。

7、解释SWI(软中断)指令的执行过程和典型应用。

答:SWI指令用于产生软中断,从而实现先从用户模式到管理模式的变换。在切换时,CPSR寄放器内容将保存到管理模式的SPSR中,同时程序跳转到SWI异常向量入口处。SWI用于系统功能调用。

8、ARM汇编指令条件码如下表,分析下两段程序片断的功能,写出其等价的类C语

言功能描述:条件助记符EQNECS/HSCC/LOMI

标志Z=1Z=0C=1C=0N=1相等不相等含义无符号数大于或等于无符号数小于负数6

PLVSVCHILSGELTGTLEALNV

N=0V=1V=0C=1,Z=0C=0,Z=1N=VN!=VZ=0,N=VZ=1,N!=V任何任何正数或零溢出没有溢出无符号数大于无符号数小于或等于有符号数大于或等于有符号数小于有符号数大于有符号数小于或等于无条件执行(指令默认条件)从不执行(不要使用)程序片断1:

CMPR0,R1ADDHIR0,R0,#1ADDLSR1,R1,#1

程序片断2:

CMPR0,#10CMPNER1,#20ADDNER0,R0,R1

答:if(R0>R1)R0++;elseR1++;

if(R0!=10)if(R1!=20)R0+=R1;

9、结合ARM7TDMI结构中的流水线结构,解释IRQ中断返回指令:

SUBSPC,R14_irq,#4的原理

答:ARMTTDMI采用三级流水线结构,PC指向正在取值的指令,产生IRQ时,保存在R14-IRQ中的是PC的值,在返回时为保证正确性应返回到PC-4即中断前“正在译码〞的指令地址。所以返回指令为:subspc,R14-irq,#4;

四、LPC2000系列ARM硬件资源原理与使用

1、LPC2000系列器件有几种常见的封装形式和其封装特点?

答:常见的封装有64脚封装,144脚封装

特点:功耗低,有多个32位定时器,多达9个外部中断,16K字节静态RAM,

1/128/256k字节片Flash存储器,128为宽度接口加速器,4路10位ADC或8路10位ADC(64脚和144脚封装),46或76~112个GPIO(64脚和144脚封装)。

2、简要说明一下LPC2000系列器件片内存储器的特点?

7

答:片内存储器分为片内Flash和片内静态RAM。片内Flash通过128位宽度的总线与ARM内核相连,具有很高的速度,特有的存储器加速功能,可以将程序直接放在Flash上运行。SRAM支持8位、16位和32位的读写访问。

3、在LPC2000系列ARM芯片中,内Flash有哪几种写入方式?

答:(1)使用JTAG仿真/调试器,通过芯片的JTAG借口下载程序。(2)使用在系统编程技术,通过UART0接口下载程序。

(3)使用在应用编程技术,在用户程序运行时对Flash进行擦出和/或编程操作,实现数据的存储和固件的现场升级。

4、ARM寄放器PC、CPSR、SPSR分别有什么用?

答:PC是CUP中的程序计数器,内容总是指向正在“取指〞指令的地址。CPSR是当前程序状态寄放器,用来监视和控制内部操作的。

SPSR是物理状态寄放,用于保存CPSR的当前值,从异常退出时则由它来恢复CPSR。

5、什么是ARM处理器的异常?ARM处理器是如何处理异常的?

答:异常:在执行正常程序过程中,当发生某种异常事件或某种外部请求时,处理器就暂停执行当前的程序,进入异常模式。如何处理异常:

1)保存执行状态:将CPSR复制到发生的异常模式下的SPSR中。

2)模式切换:将CPSR模式位强制设置为与异常类型相对应的值,同时处理器进入到ARM执行模式,阻止所有IRQ中断,当进入FIQ快速中断模式时阻止FIQ中断。

3)保存返回地址:将下一条指令的地址(被打断程序)保存在LR(异常模式下LR_excep)中。

4)跳入异常向量表:强制设置PC的值为相应异常向量地址,跳转到异常处理程序中。

6、什么是ARM体系结构中的异常向量表?在应用中有何作用?

答:处理器规定了异常处理程序入口的地址区间,并规定了地址的存放顺序,一般称为异常向量表。

在异常处理过程中,可以加快异常服务的响应速度。

7、在ARM体系结构中,异常向量表中存放的是什么内容?

答:异常处理程序的程序入口地址。

8、在ARM体系结构中,异常向量表中0x0014(保存字)单元存放的是什么内容?有何

用途?

答:保存的异常入口,早期的ARM结构中会被用到,而在ARM7中是保存的,以确保软件能与不同的ARM结构兼容。而在有些处理器芯片

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论