嵌入式系统期末复习题.doc_第1页
嵌入式系统期末复习题.doc_第2页
嵌入式系统期末复习题.doc_第3页
嵌入式系统期末复习题.doc_第4页
嵌入式系统期末复习题.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

第一章 嵌入式系统基础模拟试题1什么是嵌入式系统?它由哪几个部分组成?答:嵌入式系统是指操作系统和功能软件集成于计算机硬件系统之中。简单的说就是系统的应用软件与系统的硬件一体化,类似与BIOS的工作方式。具有软件代码小,高度自动化,响应速度快等特点。特别适合于要求实时的和多任务的体系。根据IEEE(国际电气和电子工程师协会)的定义:嵌入式系统是“用于控制、监视或者辅助操作机器和设备的装置”(原文为devices used to control, monitor, or assist the operation of equipment, machinery or plants)。简单地讲就是嵌入到对象体中的专用计算机系统。嵌入式系统一般有3个主要的组成部分:硬件、实时操作系统以及应用软件。 图1.1 嵌入式系统三个组成部分硬件:包括处理器、存储器(ROM、RAM)、输入输出设备、其他部分辅助系统等。 实时操作系统(Real-Time Operating System,RTOS):用于管理应用软件,并提供一种机制,使得处理器分时地执行各个任务并完成一定的时限要求 。 应用软件:实现具体业务逻辑功能。2嵌入式系统的三要素是什么?答:嵌入式系统的三要素是嵌入、专用、计算机;其中嵌入性指的是嵌入到对象体系中,有对象环境要求;专用性是指软、硬件按对象要求裁减;计算机指实现对象的智能化功能。广义地说一个嵌入式系统就是一个具有特定功能或用途的计算机软硬件集合体。即以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统 。3嵌入式处理器按实时性要求分(软件范畴)可分哪几类:答:可分为以下三类: 非实时系统(PDA) 软实时系统(消费类产品) 硬实时系统(工业和军工系统)4什么是嵌入式微控制器(Microcontroller Unit, MCU)?答:嵌入式微控制器又称单片机,顾名思义,就是将整个计算机系统集成到一块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、EEPROM等各种必要功能和外设。为适应不同的应用需求,一般一个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核都是一样的,不同的是存储器和外设的配置及封装。这样可以使单片机最大限度地和应用需求相匹配,功能不多不少,从而减少功耗和成本。5简述嵌入式DSP处理器(Embedded Digital Signal Processor, EDSP)?答:DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面DSP算法正在大量进入嵌入式领域,DSP应用正从在通用单片机中以普通指令实现DSP功能,过渡到采用嵌入式DSP处理器。6列出5种以上的嵌入式实时操作系统(Real-Time Operating System,RTOS)。答:嵌入式实时操作系统(Real-Time Operating System,RTOS)是指操作系统本身要能在一个固定时限内对程序调用(或外部事件)做出正确的反应,亦即对时序与稳定性的要求十分严格。目前国际较为知名的有:VxWorks、NeutrinoRTOS、Nucleus Plus、 OS/9、VRTX、LynuxOS,RTLinux、BlueCat RT等。7嵌入式系统一般由几层组成,简介其作用。嵌入式系统一般由硬件层、中间层、软件层和功能层组成。其作用分别如下:(1)硬件层 :由嵌入式微处理器、外围电路和外设组成。外围电路有:电源电路、复位电路、调试接口和存储器电路,就构成一个嵌入式核心控制模块。操作系统和应用程序都可以固化在ROM或者Flash中。为方便使用,有的模块在此基础上增加了LCD、键盘、USB接口,以及其他一些功能的扩展电路。(2)中间层 :硬件层与软件层之间为中间层,也称为BSP(Board Support Package,板级支持包)。作用:将系统软件与底层硬件部分隔离,使得系统的底层设备驱动程序与硬件无关;功能:一般应具有相关硬件的初始化、数据的输入/输出操作和硬件设备的配置等功能。BSP是主板硬件环境和操作系统的中间接口,是软件平台中具有硬件依赖性的那一部分,主要目的是为了支持操作系统,使之能够更好地运行于硬件主板上。(3)软件层 :主要是操作系统,有的还包括文件系统、图形用户接口和网络系统等。操作系统是一个标准的内核,将中断、I/O、定时器等资源都封装起来,以方便用户使用。(4)功能层 :由基于操作系统开发的应用程序组成,用来完成对被控对象的控制功能。功能层是面向被控对象和用户的,为了方便用户操作,往往需要具有友好的人机界面。第二章 基于ARM920T核微处理器及硬件开发平台模拟试题1ARM9TDMI采用了几级流水线工作方式,简要说明。答:ARM9TDMI采用了5级流水线结构,即:取指(F)、指令译码(D)、执行(E)、数据存储访问(M)、写寄存器(W)。2ARM920T内核支持哪两套指令集?分别是多少位的指令系统?答:两套指令集分别是ARM高性能32位指令集和Thumb高代码密度16位指令集。3ARM9TDMI支持的数据类型有几种?答:ARM9TDMI支持的数据类型有字节(8位),半字(16位)及字(32位)数据类型。字必须是四字节边界对齐,半字必须是两字节边界对齐,非对齐数据访问取决与特定区域使用的指令。4ARM状态和Thumb状态之间如何切换?答:ARM指令集和Thumb指令集均有切换处理器状态的指令,在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且,处理器工作状态的转变并不影响处理器的工作模式和相应寄存器中的内容。但ARM微处理器在开始执行代码时,应该处于ARM状态。当操作数寄存器的状态位(位0)为1时,可以采用执行BX指令的方法,使微处理器从ARM状态切换到Thumb状态。当操作数寄存器的状态位为0时,执行BX指令可以使微处理器从Thumb状态切换到ARM状态。此外,在处理器进行异常处理时,将PC指针放入异常模式链接寄存器中,并从异常向量地址开始执行程序,也可以使处理器切换到ARM状态。5ARM920T体系结构支持哪两种方法存储字数据?答:ARM920T体系结构支持两种方法存储字数据即大端格式和小端格式。在大端格式中,字数据的高字节存储在低地址单元中,而字数据的低字节则存放在高地址单元中。在小端存储格式中,低地址单元中存放的是字数据的低字节,高地址单元存放的是字数据的高字节。在基于ARM920T内核的嵌入式系统中,常用小端存储格式来储存字数据。6ARM920T支持几种运行模式?答:ARM920T支持7种运行模式,分别为: 用户模式(usr),ARM处理器正常的程序执行状态; 快速中断模式(fiq),用于高速数据传输或通道处理; 外部中断模式(irq),用于通用的中断处理; 管理模式(svc),操作系统使用的保护模式; 数据访问终止模式(abt),当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护; 系统模式(sys),运行具有特权的操作系统任务; 未定义指令中止模式(und),当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。ARM微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变。大多数的应用程序运行在用户模式下,当处理器运行在用户模式下时,某些被保护的系统资源是不能被访问的。除用户模式以外,其余的6种模式称为非用户模式或特权模式;其中除去用户模式和系统模式以外的5种又称为异常模式,常用于处理中断或异常,以及访问受保护的系统资源等情况。7ARM微处理器有多少个32位寄存器?简要说明。答:ARM微处理器共有37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可编程访问的,取决微处理器的工作状态及具体的运行模式。但在任何时候,通用寄存器R14R0、程序计数器PC、一个或两个状态寄存器都是可访问的。8简述ARM920T在ARM状态下是如何组织寄存器的?答:ARM920T在ARM状态下通用寄存器包括R0R15,可以分为三类: 未分组寄存器R0R7; 分组寄存器R8R14 程序计数器PC(R15)(1)未分组寄存器R0R7:所有的运行模式下,未分组寄存器都指向同一个物理寄存器。(2)分组寄存器R8R14:对于分组寄存器,每一次所访问的物理寄存器与处理器当前的运行模式有关。对于R8R12来说,每个寄存器对应两个不同的物理寄存器,当使用fiq模式时,访问寄存器R8_fiqR12_fiq;当使用除fiq模式以外的其他模式时,访问寄存器R8_usrR12_usr。对于R13、R14来说,每个寄存器对应6个不同的物理寄存器,其中的一个是用户模式与系统模式共用,另外5个物理寄存器对应于其他5种不同的运行模式。采用以下的记号来区分不同的物理寄存器:R13_R14_其中,mode为以下几种模式之一:usr、fiq、irq、svc、abt、und。寄存器R13在ARM指令中常用作堆栈指针,但这只是一种习惯用法,用户也可使用其他的寄存器作为堆栈指针。而在Thumb指令集中,某些指令强制性的要求使用R13作为堆栈指针。R14也称作子程序连接寄存器(Subroutine Link Register)或连接寄存器LR。当执行BL子程序调用指令时,R14中得到R15(程序计数器PC)的备份。其他情况下,R14用作通用寄存器。与之类似,当发生中断或异常时,对应的分组寄存器R14_svc、R14_irq、R14_fiq、R14_abt和R14_und用来保存R15的返回值。(3)程序计数器PC(R15):寄存器R15用作程序计数器(PC)。ARM状态下,位1:0为0,位31:2用于保存PC;Thumb状态下,位0为0,位31:1用于保存PC。11ARM920T体系结构中包含一个当前程序状态寄存器(CPSR),其中用于条件码标志位有哪几个位?答:ARM920T体系结构中程序状态寄存器(CPSR),其中N、Z、C、V均为条件码标志位。它们的内容可被算术或逻辑运算的结果所改变,并且可以决定某条指令是否被执行。12ARM920T体系结构中包含一个当前程序状态寄存器(CPSR),其中用于控制的标志位有哪几个位?答:CPSR的低8位(包括I、F、T和M4:0)称为控制位,当发生异常时这些位可以被改变。如果处理器运行特权模式,这些位也可以由程序修改。中断禁止位I、F:置1时,禁止IRQ中断和FIQ中断。T标志位:该位反映处理器的运行状态。当该位为1时,程序运行于Thumb状态,否则运行于ARM状态。该信号反映在外部引脚TBIT上。在程序中不得修改CPSR中的TBIT位,否则处理器工作状态不能确定。运行模式位M4:0:M0、M1、M2、M3、M4是模式位。这些位决定了处理器的运行模式。13何为异常?ARM920T是如何处理异常事故的?答:当正常的程序执行流程发生暂时的停止时,称之为异常。在处理异常之前,当前处理器的状态必须保留,这样,当异常处理完成之后,当前程序可以继续执行。处理器允许多个异常同时发生,处理器会按固定的优先级对多个异常进行处理。14ARM920T体系结构所支持的哪几种异常?说明其具体含义。答:ARM920T体系结构所支持以下7种异常:(1)复位:当处理器的复位电平有效时,产生复位异常,程序跳转到复位异常处理程序处执行。(2)未定义指令:当ARM 处理器或协处理器遇到不能处理的指令时,产生未定义指令异常。可使用该异常机制进行软件仿真。(3)软件中断:该异常由执行SWI 指令产生,可用于用户模式下的程序调用特权操作指令。可使用该异常机制实现系统功能调用。(4)指令预取中止:若处理器预取指令的地址不存在,或该地址不允许当前指令访问,存储器会向处理器发出中止信号,但当预取的指令被执行时,才会产生指令预取中止异常。(5)数据中止:若处理器数据访问指令的地址不存在,或该地址不允许当前指令访问时,产生数据中止异常。(6)IRQ(外部中断请求):当处理器的外部中断请求引脚有效,且CPSR 中的I 位为0 时,产生IRQ 异常。系统的外设可通过该异常请求中断服务。(7)FIQ(快速中断请求):当处理器的快速中断请求引脚有效,且CPSR 中的F 位为0 时,产生FIQ 异常。15简述ARM处理器对异常的响应的步骤。答:当一个异常出现以后,ARM微处理器会执行以下几步操作:(1)将下一条指令的地址存入相应连接寄存器LR。若异常是从ARM状态进入,LR寄存器中保存的是下一条指令的地址(当前PC4或PC8,与异常的类型有关);若异常是从Thumb状态进入,则在LR寄存器中保存当前PC的偏移量。这样,异常处理程序就不需要确定异常是从何种状态进入的,程序在处理异常返回时能从正确的位置重新开始执行。例如:在软件中断异常SWI中,指令 MOV PC,R14_svc总是返回到下一条指令,而不管SWI是在ARM状态执行,还是在Thumb状态执行。(2)将CPSR复制到相应的SPSR中。(3)根据异常类型,强制设置CPSR的运行模式位。(4)强制PC从相应的异常向量地址取下一条指令执行,从而跳转到相应的异常处理程序处。还可以设置中断禁止位,以禁止中断发生。如果异常发生时,处理器处于Thumb状态,则当异常向量地址加载入PC时,处理器自动切换到ARM状态。16简述ARM处理器从异常返回的步骤答:异常处理完毕之后,执行以下操作从异常返回:(1)将连接寄存器LR的值减去相应的偏移量后送到PC中。(2)将SPSR复制回CPSR中。(3)若在进入异常处理时设置了中断禁止位,要在此清除。17基于ARM嵌入式系统设计时,应用程序中的异常如何处理?答:当系统运行时,异常可能会随时发生,为保证在ARM 处理器发生异常时不至于处于未知状态,在应用程序的设计中,首先要进行异常处理,采用的方式是在异常向量表中的特定位置放置一条跳转指令,跳转到异常处理程序,当ARM 处理器发生异常时,程序计数器PC 会被强制设置为对应的异常向量,从而跳转到异常处理程序,当异常处理完成以后,返回到主程序继续执行。当多个异常同时发生时,系统根据固定的优先级决定异常的处理顺序。异常优先级由高到低的排列次序为:复位、数据中止、FIQ、IRQ、预取指令中止、未定义指令、SWI。18写出基于ARM920T核的处理器的异常优先级(Exception Priorities)。答:当多个异常同时发生时,系统根据固定的优先级决定异常的处理次序。异常优先级由高到低的排列次序为:复位、数据中止、FIQ、IRQ、预取指令中止、未定义指令、SWI。19写出基于ARM920T核的处理器的异常向量(Exception Vectors)答:异常向量地址。异常向量表地址 异常 进入模式0x0000,0000 复位 管理模式0x0000,0004 未定义模式 未定义模式0x0000,0008 软件中断 管理模式0x0000,000C 终止(预取指令) 终止模式0x0000,0010 终止(数据) 终止模式0x0000,0014 保留 保留0x0000,0018 IRQ IRQ0x0000,001C FIQ FIQ第4章 基于ARM9和COS-II嵌入式系统设计模拟试题1简要说明C/OS-II内核调度特点。答: C/OS-II内核调度特点如下:C/OS-II内核调度主要有如下特点: 只支持基于优先级的抢占式调度算法,不支持时间片轮训; 64个优先级,只能创建64个任务,用户只能创建56个任务; 每个任务优先级都不相同。 不支持优先级逆转; READY队列通过内存映射表实现快速查询。效率非常高; 支持时钟节拍; 支持信号量,消息队列,事件控制块,事件标志组,消息邮箱任务通讯机制; 支持中断嵌套,中断嵌套层数可达255层,中断使用当前任务的堆栈保存上下文; 每个任务有自己的堆栈,堆栈大小用户自己设定; 支持动态修改任务优先级; 任务TCB为静态数组,建立任务只是从中获得一个TCB,不用动态分配,释放内存; 任务堆栈为用户静态或者动态创建,在任务创建外完成,任务创建本身不进行动态内存分配; 任务的总个数(OS_MAX_TASKS)由用户决定; 0优先级最高,63优先级最低; 有一个优先级最低的空闲任务,在没有用户任务运行的时候运行.2简要说明C/OS-II的特点。答:C/OS-II具有结构小巧、任务执行可

温馨提示

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

评论

0/150

提交评论