第1章 嵌入式系统概述
用于控制、监视或者辅助操作机器和设备的装置
1. 系统内核小
2. 专用性强
3. 运行环境差异大
4. 可靠性要求高
5. 系统精简和高实时性操作系统
6. 具有固化在非易失性存储器中的代码
7. 嵌入式系统开发工作和环境
体积小、实时性、特殊的开发调试环境
答:嵌入式处理器可以分为四类:
嵌入式微处理器EMPU(Embedded Microprocessor Unit)嵌入式微处理器就是和通用计算机的微处理器对应的CPU。在应用中,一般是将微处理器装配在专门设计的电路板上,在母板上只保留和嵌入式相关的功能即可,这样可以满足嵌入式系统体积小和功耗低的要求。
嵌入式微控制器EMCU(Embedded Microcontroller Unit)嵌入式微控制器又称为单片机,它将CPU、存储器(少量的RAM、ROM或两者都有)和其它外设接口封装在同一片集成电路里。
嵌入式数字信号处理器EDSP(Embedded Digital Signal Processor)嵌入式DSP专门用来对离散时间信号进行极快的处理计算,提高编译效率和执行速度。在数字滤波、FFT、谱分析、图像处理等领域应用广泛。
嵌入式片上系统ESoC (Embedded System on Chip)。•ESoC:在一个硅片上实现一个更为复杂的系统。
答:嵌入式系统指的是以应用为中心和以计算机技术为基础的,并且软硬件是可裁剪的,能满足应用系统对功能、可靠性、成本、体积、功耗等指标严格要求的专用计算机系统。
答:与通用计算机相比,嵌入式系统特点:
1:嵌入式系统通常是面向特定应用的;
2:嵌入式系统功耗低、体积小、集成度高、成本低;
3:嵌入式系统具有较长的生命周期;
4:嵌入式系统具有固化的代码;
5:嵌入式系统开发需要专用开发工具和环境;
6:嵌入式系统软件需要RTOS开发平台;
7:嵌入式系统开发人员以应用专家为主;
8:嵌入式系统是知识集成系统。
答:嵌入式系统的典型组成:
这类产品从总体上来看由两部分组成:硬件、软件。
硬件:嵌入式芯片,由嵌入试CPU、内存RAM、ROM、寄存器、输入/输出通道组成。
软件:嵌入式操作系统、应用程序(C语言、汇编、JAVA语言等编成)。
然后这两部分由外壳包装起来。用户使按下键后,系统检测到后,经过输入通道收集,送到OS,然后OS根据按键的命令,发出相应的命令,调用响应的程序。处理完毕之后,把结果输出。
答:BootLoader是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。(对于嵌入式系统来说,有的使用操作系统,也有的不使用操作系统,但在系统启动时都必须运行BootLoader,为系统运行准备好软硬件环境。)
A、图形用户接口 B、驱动映射层C、硬件交互层 D、硬件抽象层
A、程序存储空间与数据存储空间分离 B、存储空间与IO空间分离
C、程序存储空间与数据存储空间合并 D、存储空间与IO空间合并
答:嵌入式系统的硬件是以嵌入式处理器为中心,由存储设备、I/O设备、通信接口设备、扩展设备接口以及电源等必要的辅助接口构成。
A.Windows CE B.VxWorks
C.windowsXP D.UC/OS
A.与硬件有关,与操作系统无关 B.与硬件无关,与操作系统有关
C.与硬件和操作系统都相关 D.与操作系统和硬件都无关
答:消费电子、通信设备、家庭设备、汽车电子、工业控制、军事国防、医疗电子等。
A.专用性强 B.软件丰富 C.可靠性高 D.实时性强
A.片上系统 B.先进精简指令集机器 C.存储器管理单元 D.实时操作系统
答:按照嵌入式系统的定义,嵌入式系统有3个基本特点,即“嵌入性”、“专用性”与“计算机”。
“嵌入性”由早期微型机时代的嵌入式计算机应用而来,专指计算机嵌入到对象体系中,实现对象体系的智能控制。当嵌入式系统变成一个独立应用产品时,可将嵌入性理解为内部嵌有微处理器或计算机。
“计算机”是对象系统智能化控制的根本保证。随着单片机向MCU、SoC发展,片内计算机外围电路、接口电路、控制单元日益增多,“专用计算机系统”演变成为“内含微处理器”的现代电子系统。与传统的电子系统相比较,现代电子系统由于内含微处理器,能实现对象系统的计算机智能化控制能力。
“专用性”是指在满足对象控制要求及环境要求下的软硬件裁剪性。嵌入式系统的软、硬件配置必须依据嵌入对象的要求,设计成专用的嵌入式应用系统。
A.“天河一号”超级计算机 B.戴尔 XPS13D-7508T 笔记本电脑
C.苹果iPhone 6手机 D.三星900X3K-K01超极本
答:产品种类不断丰富;应用范围不断普及;性能不断提高;功耗不断降低,体积不断缩小;网络化、智能化程度不断提高;软件成为影响价格的主要因素。
答:初始化程序是系统加电后运行的第一段软件代码。
在嵌入式系统中,通常整个系统的加载启动任务就完全由BootLoader来完成。简单地说,BootLoader就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,可以初始化硬件设备、建立内存空间的映射图,从而将系统的软、硬件环境带到一个合适的状态,以便为调用应用程序或者操作系统内核准备好正确的环境。
【解析】广义上讲,凡是带有微处理器的专用软硬件系统都可称为嵌入式系统。狭义上讲,嵌入式系统强调那些使用嵌入式微处理器构成的具有自己的操作系统和特定功能、用于特定场合的独立系统。嵌入式系统以应用为中心、以计算机技术为基础、软硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。选项中A、C、D均属于嵌入式系统;而服务器是网络环境中的高性能计算机,不属于嵌入式系统。所以本题选B。
【解析】嵌入式系统与通用计算机一样,也由硬件和软件两部分组成。硬件的主体是CPU和存储器,它们通过I/O接口和I/O设备与外部世界联系。现在嵌入式系统中使用最多的还是8位和16位CPU,但32位是技术发展的主流。故本题选C。
【解析】嵌入式系统的分类有多种。按系统的软硬件技术复杂度,嵌入式系统分为低端系统、中端系统和高端系统。其中低端系统硬件大多采用4位或8位单片机,不使用操作系统,由监控程序对系统进行控制,在工控领域和白色家电领域占主导地位。选型中D项表述错误,故选D。
【解析】随着电子设计自动化水平的提高和VLSI制造技术的飞速发展,半导体加工已经从微米、亚微米进入到深亚微米的时代,单个芯片上可以集成几亿个甚至几十亿个晶体管,因而能够把计算机或其他一些电子系统的全部电路都集成在单个芯片上,这种芯片就是所谓的片上系统。SoC芯片中既包含数字电路,也可以包含模拟电路,甚至还能包含数字/模拟混合电路和射频电路。由于SoC将嵌入式系统的几乎全部功能都集成在一块芯片中,单个芯片就能实现数据的采集、转换、存储、处理和I/O等多种功能。目前,大多数32位的嵌入式处理芯片均为SoC,SoC逐渐成为集成电路设计的主流发展趋势。D选项中平板电脑使用的也是SOC技术,故本题选D。
【解析】嵌入式处理器本身是不能独立工作的,必须给它供电,加上时钟信号,提供复位信号等才可能工作;嵌入式最小硬件系统一般包括嵌入式处理器、时钟电路、电源电路、复位电路、存储器和调试测试接口;而大多数基于ARM处理器核的处理器芯片都有调试接口。故本题A项错误。
【解析】嵌入式系统加电后执行的第一批最初操作称为引导或者自举(Boot),对应的程序称为引导程序或者加载程序,其英文术语是Bootloader;引导加载程序主要完成内存加电自检、外设存在自检、内存地址映射、初始化外围设备、内存寻址定位、加载和启动操作系统。由于硬件平台的不同,每种平台的引导程序也有所差异。故本题选B。
【解析】嵌入式系统的开发平台包含大量开发工具,软件开发工具通常包括:项目管理器、编辑器、编译器、连接器、定位器等;这些软件开发工具往往都使用统一的用户界面并作为一个整体提供给开发人员使用,以提高开发工作效率;有的开发平台中还包含一些中间件和软件组件,以满足特定应用领域的各种应用开发;嵌入式系统的开发平台大多采用宿主机-目标机的架构,宿主机是开发用机,目前大多数运行Windows操作系统,而应用软件的开发和调试都是通过宿主机开完成。故本题选D。
【解析】JATG可用于实现嵌入式系统的在线编程功能,其标准允许多个芯片通过JTAG接口串联在一起,实现对多个器件的测试;目前大多数嵌入式CPU、DSP、FPGA器件都支持JTAG标准;SWD是Cortex-M内核提供的功能与JTAG类似的调试接口。故本题选A。
第2章 ARM微处理器概述与编程模型
教材P36:1-8
答:ARM状态:执行ARM指令集
Thumb状态:执行Thumb指令集
使用跳转指令BX/BLX
格式:BX/BLX Rm 当Rm[0]为1时,从ARM态跳转到Thumb态
37个寄存器:31个通用寄存器,包括程序计数器PC;6个状态寄存器。
R13常作为堆栈指针(SP)
R14为链接寄存器(LR)保存子程序返回地址
答:复位:当发生复位异常时,处理器立即停止当前程序,进入禁止中断的管理模式,并从地址0x00000000或0xFFFF0000处开始执行。
未定义指令:ARM处理器认为当前指令未定义时,便产生了未定义指令中断。该异常可用于协处理器软件仿真。
软件中断:当用户模式下的程序使用指令SWI时,处理器便产生软件中断,进入管理模式,以调用特权操作。
指令预取中止:当处理器预取指令的地址不存在,或该地址不允许当前指令访问,存储器会向处理器发出中止信号;只有当预取的指令被执行时,才会产生指令预取中止异常。
数据访问中止:若处理器数据访问指令的地址不存在,或该地址不允许当前指令访问时,就会产生数据中止异常。
外部中断请求:当处理器的外部中断请求引脚有效,而且CPSR中的I位为0时,就会产生IRQ异常。系统的外设可通过该异常请求中断服务。
快速中断请求:处理器的快速中断请求引脚有效,而且CPSR中的F位为0时,将产生FIQ异常。
异 常 类 型 |
工 作 模 式 |
特定地址(低端) |
特定地址(高端) |
优 先 级 |
复位 |
管理模式 |
0x00000000 |
0xFFFF0000 |
1 |
未定义指令 |
未定义指令中止模式 |
0x00000004 |
0xFFFF0004 |
6 |
软件中断(SWI) |
管理模式 |
0x00000008 |
0xFFFF0008 |
6 |
指令预取中止 |
中止模式 |
0x0000000C |
0xFFFF000C |
5 |
数据访问中止 |
中止模式 |
0x00000010 |
0xFFFF0010 |
2 |
外部中断请求(IRQ) |
外部中断模式 |
0x00000018 |
0xFFFF0018 |
4 |
快速中断请求(FIQ) |
快速中断模式 |
0x0000001C |
0xFFFF001C |
3 |
答:ARM微处理器支持7种工作模式,分别为:
1)用户模式(usr):ARM处理器正常的程序执行状态;
2) 快速中断模式(fiq):用于高速数据传输或通道管理;
3) 外部中断模式(irq):用于通用的中断处理;
4) 管理模式(svc):操作系统使用的保护模式;
5) 数据访问终止模式(abt):当数据或指令预取终止时进入该模式 ,用于虚拟存储及存储保护 ;
6) 系统模式(sys):运行具有特权的操作系统任务;
7) 未定义指令中止模式(und):当未定义指令执行时进入该模式, 可用于支持硬件协处理器的软件仿真
答:1)复位异常(管理模式);无返回
2)未定义指令异常(未定义模式);返回指令MOVS PC,R14
3)软件中断(SWI)异常(管理模式);返回指令MOVS PC,R14
4)指令预取中止异常(中止模式);返回指令SUBS PC,R14,#4
5)数据访问中止(中止模式);返回指令SUBS PC,R14,#8
6)快速中断请求(FIQ)(FIQ模式);返回指令SUBS PC,R14,#4
7)外部中断请求(IRQ)(IRQ模式)。返回指令SUBS PC,R14,#4
答:N:负标志位,运算结果的第31位值,记录标志设置的结果。
Z:零标志位,如果标志设置操作的结果为0,则置位。
C:进位标志位,记录无符号加法溢出,减法无错位,循环移位。
V:溢出标志位,记录标志设置操作的有符号溢出。
I:中断禁止标志位,置位时禁止IRQ中断,否则允许IRQ中断使能。
F:中断禁止标志位,置位时禁止FIQ中断,否则允许FIQ中断使能。
T:控制位,置位时处理器运行在Thumb状态下,清零时处理器运行在ARM状态下。
M0~M4:模式控制位,定义处理器的7中模式。