嵌入式复习题(8页).doc
-选择题1、 嵌入式系统有硬件和软件部分构成,以下(C)不属于嵌入式系统软件。A. 系统软件 B. 驱动 C. ADS软件 D. 嵌入式中间件 2、 ARM处理器的工作模式有( C )种。A. 5 B.6C. 7 D.83、 ARM寄存器组有(D )个寄存器。A、7B、32C、6D、374、 下列CPSR寄存器标志位的作用说法错误的是(D)。A. N:负数 B. Z: 零 C. C: 进位 D. V: 借位5、 ARM复位异常的入口地址是( A )。A、0x00000000B、0x00000008C、0x00000018D、0x000000146、 下列描述不属于RISC计算机的特点的是(C)。 A流水线每周期前进一步。 B更多通用寄存器。C指令长度不固定,执行需要多个周期。D独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输。7、 关于COS-II应用,以下说法不正确的是(B )。A、任务可以有类型说明 B、任务可以返回一个数值 C、任务可以有形参变量D、任务是一个无限循环8、 COS-II操作系统不属于( C)。A、RTOS B、占先式实时操作系统 C、非占先式实时操作系统 D、嵌入式实时操作系统9、 实时操作系统中,两个任务并发执行,一个任务要等待其合作伙伴发来信息,或建立某个条件后再向前执行,这种制约性合作关系被成为(A)。A. 同步 B. 互斥 C. 调度 D. 执行10、 每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是(D)。A. 嵌入式Linux提供了完善的网络技术支持;B. mCLinux是专门为没有MMU的ARM芯片开发的;C. mC/OS-操作系统是一种实时操作系统(RTOS);D. WinCE提供完全开放的源代码。11、 存储一个32位数0x12345678到2000H2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为( D)。A、0x21B、0x68 C、0x65D、0x0212、 ARM指令集和Thumb指令集分别是(D )位的。A. 8位,16位B. 16位,32位C. 16位,16位D. 32位,16位13、 寄存器R13除了可以做通用寄存器外,还可以做(C )。A、程序计数器B、链接寄存器C、栈指针寄存器 D、基址寄存器14、 下列关于存储管理单元(MMU)说法错误的是(B)。A. MMU提供的一个关键服务是使各个任务作为各自独立的程序在其自己的私有存储空间中运行。B. 在带MMU的操作系统控制下,运行的任务必须知道其他与之无关的任务的存储需求情况,这就简化了各个任务的设计。C. MMU提供了一些资源以允许使用虚拟存储器。D. MMU作为转换器,将程序和数据的虚拟地址(编译时的连接地址)转换成实际的物理地址,即在物理主存中的地址。15、 在C/OS-II系统中,OSTimeTick()函数只被以下(A)函数或过程所调用。A. OSTickISR B. OSShed C. OSCtxSwD. OSIntCtxSw二、 判断题1、 ARM处理器结构体系中具有T变种处理器核可以工作在ARM状态和Thumb状态。()2、 ARM处理器对内存的访问只能通过Load/Store指令来实现。()3、 C语言程序可以嵌套加入汇编程序模块。 ()4、 调试程序时,需要停止程序运行后才可查看变量内容()5、 COS-II操作系统中移植成功后即可使用文件系统(×X)6、 将模拟信号转换成数字信号的电路是D/A转换器。(×)7、 Nand Flash比Nor Flash成本高,可靠性差。(×) 8、 在COS-II操作系统中,已知Task1的优先级为12,Task2的优先级为26。假如在Task2运行过程中发生键盘中断,在执行中断服务程序时Task1进入就绪状态,则中断返回时Task1得到CPU的使用权。()9、 任务创建后即开始调度(X)10、 液晶工作在文本模式下时,既可以显示英文字符也可以显示汉字(X)11、 若定义任务task1的优先级为12,则不能再定义其他任务的优先级也为12()12、 处于就绪状态的任务只能切换到运行状态(X)13、 若OSTaskSuspend (prio)函数把正在延时的任务挂起,则调用一次对应的唤醒函数即可使该任务切换到就绪状态。(×X)14、 由于CPU内部寄存器的访问速度较高,根据ATPCS标准,应尽可能使函数的参数控制在4个以下。()15、 程序运行过程中的资源可以是显示器、键盘,但不可以是一个数组或变量(X)16、 IIC是同步串行数据总线。()17、 运算放大器的输出电压范围一般大于电源电压的范围。(×)18、 等待消息函数WaitMessage(0)中的“0”表示此函数的超时等待时间为0秒(×X)三、 填空题:(每空1分,共30分)1、 嵌入式处理器通常分为4类,即( )、( )、( )、( )。2、 S3C44B0X是三星公司生产的一款基于( )核的微处理器,共有160个引脚,其中GPIO多达( )个。3、 ARM嵌入式开发过程中常用的调试方式有:软件模拟器、( )、( )和ICE在线仿真等四种。4、 随着嵌入式系统的发展,嵌入式软件规模也日益复杂,软件结构由简单到复杂有:最简单的轮询结构、( ),以及较复杂的( )和( )等几种型式。5、 CLinux名称中的代表( ),C代表( ),从字面上看就知道它是一款适合在( )领域应用的Linux操作系统6、 嵌入式系统中,BSP是指( )、GUI指( )、SOC/SOPC是指( )。7、 ARM处理器采用( )体系结构,具有指令长度固定、大量使用( )、执行速度快、低功耗等特点。8、 ARM嵌入式最小系统一般必须包括:处理器、存储器、输入输出接口以及必要的电源电路、( )、( )等硬件单元电路。9、 常见的商用型嵌入式操作系统有( )、( )等,源码公开或免费的有( )、( )等。10、 C/OS-II中,任务的状态有5种,分别是( )、( )、( )、( )、( )11、 ARM处理器共有( )个寄存器,其中通用寄存器( )个、状态寄存器( )个。12、 ARM处理器核具有片上总线AMBA,AMBA具体定义了( )、( )、( )三类总线。13、 ARM7TDMI具有三级流水线结构,分别是( )、( )、( )14、 ARM嵌入式开发过程中常用的调试方式有:( )、( )、( )、( )。15、 嵌入式系统一般对操作系统的实时性有比较高的要求,按照对实时性的响应等级,嵌入式操作系统可分为( )和( )系统16、 常见的商用型嵌入式操作系统有( )、( )等,源码公开或免费的有( )、( )等17、 C/OS-II中,任务的状态有5种,分别是( )、( )、( )、( )和( )18、 CLinux名称中的代表( ),C代表( ),从字面上看就知道它是一款适合在( )领域应用的Linux操作系统19、 ARM嵌入式最小系统一般包括( )、( )、( )、( )、( )等硬件单元电路20、 随着嵌入式系统的发展,嵌入式软件规模也日益复杂,基本的软件体系结构有( )、( )、( )、( )等四、 简答题(共45分)1 简述嵌入式系统及特点(5分)2 试比较ARM7与ARM9的流水线结构?(5分)3 ARM体系结构有哪几种方法存储数据?一个32位字分别如何存储?试以0x12345678存入0x0开始的地址单元中为例加以说明。(8分)4 简述ARM微处理器对异常的响应过程。(8分)5 简述启动引导代码的作用?(7分)6 C/OS-II和CLinux相比较各有何特点?(7分)7 C/OS-II如何实现就绪任务的查找?(7分)8 什么是JTAG?ARM的JTAG接口的作用是什么?(5分)9 什么是JTAG?ARM的JTAG接口硬件测试逻辑引脚各有哪些?(8分)10 什么是异常?ARM的异常类型有哪些?(5分)11 什么是板级支持包?(5分)12 什么是任务?写出C/OS-II中任务的一般格式。(5分)13 移植C/OS-II处理器需要满足哪些条件?(5分)14 试比较C/OS-II、CLinux各有何特点?(5分)五、 综合题:(共20分)1 硬件设计(8分)S3C44B0XSST39VF1601M×16bit完成S3C44B0X与一片SST39VF160存储器的扩展连线,要求将该Flash安排在Bank0,即地址从0x0开始。并进一步说明嵌入式系统接口设计的一般方法。2 软件编程(12分应用uC/OS-II,创建至少三个任务,完成模拟量采集,通过RS232传至PC终端显示,当超过设定值时LED指示灯闪烁报警。假定处理器选用44B0,模拟量信号输入接AD通道0,LED阴极接GPB4脚。要求:写出完整的C程序框架,代码只写到任务一级即可;应对所调用的函数加以注释说明;参考答案及评分标准:一、填空题:(每空1分,共30分)本题只要答对30空即可1、 S3C44B0X是三星公司生产的基于( ARM7TDMI )核的微处理器,共有(160 )个引脚,其中GPIO( 71)个。2、 ARM嵌入式开发过程中常用的调试方式有:( 软件模拟器、ROM监控器 )、(在线调试器ICD )、在线仿真器ICE )。3、 随着嵌入式应用系统的发展,嵌入式软件规模也日益复杂,基本的软件体系结构有(轮询结构)、( 前后台/带中断的轮询结构)、(函数队列 )、(实时操作系统 )等4、 CLinux名称中的代表( 微小 ),C代表( 控制 ),从字面上看就知道它是一款适合在( 微控制器应用 )领域应用的Linux操作系统5、 嵌入式系统中,BSP是指( 板级支持包)、GUI指(图形用户界面)、SOC/SOPC是指(片上(可编程)系统 )6、 嵌入式处理器通常分为4类,即( MPU )、( DSP )、(MCU)、( SOC)。7、 ARM处理器采用(RISC)体系结构,具有(指令长度固定单周期、大量使用寄存器 )等特点。(答对两条即可)8、 ARM嵌入式最小系统一般包括(ARM微处理器)、(电源电路)、(复位电路)、(晶振电路)、(存贮器ROM/RAM )等硬件单元电路有时为调试方便还要增加(UART)、(JTAG)接口。(答出其中5个即可)9、 常见的商用型嵌入式操作系统有(Vxworks)、(WinCE)等,源码公开或免费的有(uC/OS-II)、(linux)等10、 C/OS-II中,任务的状态有5种,分别是(就绪)、(等待)、(运行)、(中断)和(休眠)二、简答题:(共20分)1、 嵌入式系统是嵌入到对象体系中的专用计算机系统。是用于控制,监视或辅助操作机器和设备的装置。国内普遍认同的定义:以应用为中心,以计算机技术为基础,软硬件可剪裁,适应应用系统对功能可靠性,成本,体积,功耗等严格要求的 专用计算机系统。特点:系统内核小,专用性强,系统精简,高实时性。2、 ARM7是三级流水线,分别为取指、译码、执行;ARM9是五级流水线,分别为取指、译码、执行、缓冲/数据、回写。ARM9把ARM7的三级流水线重新再分配,把执行阶段放在了译码中,把写放在了第五级。3、 当正常的程序执行流程发生暂时的停止时,称之为异常,例如处理一个外部的中断请求。ARM体系结构所支持的异常类型有7种:复位、未定义指令、软件中断、指令预取中止、数据中止、IRQ(外部中断请求)、FIQ(快速中断请求)。4、 答:JTAG:是Joint Test Action Group(联合测试行动小组) 的缩写,就是IEEE1149.1边界扫描测试标准,是一种用来对复杂IC与印刷电路板上的特性进行测试的工业标准方法。按此接口标准设计的CPU可以通过边界扫描便可以被测试。基于JTAG的调试技术,是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路TAP(Test Access Port,测试访问端口),通过专用的JTAG测试工具对内部结点进行测试现在许多处理器,如在ARM7TDMI等处理器中可以通过JTAG直接控制ARM的内部总线、I/O口等信息,从而达到调试的目的。5、 Board Support Package,介于硬件层与软件层之间,也称为硬件抽象层。它把系统软件与底层硬件部分隔离,使得操作系统的底层设备驱动程序与硬件无关。一般应具有相关硬件的初始化、数据的输入输出操作和硬件设备的配置等功能。6、 任务:本质上就是一段程序,基于嵌入式操作系统中的一个概念,要求同学理解一下在操作系统下任务的代码如何编写,在uC/OS-II下通常是一个无限的循环,一个任务形式上与其他函数一样,有函数返回类型,有型参,但任务绝不会返回。7、 移植C/OS-II处理器需要满足的条件:处理器的C编译器能产生可重入代码。(代码的可重入性是保证完成多任务的基础,除了在C程序中使用局部变量以外,还需要C编译器的支持)用C语言就可以打开和关闭中断;处理器支持中断并且能产生定时中断(通常在10Hz-1000Hz);处理器能支持并容纳一定量数据的硬件堆栈;处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令8、 uC/OS-II是实时多任务内核,内核代码小10K;源代码公开;抢占式;可裁减。uClinux 内核也小,但比uC/OS-II大许多;支持文件系统、Tcp/Ip;源码公开且免费;需要加装实时模块增强实时性。(答出三点以上即可)9、 答:当正常的程序执行流程发生暂时的停止时,称之为异常,例如处理一个外部的中断请求。在处理异常之前,当前处理器的状态必须保留,这样当异常处理完成之后,当前程序可以继续执行。处理器允许多个异常同时发生,它们将会按固定的优先级进行处理。ARM微处理器对异常的响应过程用伪码可以描述为:R14_<Exception_Mode> = Return Link ;(应有必要解释)SPSR_<Exception_Mode> = CPSRCPSR4:0 = Exception Mode NumberCPSR5 = 0;当运行于ARM工作状态时If <Exception_Mode> = Reset or FIQ then CPSR6 = 1;当响应FIQ异常时,禁止新的FIQ异常CPSR7 = 1PC = Exception Vector Address四、综合题:(共20分)1、画出原理图(其中44B0和存储器引脚引脚标注各2分、接口连线 1分、其他电源电路、时钟电路、复位电路各1分)共8分2、第1步:画出系统框图(软硬件划分及定义说明), 4分 ;第2步:软件主程序结构及框图(define和主函数注释说明)2分;第3步:主程序代码部分:硬件端口初始化 2分,uC/OS-II启动相关代码 2分,相关任务代码说明 2分。共6分综合题已知S3C2440A处理器端口F相关寄存器(GPFCON, GPFDAT, GPFUP)定义如下:寄存器 地 址读/写 描 述 复位值GPFCON 0x56000050 R/W 端口F配置寄存器 0x0GPFDAT 0x56000054 R/W 端口F数据寄存器 未定义GPFUP 0x56000058 R/W 端口F上拉控制寄存器 0x0GPFCON寄存器:GPF0 1:0 00 = Input 01 = Output 10 = EINT0 11 = reservedGPF1 3:2 00 = Input 01 = Output 10 = EINT1 11 = reservedGPF2 5:4 00 = Input 01 = Output 10 = EINT2 11 = reservedGPF3 7:6 00 = Input 01 = Output 10 = EINT3 11 = reservedGPF4 9:8 00 = Input 01 = Output 10 = EINT4 11 = reservedGPF5 11:10 00 = Input 01 = Output 10 = EINT5 11 = reservedGPF6 13:12 00 = Input 01 = Output 10 = EINT6 11 = reservedGPF7 15:14 00 = Input 01 = Output 10 = EINT7 11 = reservedGPFUP寄存器:GPFUP 位 描 述GPF7:0 7:0 0:使能对应引脚的上拉功能,1:对应引脚的上拉功能无效S3C2440A现应用该处理器端口F的GPF4-GPF7四个I/O管脚分别控制4个LED的亮灭,如上图所示:已知:系统提供5V直流电源;系统时钟20MHz,电路工作电压为2.5V和3.3V;程序存储器选用1M*16位SST39VF160芯片。要求如下:(1)试根据上述硬件原理设计一个LED流水灯控制程序,功能自拟;(8分);(2)若要增加4个按键来控制4个LED的亮灭,请画出完整的硬件原理图。(10分)(3)基于uC/OS-II实现LED流水灯控制,当某键按下后,相应LED灯灭,其它灯照例进行循环;再次按下该键,该灯恢复点亮。同时,将各灯状态通过串口终端显示。要求: 写出主程序及相关任务功能划分及代码,有注释;至少有3个任务;对所调用的函数方法只加以注释说明即可(12分)-第 7 页-