《嵌入式习题答案》由会员分享,可在线阅读,更多相关《嵌入式习题答案(18页珍藏版)》请在金锄头文库上搜索。
1、第一章习题答案第一章习题答案1. 什么是嵌入式系统?请列举几个常见的嵌入式系统。 答:根据国际电气和电子工程师协会(IEEE)的定义,嵌入式系统是控制、监 视或者辅助设备、机器和生产线运行的装置(Devices used to control, monitor, or assist the operation of equipment, machinery or plants)。这主要是从产品的应 用角度加以定义的,由此可以看出嵌入式系统是软件和硬件的综合体,可以涵 盖机械等附属装置。 目前被我国科学家普遍认同的定义是:嵌入式系统是以应用为中心,以计 算机技术为基础,软硬件可裁减,对功能、可靠
2、性、成本、体积、功耗要求严 格的专用计算机系统。 常见的嵌入式系统:手机,DVD,路由器,核磁共振仪,全自动洗衣机。 2. 嵌入式系统与通用计算机有哪些区别? 答:(1) 以应用为中心;(2) 以计算机技术为基础(3) 软件和硬件可裁减(4) 对 系统性能要求严格(5)软件的固件化(6)需要专用的开发工具 3. 嵌入式系统的发展分为哪几个阶段? 答:第一阶段:无操作系统的嵌入算法阶段。第二阶段:以嵌入式 CPU 为基础, 以简单操作系统为核心的嵌入式系统。第三阶段:以嵌入式操作系统为标志的 嵌入式系统。第四阶段:以基于 Internet 为标志的嵌入式系统。 4. 请列举嵌入式系统的主要应用领
3、域。 答:(1)工业控制领域(2)交通运输领域(3)消费电子产品(4)家电领域(5)通信领 域(6)商业和金融领域(7)环境监测领域(8)医疗领域(9)建筑领域(10)军事国防 领域(11)航天航空领域第二章习题答案第二章习题答案1. 简述简单嵌入式系统与复杂嵌入式系统的主要区别。 答:简单嵌入式系统很早就已经存在,这类嵌入式系统因为软硬件复杂度都很 低,一般不使用操作系统,例如常用的单片机系统。对于复杂的嵌入式系统, 它的开发模式发生了极大的改变。一个复杂的嵌入式系统不仅硬件系统的开发 比单片机复杂了许多,更重要的是在该系统中采用了嵌入式操作系统,其应用 软件的开发转变为使用操作系统标准接口
4、的计算机工程领域的应用软件开发。 复杂嵌入式系统具有更强大的功能,但是简单的嵌入式并不会随着复杂的嵌入 式系统出现而消亡。 2. 简述嵌入式系统的体系结构。 答:嵌入式系统从组成上看,可分为嵌入式硬件系统与嵌入式软件系统两大部 分。嵌入式硬件层由嵌入式微处理器、嵌入式存储器系统、通用设备和 IO 接 口等组成。嵌入式系统的软件层分为嵌入式操作系统和嵌入式应用软件两大部 分。 3. 嵌入式处理器分为哪几类?答:嵌入式处理器可分为以下四种:嵌入式微控制器(MicroController Unit,MCU),嵌入式微处理器(Embedded Microprocessor Unit,EMPU),嵌入式
5、 DSP 处理器(Embedded Digital Signal Processor,EDSP)和嵌入式片上系统(System on Chip,SoC)。 4. ARM 中常用的嵌入式存储器都有哪些? 答:ARM 系统的存储器可以分为片内存储器和片外存储器。片内一般以 RAM 或 SRAM 为主。片外通常以 Flash 和 SDRAM 为主。嵌入式系统中常用的几种内 存有 Flash、SRAM、SDRAM、DDRSDRAM 等。 5. 嵌入式系统中常用的外设接口都有哪些? 答:串行接口 UART,USB 接口,IrDA 红外线接口,SPI(串行外围设备接口), I2C 总线接口,CAN 总线接
6、口,Ethernet(以太网接口)等。 6. 嵌入式系统中常用的输入输出设备都有哪些? 答:嵌入式系统中输入形式一般包括触摸屏、语音识别、按键、键盘和虚拟键 盘。输出设备主要有 LCD 显示和语音输出。 7. 简述嵌入式操作系统的特点,请列举几个常见的嵌入式操作系统。 答:(1)可装卸性(2)强实时性(3)统一的接口(4)强稳定性,弱交 互性(5)固化代码。常见的嵌入式操作系统有 Windows CE、VxWorks、C/OS、嵌入式 linux。8. 简述嵌入式系统开发的特点。 答:需要交叉开发工具和环境,软硬件协同设计,嵌入式系统开发人员以应用 专家为主,软件要求固态化存储,软件代码高质量
7、、高可靠性 ,系统软件的高 实时性 9. 简述嵌入式系统的开发周期。 答:10. 简述嵌入式系统的开发与通常 PC 机上的软件开发有什么区别。 答:系统软件开发模式可以分为两类:本地开发模式和交叉开发模式。嵌入式 系统的开发与通常 PC 机上的软件开发有很大的区别,原有的 PC 机的软件开发 过程从编写程序、编译和运行等过程全在同一个 PC 机平台上完成,属于本地 开发(native);嵌入式开发的程序编写和编译与原来一样还在 PC 机(host)上完成, 但编译产生的结果要在嵌入式目标平台(target)上运行。通常将这种在主机上 开发编译,在目标平台上调试运行的开发模式称为交叉开发。同样运
8、行在主机 上的编译器(例如 GCC)编译程序产生目标机上运行的可执行程序的编译过程 称为交叉编译。嵌入式系统采用这种交叉开发、交叉编译的开发环境主要是因 为嵌入式系统是种专用的计算机系统,采用量体裁衣量身定制的方法制造。 11. 简述宿主机目标机的开发模式。 答:交叉开发环境是指编译、链接和调试嵌入式应用软件的环境,它与运行嵌 入式应用软件的环境有所不同,通常采用宿主机目标机模式。宿主机 (host)一般采用一台通用计算机(如 PC 机或者工作站),它通过串口 (Serial)或者以太网(Ethernet)接口与目标机通信。宿主机的软硬件资源比 较丰富,不但包括功能强大的操作系统(如 Wind
9、ows 和 Linux),而且还有 各种各样优秀的开发工具(如 WindRiver 的 Tornado、Microsoft 的 Embedded Visual C+等),能够大大提高嵌入式应用软件的开发速度和效率。 目标机(target)一般在嵌入式应用软件的开发和调试期间使用,用来区别与嵌入式系统通 信的宿主机。目标机可以是嵌入式应用软件的实际运行环境,也可以是能够替代实际运行 环境的仿真系统,但软硬件资源通常都比较有限。嵌入式系统的交叉开发环境一般包括交 叉编译器、交叉调试器和系统仿真器(Emulator) ,其中交叉编译器用于在宿主机上生成能 在目标机上运行的代码,而交叉调试器和系统仿真
10、器则用于在宿主机与目标机间完成嵌入 式软件的调试。第三章习题答案第三章习题答案1. 简述 ARM 处理器的特点。答:ARM 处理器采用 RISC 架构,具有 RISC 的一般特点: 采用大量的寄存器,指令执行速度更快; 寻址方式灵活简单,执行效率高; 采用固定长度的指令格式; 大多数数据操作都在寄存器中进行, 通过 Load/Store 的体系结构在内存 和寄存器之间传递数据。 因此 ARM 处理器的内核很小,功耗也就很低。ARM 处理器还采用了一些 特别的技术,在保证高性能的同时尽量减小芯片体积,降低芯片的功耗。这些 技术包括: 在同一条数据处理指令中包含算术逻辑处理单元处理和移位处理; 使
11、用地址自动增加(减少)来优化程序中循环处理; Load/Store 指令可以批量传输数据,从而提高传输数据的效率; 所有指令都可以根据前面指令执行结果,决定是否执行,以提高指令执行 的效率; 支持 Thumb(16 位)/ARM(32 位)双指令集,能很好地兼容 8 位/16 位器件。 2. 嵌入式 RISC 处理器 ARM7TDMI 中 TDMI 的基本含义分别是什么? 答:T :支持 16 位压缩指令集 Thumb。D :支持 JTAG 调试器,可片上 Debug。M :支持 64 位长乘法指令 I: 嵌入式跟踪宏单元(ICE)。 3. 常用的 ARM 处理器系列都有哪些? 答:ARM 处
12、理器目前应用比较多的是 ARM7 系列、ARM9 系列、ARM9E 系列、 ARM10E 系列、SecurCore 系列、Intel 的 StrongARM、Xscale 等多个系列,最 新的系列是 ARM11 系列。 4. ARM 处理器一般支持的的数据类型都有哪些? 答:8 位有符号字节类型数据;8 位无符号字节类型数据;16 位有符号半字类 型数据;16 位无符号半字类型数据;32 位有符号字类型数据;32 位无符号字 类型数据。 5. 什么是大端模式?什么是小端模式?请举例说明它们的区别。所谓的大端模式,是指数据的低位保存在内存的高地址中,而数据的高位保存在内存 的 低地址中。所谓的小
13、端模式,是指数据的低位保存在内存的低地址中,而数据的高位保存 在内存的高地址中。若寄存器 R1=0x12345678,分别按小端模式和大端模式存储在 0x2000 字单元中,下图分别为在两种模式下内存的存储内容。6. 请简述 ARM7TDMI 采用哪几级流水线结构,并说明在 ARM 状态下各阶段指 令地址的关系。 答:ARM7 架构采用了三级流水线,分为取指(fetch) ,译码(decode)和执行 (execute)。程序计数器 R15(PC)总是指向取指的指令,而不是指向正在执行 的指令或者正在译码的指令。对于 ARM 状态下指令,PC 值=当前程序执行位置。7. 简述 ARM 和 TH
14、UMB 状态的区别,举例说明使用什么指令从 ARM 状态转换为 Thumb 状态。 答:ARM 状态:处理器执行 32 位的字对齐的 ARM 指令;Thumb 状态:处理 器执行 16 位的半字对齐的 Thumb 指令。 ARM 指令集和 Thumb 指令集均有切换处理器状态的指令 BX。 从 ARM 状态转换到 Thumb 状态: ADR R0, TSTART+ 1 BX R0 8. ARM 处理器有哪些工作模式?哪些是特权模式?哪些是异常模式? 答:ARM 体系结构支持 7 种工作模式(Processor modes) ,分别为用户模式 (usr) 、快中断模式(fiq) 、中断模式(ir
15、q) 、管理模式(svc) 、数据访问终止 模式(abt) 、系统模式(sys) 、及未定义指令中止模式(und) 。除去用户模式 外的其他 6 种处理器工作模式称为特权模式(Privileged Modes)。除去用户模 式和系统模式以外的 5 种处理器工作模式称为异常模式(Exception Modes) 9.ARM 处理器共有多少个寄存器?在所有工作模式下,哪些寄存器都指向同一 个物理寄存器? 答:ARM 处理器含有 37 个物理上独立的寄存器,其中包括 31 个通用寄存器和 6 个状态寄存器。R0-R12 寄存器在所有工作模式下都指向同一个物理寄存器。10.简述 CPSR 寄存器控制位的作用。答:(1)中断禁止位 I、F:I=1 禁止 IRQ 中断;F=1 禁止 FIQ 中断。 (2)T 标志位:该位 反映处理器的运行状态。当该位为 1 时,程序运行于 Thumb 状态,当该位为 0 时,表示运 行于 ARM 状态。(3) 运行模式位 M4:0:M0、M1、M2、M3、M4 是模式位。这些位决定 了处理器的运行模式。11. ARM 的异常中断包含哪些类型?它们的优先级顺序是怎样的?它们的异常 向量地址是多少? 答:12. 当处理异常时,ARM 内核会做哪些处理? 答:ARM 处理器对异常中断的响应过程如下: (1) 保存处理器当前状态、中断屏蔽位以及各条件