嵌入式系统概论讲解
- 格式:doc
- 大小:256.50 KB
- 文档页数:14
嵌入式系统概论嵌入式系统是一种特殊的计算机系统,它被嵌入到其他设备中,以完成特定的功能或任务。
嵌入式系统广泛应用于各个领域,如家电、汽车、医疗设备、通信设备等。
本文将介绍嵌入式系统的基本概念、特点、应用领域以及发展趋势。
一、嵌入式系统的基本概念嵌入式系统是由硬件和软件组成的一种特殊计算机系统。
与通用计算机系统相比,嵌入式系统具有以下几个特点:1. 特定功能:嵌入式系统被设计用于执行特定的功能或任务,例如控制家电设备、驾驶汽车、监测环境等。
2. 实时性:嵌入式系统通常需要实时响应外部事件,确保系统能够及时做出反应。
3. 资源受限:由于嵌入式系统通常运行在资源受限的环境中,如处理能力、存储容量、能耗等都有限制。
4. 可靠性:嵌入式系统对系统的可靠性要求很高,一旦出现故障可能会对用户的生命财产安全造成影响。
二、嵌入式系统的应用领域嵌入式系统广泛应用于各个领域,以下列举几个典型的应用领域:1. 汽车领域:现代汽车中的嵌入式系统包括发动机控制单元(ECU)、车载娱乐系统、安全系统等,它们协同工作以提供稳定、安全的驾驶体验。
2. 家电领域:智能家居中的嵌入式系统能够实现家电设备的远程控制、能耗监测以及与其他设备的联动等功能。
3. 医疗设备领域:医疗设备中的嵌入式系统用于监测病人的生命体征、控制手术设备等,对病人的诊断和治疗起到重要作用。
4. 工业控制领域:嵌入式系统在工业自动化领域中广泛应用,用于控制生产线、监测设备状态、优化生产过程等。
三、嵌入式系统的发展趋势随着科技的不断进步,嵌入式系统也在不断发展。
以下是几个嵌入式系统的发展趋势:1. 物联网:随着物联网的兴起,越来越多的设备将与互联网连接,嵌入式系统将扮演连接设备与互联网的桥梁,实现设备之间的通信与协同工作。
2. 人工智能:人工智能技术的发展将为嵌入式系统带来更多的智能化能力,使其能够识别、理解和响应更复杂的指令或环境变化。
3. 虚拟化技术:虚拟化技术可以将多个嵌入式系统虚拟化为一个物理平台,提高系统的资源利用率和灵活性。
第一章嵌入式系统概论参考习题1、嵌入式系统本质上是什么系统?答:从本质上讲,嵌入式系统中的计算机总是处于一种实时计算模式,也可以认为嵌入式计算机应具有某种实时性。
也就是说,从嵌入式系统的广义概念考虑,嵌入式系统都可以看成是实时系统。
2、嵌入式系统开发与PC机软件开发的区别是什么?答:嵌入式开发就是设计特定功能的计算机系统,形象的说就是开发一种嵌入在一个机器上实现特定功能的一个系统。
PC的开发往往是上层应用程序,会更多的和业务流程,数据库,UI打交道。
嵌入式的开发主要是和底层打交道,例如内存,NAND, 各种控制器,中断调度等等。
当然现在也有很多需要在嵌入式设备上开发上层应用程序的需求了。
3、嵌入式系统基本概念?答:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可配置,对功能、可靠性、成本、体积、功耗有严格约束的专用系统。
这类系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统(可选择)以及应用程序等四个部分组成的。
4、嵌入式系统分类?答:(1)按微处理器位数划分按所采用的处理器位数,可以分为4位、8位、16位、32位和64位系统。
(2)按应用类别划分可以简单地划分为信息家电、通信、汽车电子、航空航天、移动设备、军用电子、工业控制、环境监控等各种类型。
(3)按系统的实时性划分硬实时系统、软实时系统和自适应实时。
(4)按工业界应用的复杂程度划分简单单处理器系统可扩展单处理器系统复杂嵌入式系统制造或过程控制中使用的计算机系统第二章ARM嵌入式微处理器技术基础参考习题1、ARM32位指令、16位指令的特点。
答:ARM微处理器支持32位的ARM指令集和16位Thumb指令集,每种指令集各有自己的优点和缺点:ARM指令集效率高,但代码密度低;Thumb指令集具有较高的代码密度,却仍保持ARM的大多数性能上的优势,可看做ARM指令集的子集。
2、简单说明RISC处理器与CISC处理器的主要区别有哪些?3、简要说明看门狗电路的作用和原理。
第一章嵌入式系统概论参考习题1、嵌入式系统本质上是什么系统?答:从本质上讲,嵌入式系统中的计算机总是处于一种实时计算模式,也可以认为嵌入式计算机应具有某种实时性。
也就是说,从嵌入式系统的广义概念考虑,嵌入式系统都可以看成是实时系统。
2、嵌入式系统开发与PC机软件开发的区别是什么?答:嵌入式开发就是设计特定功能的计算机系统,形象的说就是开发一种嵌入在一个机器上实现特定功能的一个系统。
PC的开发往往是上层应用程序,会更多的和业务流程,数据库,UI打交道。
嵌入式的开发主要是和底层打交道,例如内存,NAND, 各种控制器,中断调度等等。
当然现在也有很多需要在嵌入式设备上开发上层应用程序的需求了。
3、嵌入式系统基本概念?答:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可配置,对功能、可靠性、成本、体积、功耗有严格约束的专用系统。
这类系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统(可选择)以及应用程序等四个部分组成的。
4、嵌入式系统分类?答:(1)按微处理器位数划分按所采用的处理器位数,可以分为4位、8位、16位、32位和64位系统。
(2)按应用类别划分可以简单地划分为信息家电、通信、汽车电子、航空航天、移动设备、军用电子、工业控制、环境监控等各种类型。
(3)按系统的实时性划分硬实时系统、软实时系统和自适应实时。
(4)按工业界应用的复杂程度划分简单单处理器系统可扩展单处理器系统复杂嵌入式系统制造或过程控制中使用的计算机系统第二章ARM嵌入式微处理器技术基础参考习题1、ARM32位指令、16位指令的特点。
答:ARM微处理器支持32位的ARM指令集和16位Thumb指令集,每种指令集各有自己的优点和缺点:ARM指令集效率高,但代码密度低;Thumb指令集具有较高的代码密度,却仍保持ARM的大多数性能上的优势,可看做ARM指令集的子集。
2、简单说明RISC处理器与CISC处理器的主要区别有哪些?3、简要说明看门狗电路的作用和原理。
答:看门狗电路就是一个定时计数器,一旦到达最大计数值就会把单片机复位,其作用是防止程序进入死循环,监控程序的正常运行。
在程序正常执行一遍后,会清零到看门狗计数器,所以不会到达最大计数值,但是如果程序由于外部干扰等原因而进入死循环,定时计数器达最大计数值就会把单片机复位。
4、ARM系统结构的特点。
答:ARM内核采用精简指令集结构(RISC,Reduced Instruction SetComputer)体系结构。
其目标是设计出一套能在高时钟频率下单周期执行、简单而有效的指令集,RISC的设计重点在于降低硬件执行指令的复杂度,这是因为软件比硬件容易提供更大的灵活性和更高的智能。
5、在ARM处理器中的影子寄存器是干什么的?答:ARM影子寄存器是为外处理器的不同工作模式配备的专用物理寄存器,在异常模式下他们将替代用户系统模式下使用的部分寄存器。
通过引入影子寄存器,指令可以重复使用相同的寄存器编码,但是在不同模式下,这些编码对应不同的物理寄存器。
第三章嵌入式硬件及接口参考练习1、DRAM与SRAM在数据操作上的区别是什么?答:(1)对DRAM芯片来说,在读出数据之后还需重新写回数据,因而它的访问延迟和存储周期不同。
SRAM的访问时间与存储周期则没有差别(2)为防止信息丢失,DRAM需要定期刷新每个存储单元,SRAM却不需要(3)DRAM设计强调容量,而对SRAM设计来说,容量和速度同样重要(4)就可以比较的存储器设计技术而言,DRAM的容量大概为SRAM 的16倍,而SRAM的存储周期比DRAM的约快8~16倍2、NOR FLASH 与NAND FLASH在操作和使用上的区别是什么?答:NAND的特点是:极高的单元密度,可以达到高存储密度;写入和檫除的速度也很快,但NAND需要特殊的系统接口来串行地存取数据,对NAND的管理比较复杂。
NOR的特点是:芯片内执行,即应用的程序可以不必把代码读到系统RAM中而直接在Flash内运用;传输效率很高,在1-16MB的小容量时具有很高的成本效益,但是很低的写入和檫除的速度大大影响了它的性能。
3、RS232与RS422/485通信距离有什么差异?答:RS232,RS422是电气标准,主要区别就是逻辑如何表示。
RS232使用12V,0,-12V电压来表示逻辑,(-12V表示逻辑1,12V表示逻辑0),全双工,最少3条通信线(RX,TX,GND),因为使用绝对电压表示逻辑,由于干扰,导线电阻等原因,通讯距离不远,低速时几十米也是可以的。
RS422在RS232后推出,使用TTL差动电平表示逻辑,就是两根的电压差表示逻辑,RS422定义为全双工的,所以最少要4根通信线(一般额外地多一根地线),一个驱动器可以驱动最多10个接收器(即接收器为1/10单位负载),通讯距离与通讯速率有关系,一般距离短时可以使用高速率进行通信,速率低时可以进行较远距离通信,一般可达数百上千米。
4、为什么异步传输只以字节为单位传送数据,而不是数据块?答:异步传输将比特分成小组进行传送,小组可以是8位或1个字符或更长,发送方可以在任何时刻发送这些比特组,而接收方不知道它们会在什么时候到达。
异步传输以字节为单位,发送每一个字符代码时,前面均加上一个“起”信号,其长度规定为一个码元,极性为“0”,即空号的极性;字符代码后面均加上一个“止”信号,其长度为1或2个码元,极性为“1”,即与信号极性相同,加上起、止信号的作用就能区分串行传输的字符,以实现串行传输收、发双方码组或字符的同步,在传输过程中也易于检测出错情况。
第四章嵌入式软件体系结构参考练习1、嵌入式软件运行过程有几个阶段,每个阶段主要工作是什么?答:(1)3.2、什么是BSP,它与BIOS有什么区别?答:3、嵌入式操作系统有哪两种引导模式?答:嵌入式操作系的引导模式有:(1)需要Boot Loader的引导模式:对于采用RAM高性能RAM的系统,同样出于成本因素RAM空间有一定限制,此时一般采用Boot Loade引导方式,由Loader程序把操作系统内核中的数据段在复制到RAM中,代码段在Flash中运行。
(2)不需要Boot Loader的引导模式。
对于时间效率要求较高的系统,通常要求系统能够快速启动,由于将Flash中的代码复制到RAM中的操作会带来一定的时间开销,因此,对于此类系统启动时无需Boot Loader,而直接在NOR Flash或ROM系列可以做主存的非易失性存储介质中运行,已达到较快的启动速度。
4、嵌入式软件的常见三种体系结构是什么?答:整体结构、层次结构和客户机/服务器结构。
第五章嵌入式实时操作系统参考习题1、主要的实时调度算法有哪些?答:(1)时间片轮转调度(Round-Robin)(2)速率单调调度算法(RMS)(3)最早截至时间优先算法(EDF)(4)多处理器调度算法2、RMS和EDF调度算法?答:RMS即速率单调调度算法a)所有任务都是周期任务。
b)任务的优先级是静态的,并且反比于任务的周期;即周期越短,优先级越高。
c)任务的相对截止时间等于任务的周期。
d)任务之间不进行通信,也不需要同步。
e)任务可以在计算的任何位置被抢占,不存在临界区。
EDF即最早截至时间优先算法a)所有任务都是周期任务。
b)每个任务必须在下一次请求出现前完成,即任务周期为任务的截止时间。
c)任务是独立的,即一个任务的请求不依赖于其他任务的激励或完成。
d)截止时间越短的任务具有越高的优先权。
e)任务可以在计算的任何位置被抢占,不存在临界区。
3、嵌入式系统解决死锁的技术有哪些?答:解决/处理死锁的方法有预防死锁、避免死锁、检测和解除死锁,其中预防死锁方法最容易实现,但由于所施加的限制条件过于严格,会导致系统资源利用率和系统吞吐量降低;而检测和解除死锁方法可是系统获得较好的资源利用率和系统吞吐量。
4、嵌入式操作系统最核心的功能有哪些?答:任务管理、任务间的通信、中断、时钟管理、内存管理。
第六章BSP与系统引导参考练习:1、BSP与PC的BIOS有什么异同?答:1、PC机主板上的BIOS开始部分所做工作和BSP比较类似,主要是负责在电脑开启时检测、初始化系统设备(设置栈指针,中断分配,内存初始化等)、装入操作系统。
但是BIOS不包含设备驱动程序,而BSP却包含。
2、BIOS不可修改;BSP可以编程修改2、RTOS的引导方式主要有哪几种?答:1)需要Boot Loader的引导模式2)不需要Boot Loader的引导模式3)操作系统引导实例第七章嵌入式软件设计方法参考练习:嵌入式软件开发的常用工具答:如GUN gcc编译器、GUN make项目管理器等。
简答题1.常用的嵌入式调试技术有哪几种?请说明不同调试技术的区别。
答:1.模拟器方式调试工具和待调试的嵌入式软件都在主机上运行,通过软件手段模拟执行为某种嵌入式处理器编写的源程序。
简单的模拟器可以通过指令解释方式逐条执行源程序,分配虚拟存储空间和外设,进行语法和逻辑上的调试。
2.在线仿真器方式在线仿真器ICE是一种完全仿造调试目标CPU设计的仪器,目标系统对用户来说是完全透明的、可控的。
由于仿真器自成体系,调试时可以连接目标板,也可以不接目标板。
但是ICE价格昂贵,而且每种CPU 都需要一种与之对应的ICE,使得开发成本非常高。
3.监控器方式主机和目标板通过某种接口(通常是串口)连接,主机上提供调试界面,被调试程序下载到目标板上运行,通过与监控运行于目标机上的监控程序通信,获得调试信息。
2.嵌入式系统分为硬实时和软实时,请说明它们的区别答:它们对实时性要求的程度不同:硬实时系统对系统的响应时间有十分严格的约束。
如果在规定的时间内,系统响应不能满足,则将带来灾难性后果;软实时系统对系统的响应时间也有约束,但一般而言在规定的响应时间范围内不能满足,只是造成局部功能失效,不会出现灾难性后果。
3.简要介绍嵌入式软件的几种结构答:1)整体结构下开发嵌入式软件的特点:a.系统中每个函数有唯一定义好的接口,函数间调用不受限制;b.软件开发是设计、函数编码/调试、连接成系统的反复过程,所有函数相互可见,不存在任何的信息隐藏;c.函数调用可以有简单的分类,如核心调用、系统调用、用户调用等,用以简化编程,也可以不严格划分;d.统有唯一的主程序入口,如C程序的main函数。
2)层次结构的特点:a.可在现有抽象层基础上增加新的抽象层,便于简化复杂问题的设计实现;b.每层功能、接口的改变仅影响相邻层;c.每层接口都是抽象的,内部实现不受限制,很容易支持软件的重用。
3)客户机/服务器结构:a.将一个软件系统划分为服务器端和客户端两部分;b.服务器端统一存放系统中将使用的各种实现策略、算法和信息;根据客户端的请求完成相应的工作,并将结果信息发还给客户端,也就是提供所谓的服务;C.客户端根据软件功能的实现需要,向服务器端发出请求,要求服务器端选择适当的策略和信息进行处理,接收返还的信息并体现给终端用户;d.一个服务器端可以同时接收多个客户端的请求并完成相应的服务。