嵌入式系统开发工程师考试复习要点2017
嵌入式系统的核心是由一个或几个预先编程好以用来执行少数几项任务的 微处理器或者 单片机组成。以下是关于嵌入式系统开发工程师考试复习要点,希望大家认真阅读!
1、嵌入式系统的定义
(1)定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
(2)嵌入式系统发展的4个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向Internet阶段。
(3)知识产权核(IP核):具有知识产权的、功能具体、接口规范、可在多个集成电路设计中重复使用的功能模块,是实现系统芯片(SOC)的基本构件。
(4)IP核模块有行为、结构和物理3级不同程度的设计,对应描述功能行为的不同可以分为三类:软核、固核、硬核。
2、嵌入式系统的组成:硬件层、中间层、系统软件层和应用软件层
(1)硬件层:嵌入式微处理器、存储器、通用设备接口和I/O接口。
嵌入式核心模块=微处理器+电源电路+时钟电路+存储器Cache:位于主存和嵌入式微处理器内核之间,存放的是最近一段时间
微处理器使用最多的程序代码和数据。它的主要目标是减小存储器给微处理器内核造成的存储器访问瓶颈,使处理速度更快。
(2)中间层(也称为硬件抽象层HAL或者板级支持包BSP):它将系统上层软件和底层硬件分离开来,使系统上层软件开发人员无需关系底层硬件的具体情况,根据BSP层提供的接口开发即可。
BSP有两个特点:硬件相关性和操作系统相关性。设计一个完整的BSP需要完成两部分工作:
A、嵌入式系统的硬件初始化和BSP功能。
片级初始化:纯硬件的初始化过程,把嵌入式微处理器从上电的默认状态逐步设置成系统所要求的工作状态。
板级初始化:包含软硬件两部分在内的初始化过程,为随后的系统初始化和应用程序建立硬件和软件的运行环境。
系统级初始化:以软件为主的初始化过程,进行操作系统的初始化。
B、设计硬件相关的.设备驱动。
(3)系统软件层:由RTOS、文件系统、GUI、网络系统及通用组件模块组成。
RTOS是嵌入式应用软件的基础和开发平台。
(4)应用软件:由基于实时系统开发的应用程序组成。
3、实时系统
(1)定义:能在指定或确定的时间内完成系统功能和对外部或内部、同步或异步时间做出响应的系统。
(2)区别:通用系统一般追求的是系统的平均响应时间和用户的使用方便;而实时系统主要考虑的是在最坏情况下的系统行为。
(3)特点:时间约束性、可预测性、可靠性、与外部环境的交互性。
(4)硬实时(强实时):指应用的时间需求应能够得到完全满足,否则就造成重大安全事故,甚至造成重大的生命财产损失和生态破坏,如:航天、军事。
(5)软实时(弱实时):指某些应用虽然提出了时间的要求,但实时任务偶尔违反这种需求对系统运行及环境不会造成严重影响,如:监控系统、实时信息采集系统。
(6)任务的约束包括:时间约束、资源约束、执行顺序约束和性能约束。
-
嵌入式Linux系统概述
当下,微型化和专业化成为发展的新趋势,嵌入式产品成为信息产业的主流。下面yjbys小编为大家准备了关于嵌入式Linux系统的文章,欢迎阅读。1嵌入式Linux的特点嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁剪,适用于系统对功能、可靠性、成本、功耗严格要求的专...
-
嵌入式开发技术PCB设计
PCB设计,印制电路板的设计是以电路原理图为根据,实现电路设计者所需要的功能。那么你知道嵌入式开发中PCB设计基本概念吗?下面跟yjbys小编一起来了解一下吧!印刷电路板的设计主要指版图设计,需要考虑外部连接的布局。内部电子元件的优化布局。金属连线和通孔的优...
-
嵌入式培训简介
嵌入式培训就是嵌入式系统相关技术的培训。嵌入式系统说白了就是硬件和软件相结合,嵌入到整机里使整机实现智能化的一个系统。嵌入式系统简介嵌入式系统本身是一个相对模糊的定义。嵌入式系统已经渗透到我们生活中的每个角落,工业、服务业、消费电子…&hel...
-
2016年嵌入式c语言面试题及答案
嵌入式C语言是作为嵌入式Linux开发的基础语言,也是学习嵌入式的必备语言。常用到的包括数据类型、运算符与表达式、控制语句、数组、指针、函数等内容。本文为大家分享的是嵌入式C语言面试题题库及答案解析,希望对大家有所帮助!1.用预处理指令#define声明一个常...