完美版资料嵌入式期末复习提纲包含答案.docx
考试题型: 1、判断题 10分 2、填空题 20分 3、选择题 20分 4、简答题 30分(5个) 5、应用题 20分(3个) 6、名字解释 复习资料: 书本 PPT课件,平时课堂例题。 平时作业和练习 考试范围:1-5章 其他说明: 课后习题是重点。 简答题来源于前5章,每章一个。每章重点:第一章:1.什么是嵌入式系统?试简单列举一些生活中常见的嵌入式系统的实例。 嵌入式系统是用于检测、控制、辅助、操作机械设备的装置。以应用为中心,一计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。2. 嵌入式系统具有哪些特点?3. 嵌入式系统由哪些部分组成?简单说明各部分的功能和作用。4. 嵌入式系统是怎样分类的? 5. 嵌入式系统的定义。 嵌入式系统是用于检测、控制、辅助、操作机械设备的装置。以应用为中心,一计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。6. 什么是交叉编译,试说明交叉编译的实现过程。7嵌入式系统有哪些应用领域。嵌入式系统技术具有非常广阔的应用前景,其应用领域可以包括: 工业控制: 基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8、16、32 位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。就传统的工业控制产品而言,低端型采用的往往是位单片机。但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展。 交通管理: 在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功的使用。目前GPS设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。 信息家电: 这将称为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。即使你不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。 家庭智能管理系统: 水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。第二章:1.嵌入式处理器有哪几类?简述各类嵌入式处理器的主要特点和应用领域。(P6) 嵌入式微控制器、嵌入式微处理器、嵌入式DSP、嵌入式片上系统。 (1)嵌入式微处理器集成处理器内核,存储管理器高速缓存芯片,存在体积小、重量轻、成本低和可靠性高等特点,其又称为单板机。(2)嵌入式微控制器是集成了微处理器、存储器和片内外设芯片称为微控制器,片上外设资源丰富适合于控制单片化、体积小、功耗低、成本低等特点。(3)嵌入式DSP专门用于信号处理的嵌入式芯片,适合执行DSP算法,能够对离散信号进行集化处理,提高速度。(4)嵌入式片上系统SOC软硬件的无缝结合,直接在处理器片内嵌入操作系统的代码模块,在单个芯片上实整个系统的功能2. 简单说明ARM7 TDMI的含义。(P7) ARM7TMDI是目前使用最广泛的32位嵌入式RISC处理器,属低端ARM处理器核。TDMI的基本含义为:T:支持16为压缩指令集Thumb;D:支持片上Debug;M:内嵌硬件乘法器(Multiplier)I:嵌入式ICE,支持片上断点和调试点;3. 选择ARM处理器时需要考虑哪些问题?(P34-P35)4. ARM处理器总共有多少个通用寄存器?这些通用寄存器的组成结构是什么样的? 这些寄存器按其在用户编程中的功能是如何划分的?特殊寄存器有哪些?他们的作用分别是什么?(P39-P40) ARM微处理器共有37个32位的寄存器,其中31个为通用寄存器,6个为状态寄存器。31个通用寄存器根据其编程特点可分为如下几种类型:a.不分组寄存器R0-R7,为所有模式共享;b.分组寄存器R8-R12,R8_fiq-R12_fiq,FIQ模式下的寄存器,R8-R12,其它模式共享c.分组寄存器R13-R14分为6组,用户、系统一组,其他每种模式一组:R13_<mode>通常用作堆栈指针SP,R14_<mode>通常用作子程序链接寄存器,当进入子程序时,常用来保存PC的返回值其中,mode为以下几种模式之一:usr、fiq、irq、svc、abt、und。d.程序寄存器R15(PC),为所有模式共享6个状态寄存器:一个CPSR当前程序状态寄存器,保存当前程序状态。五个程序状态备份寄存器SPSR(svc,abt,und,irq,frq),只有在异常模式下,才能被访问,各异常模式都拥有属于自己的SPSR,当发生异常时,SPSR用来保存CPSR的值,从异常退出时则可由SPSR来恢复CPSR。5. CPSR各状态位的作用是什么?如何进行操作,以改变各状态位?(P40-P41) CPSR可在任何运行模式下被访问,它包含条件码标志位、中断禁止位、当前处理器模式标志位,以及其他一些相关的控制和状态位。 条件码标志位: N:当用两个补码表示的带符号数进行运算时,N=1表示运算的结果为负数;N=0 表示运算的结果为正数或零; · Z:Z=1 表示运算的结果为零;Z=0表示运算的结果为非零; · C:加法(包括比较指令CMN)运算结果产生进位时(无符号数溢出),C=1,否则C=0。 减法(包括比较指令CMP)运算产生借位(无符号数溢出),C=0,否则C=1。 对于包含移位操作的非加/减运算指令,C为移出值的最后一位。 · V:对于加/减法运算指令,当操作数和运算结果为二进制的补码表示的带符号数时,V=1表示符号位溢出。 · CPSR的低8位(包括I、F、T和M4:0)称为控制位,当发生异常时这些位可以被改变。 状态寄存器(PSR)中的其余位为保留位,当改变PSR中的条件码标志位或者控制位时,保留位不要被改变,在程序中也不要使用保留位来存储数据。6. 试述ARM处理器对异常中断的响应过程。 ARM处理器对异常中断的响应过程如下所述:保存处理器当前状态、中断屏蔽位以及各条件标志位;设置当前程序状态寄存器CPSR中的相应位;将寄存器lr_mode设置成返回地址; 将程序计数器值PC,设置成该异常中断的中断向量地址,跳转到相应异常中断处执行。7. ARM指令的寻址方式有哪几种?试分别叙述其各自的特点并举例说明。(P36-P38) 8. ARM指令系统中对字节、半字、字的存取是如何实现的?(P37) Byte:字节,8位 Halfword:半字,16位 Word:字,32位9.课后习题2-13,2-14要掌握,包括上课讲过的常用指令。10.采用RISC架构的ARM微处理器一般具有什么特点?1、体积小、低功耗、低成本、高性能。 2、支持Thumb (16位)/ARNI (32位)双指令集,能很好的兼容8位/16位器件。 3、大量使用寄存器,指令执行速度更快。 4、大多数数据操作都在寄存器中完成。 5、寻址方式灵活简单,执行效率高。 6、指令长度固定。 11.ARM7和ARM9分别是几级流水线?流水线的概念以及简述三级流水线分为哪三级?(P35-P36)12. 简述ARM体系结构的T变种,M变种和E变种。(P32)13.ARM处理器支持哪些数据类型,分别是多少位? Byte:字节,8位 Halfword:半字,16位 Word:字,32位12.ARM处理器有几种处理器模式?ARM处理器有哪两种特殊的工作状态?(P38-P39) ARM有7种处理器模式。 用户模式: 正常程序运行的工作模式,不能直接从用户模式切换到其它模式 系统模式: 用于支持操作系统的特权任务等,可以直接切换到其它模式 快中断模式:用于快速中断处理,支持高速数据传输及通道处理,只有在FIQ异常响应时, 才进入此模式。 中断模式: 用于通用中断处理,只有在IRQ异常响应时,才进入此模式。 管理模式: 供操作系统使用的一种保护模式,只有在系统复位和软件中断响应时,才进入 此模式。 中止模式: 用于虚拟内存和/或存储器保护。 未定义模式:支持软件仿真的硬件协处理器,只有在未定义指令异常响应时,才进入此模式。15. ARM存储器系统的存储格式分为哪两种?课本图2-13,2-14要求熟练掌握。(P43-P44)ARM存储器有大端格式和小端。大端格式中,字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中;小端格式则相反。16.ARM寻址方式中涉及的指令都要求掌握。17.ARM指令格式、ARM存储器访问指令、ARM数据处理指令、ARM分支指令,课堂上讲过的都要掌握。18.试写出ARM汇编语言的语句格式及其注意事项。(P74)19.在ARM汇编语言编程中如何进行子程序调用及其返回?在 ARM 汇编语言程序中,子程序的调用一般是通过 BL 指令来实现的。在程序中,使用指令: BL 子程序名 如(BL PRINT_TEXT) 即可完成子程序的调用。 该指令在执行时完成如下操作:将子程序的返回地址存放在连接寄存器 LR 中,同时将程序计器 PC 指向子程序的入口点,当子程序执行完毕需要返回调用处时,只需要将存放在 LR 中的返回地址重新拷贝给程序计数器 PC 即可。在调用子程序的同时,也可以完成参数的传递和从子程序回运算的结果,通常可以使用寄存器 R0 R3 完成。 以下是使用 BL 指令调用子程序的汇编语言源程序的基本结构: AREA Init , CODE , READONLY ENTRY Start LDR R0 , =0x3FF5000 LDR R1 , 0xFF STR R1 , R0 LDR R0 , =0x3FF5008 LDR R1 , 0x01 STR R1 , R0 BL PRINT_TEXT PRINT_TEXT 20.什么是内嵌汇编?它的特点是什么?第三章:1.嵌入式系统的硬件有哪几个组成部分?(P87) 以嵌入式系统处理器为核心,加上存储器,I/O接口电路,必要的附属电路(电源,时钟,复位,中断)以及相应的总线,以及辅助接口组成。2. 试简单描述总线的四周期握手过程。(P89) (1) 设备一升高它的输出电平来发出查询信号,他告诉设备二应准备好接受数据。 (2) 设备二准备好接收数据,升高它的它的输出电平来发出应答信号,这时设备一准备好 发送数据,设备二已准备好接收数据。 (3) 一旦看到数据传输完毕,设备二降低它的输出电平表示它已经接受完数据。 (4) 看到设备二的应答信号变低,设备降低它的输出电平。3. 什么是DMA?DMA主要用来完成哪种总线操作?(P91) 直接存储器访问(Direct Memery-Access,DMA)是允许读/写不由CPU控制的总线操作。专用硬件来完成外设与存储器之间的高速数据传输。除CPU以外的操作外设和存储器的读写操作。4. 请画图说明分级存储器系统的结构。(P94) 5. RAM存储器有哪几种?它们的特点是什么?(P95-P96) 静态RAM,特点:价高,容量小,功耗低,稳定性要求高的场合。 动态RAM,特点:电路简单,价低,容量大,稳定性低,6. ROM存储器有哪几种?它们的特点分别是什么? (1)可编程ROM,只可编程一次。 (2)紫外线可擦可编程ROM,该类ROM可以通过紫外线擦出后重复编程。 (3)电可擦除可编程ROM,用户以字节为单位多次用电擦除和改写存储内容。7.总线的概念是什么?(P88)基本的总线操作包括?结合图3-3说明总线的读写操作过程。8.触摸屏的电阻式和电容式应用。(P103)第四章:1.驱动层软件可以分为哪三种类型?(P119) 板级初始化程序、与系统软件相关驱动程序、与应用相关的驱动程序2.什么是BootLoader?为什么说BootLoader是依赖于目标硬件实现的?(P120) Bootloader是系统加电后首先运行的一段程序代码,其目的是将系统的软硬件环境带到一个合适的状态,为调用操作系统内核准备好正确的坏境。 每种嵌入式微处理器体系结构都有不同的Bootloader,Bootloader还依赖于具体的嵌入式板级硬件设备的配置,所以依赖于目标硬件实现。3. 硬件抽象层一般实现哪些功能?(P136) 硬件抽象层的目的是为了将硬件抽象化,通过程序来控制CPU、I/O存储器等硬件的操作,从而使得系统的十倍驱动程序与硬件无关,在功能上,抽象层一般应实现相关硬件的初始化、数据的I/O操作、硬件十倍的配置操作等4. 设计板级支持包的主要目的是什么?它实现的主要功能有哪些?(P136) 为驱动程序提供访问硬件设备寄存器的函数包5.嵌入式软件的体系结构分为哪几层?6. BootLoader包含哪两种操作模式?试简述其特点。第五章:1.什么是嵌入式操作系统?请列举几个典型的嵌入式操作系统,并简述其主要特点。 1) VxWorks: 性能优越,开发调试便利,强大的技术支持,但是昂贵的价格让开发者望而却步。 2) Windows CE: 精简的模块化操作系统 多硬件平台支持 支持有线和无线的网络连接 稳健的实时性支持 丰富的多媒体和多语言支持 强大的开发工具 3) Palm OS: 3Com公司产品,专门为掌上电脑开发的32位的嵌入式操作系统 占有非常小的内存,基于Palm OS编写的应用程序占用的空间也非常小(通常只有几十KB) Palm提供了串行通信接口和红外线传输接口,利用它可以方便地与其它外部设备通信、传输数据 拥有开放的OS应用程序接口,开发商可根据需要自行开发所需的应用程序 具有强开放性,现在有大约数千种专门为Palm OS编写的应用程序,从程序内容上看,小到个人管理、游戏,大到行业解决方案,Palm OS无所不包。在丰富的软件支持下,基于Palm OS的掌上电脑功能得以不断扩展。 操作系统的节能功能。在Palm OS的应用程序中,如果没有事件运行,则系统设备进入半休眠(doze)的状态;如果应用程序停止活动一段时间,则系统自动进入休眠(sleep)状态。 合理的内存管理。Palm的存储器全部是可读写的快速RAM,动态RAM(Dynamic RAM)类似于PC机上的RAM,它为全局变量和其它不需永久保存的数据提供临时的存储空间;存储RAM(Storage RAM)类似于PC机上的硬盘,可以永久保存应用程序和数据。 Palm OS的数据是以数据库(database)的格式来存储的。 4) 嵌入式Linux: 嵌入式Linux OS逐渐形成了可与Windows CE等EOS相抗衡的局面。目前正在开发的嵌入式系统中,49%的项目选择Linux作为嵌入式操作系统。Linux现已成为嵌入式操作系统的理想选择。 开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。 精简的内核,性能高、稳定,多任务。 适用于不同的CPU,支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等。 能够提供完善的嵌入式GUI以及嵌入式X-Windows。 提供嵌入式浏览器、邮件程序、MP3播放器、MPEG播放器、记事本等应用程序。 提供完整的开发工具和SDK,同时提供PC上的开发版本。 用户可定制,可提供图形化的定制和配置工具。 常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。 针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。2. 非占先式内核与占先式内核的主要区别是什么?非占先式内核的优点:(1)响应中断快(2)可以使用不可重入函数(3)共享数据方便。 占先式内核是任务级响应时间最优化而且是确定的,不应直接使用不可重入函数3进程和线程的概念是什么?区别和联系是什么?4.每个任务都可以处于哪几种状态之一?名词解释:RTOS ARM RISC DMA BSP HAL