文档详情

嵌入式 简答、程序题.doc

发布:2017-01-02约6.81千字共6页下载文档
文本预览下载声明
二、简答题 1、简述Thumb指令集和ARM指令集的主要区别。(本题10分)考生答出以下一点得2分,得满10分为止) (1)ARM指令集支持的是32位指令系统;Thumb指令集支持16为指令系统。 (2)Thumb指令集是ARM指令集的一个子集。 (3)所有的Thumb指令集都有对应的ARM指令,Thumb编程模型也有对应的ARM模型。 (4)大多数Thumb指令都是无条件执行的;而几乎所有的ARM指令都是条件执行的。 (5)大多数Thumb指令目的寄存器和员寄存器相同;而ARM指令则可以不相同。 (6)Thumb指令集没有协处理器指令、信号量指令以及访问CPSR或SPSR得指令,没有乘加指令及64位乘法指令等。 Thumb指令特点 1、优化代码密度 2、提高窄内存的操作性能 3、是ARM指令集的一个子集 2、ARM微处理器支持7种运行模式,分别为: (1)usr(用户模式):ARM处理器正常程序执行模式。 (2)fiq(快速中断模式):用于高速数据传输或通道处理(特权模式)(异常模式) (3)irq(外部中断模式):用于通用的中断处理(特权模式)(异常模式) (4)svc(管理模式):操作系统使用的保护模式(特权模式)(异常模式) (5)abt (数据访问终止模式): 当数据或指令预取终止时进入该模式,可用于虚拟存储及 存储保护。(特权模式)(异常模式) (6) sys(系统模式): 运行具有特权的操作系统任务。(特权模式) (7) und(未定义指令中止模式):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。(特权模式)(异常模式) 3、指出快速中断模式(FIQ)响应速度快的几个原因。 (1)比其他模式有更多的私有寄存器。 (2)中断优先级比IRQ高。 (3)中断入口地址在终端向量表的最顶端,中断子程序可直接跟在后面,无需跳转。 5、简述精简指令集(RISC)的特点。 (1)RISC指令选取使用频率最高的、有用但不复杂的指令。 (2)RISC指令集指令长度固定,减少指令的格式和寻址方式种类。 (3)RISC指令之间各字段划分比较一致,功能比较规律。 (4)RISC指令采用Load/Store指令访问存储器,指令操作在存储器之间进行。 (5)RISC算术逻辑运算指令的操作数都在通用寄存器中存取。 (6)RISC大部分指令控制在1个或小于1个机器周期内完成。 (7)CISC架构主要用于PC机和服务器领域;CISC架构主多用于嵌入式系统领域。 6、简述ARM微处理器异常响应过程。 当一个异常出现以后,ARM微处理器会执行以下几步操作: (1) 将下一条指令的地址存入相应连接寄存器LR,以便程序在处理异常返回时能从正确的位置重新开始执行。若异常是从ARM状态进入,LR寄存器中保存的是下一条指令的地址(当前PC+4或PC+8,与异常的类型有关);若异常是从Thumb状态进入,则在LR寄存器中保存当前PC的偏移量。 (2)将CPSR状态传送到相应的SPSR中。 (3) 根据异常类型,强制设置CPSR的运行模式位。 (4)强制PC从相关的异常向量地址取下一条指令执行,跳转到相应的异常处理程序。还可以设置中断禁止位,以禁止中断发生。 如果异常发生时,处理器处于Thumb状态,则当异常向量地址加载入PC时,处理器自动切换到ARM状态。 异常处理完毕之后,ARM微处理器会执行以下几步操作从异常返回: (1)将连接寄存器LR的值减去相应的偏移量后送到PC中。 (2)将SPSR内容送回CPSR中。 (3)若在进入异常处理时设置了中断禁止位,要在此清除。 可以认为应用程序总是从复位异常处理程序开始执行的,因此复位异常处理程序不需要返回。 7、MMU在CPU和物理内存之间进行地址转换,将地址从逻辑空间映射到物理空间,这个转换过程一般称为内存映射。主要完成以下工作: (1)虚拟存储空间到物理存储空间的映射。采用了页式虚拟存储管理,它把虚拟地址空间分成一个个固定大小的块,每一块称为一页,把物理内存的地址空间也分成同样大小的页。MMU实现的就是从虚拟地址到物理地址的转换。 (2)存储器访问权限的控制。 (3)设置虚拟存储空间的缓冲的特性。 MMU中的域指的是一些段,大页,或者小页的集合。每个域的访问控制特性都是由芯片内部的寄存器中的相应控制位来控制的。 MMU中的快速上下文切换技术FCSE通过修改系统中不同进程的虚拟地址,避免在进程间切换时造成虚拟地址到物理地址的重映射,从而提高系统 的性能。 8、简述NAND Flash和NOR Flash的主要特征和二者的区别。 (1)NOR Flash 上的程序可以自启动;NAND Flash不可以自启动。 (2)NOR Flash容量通常在1 MB~8MB之间。而NAND Flash用在8MB
显示全部
相似文档