Download presentation
Presentation is loading. Please wait.
1
嵌入式系统设计 王行甫 0551_ 中国科学技术大学计算机学院
2
课程目的 理论与实践相结合。 以嵌入式系统基础及嵌入式处理器及其体系结构为重点,以应用为目的,全面介绍嵌入式系统的设计。
使大家既能对嵌入式系统及开发有一个全景的把握,又能深入理解嵌入式实时操作系统。
3
课程特点 利用PC机就可以自己动手搭建嵌入式系统的开发平台,熟悉应用开发,更方便地学习和理解嵌入式系统的基础知识: 从纯软件到硬/软件结合
从“纸”上谈兵(编程序)到“板”上谈兵 从“懂”怎么做到“会”做 从讲/听到讲/听/做
4
实验系统的内容 PC虚拟机 ARM9开发板 目标平台 开发工具 ADS集成开发环境 嵌入式操作系统 Linux 实验项目
5
课程成绩评定 课程成绩=平时成绩+实验成绩+期末考试成绩 平时成绩 20分,其中作业10分,出勤10分 实验成绩
20分,平时10分,实验报告10分 期末考试:闭卷考试60分,第十四周左右
6
目录 第1章 嵌入式系统概述 第2章 ARM微处理器概述与编程模型 第3章 ARM9指令系统 第4章 嵌入式程序设计基础
第1章 嵌入式系统概述 第2章 ARM微处理器概述与编程模型 第3章 ARM9指令系统 第4章 嵌入式程序设计基础 第5章 嵌入式内部可编程模块 第6章 嵌入式接口技术应用 第7章 软件开发环境
7
第1章 嵌入式系统概述 嵌入式系统定义 嵌入式系统的发展概述 嵌入式系统的硬件和软件特征 嵌入式系统的分类 嵌入式系统的应用
8
1.1 嵌入式系统定义 计算机发展的三大阶段 第一阶段:始于五十年代的由IBM, Burroughs, Honeywell等公司率先研制的大型机。 第二阶段:始于七十年代的个人计算机。 第三阶段:计算机正迈入下一个充满机遇的阶段—“后PC时代”或“无处不在的计算机”阶段。
9
1.1 嵌入式系统定义 无处不在的计算机 施乐公司Palo Alto研究中心主任Mark Weiser认为:
1.1 嵌入式系统定义 无处不在的计算机 施乐公司Palo Alto研究中心主任Mark Weiser认为: “从长远来看,PC机和计算机工作站将衰落,因为计算机变得无处不在:例如在墙里、在手腕上、在手写电脑中(象手写纸一样)等等,随用随取、伸手可及”。 全世界的计算机科学家正在形成一种共识: 计算机不会成为科幻电影中的那种贪婪的怪物, 而是将变得小巧玲珑, 无处不在. 他们藏身在任何地方, 又消失在所有地方, 功能强大, 确有无影无踪. 人们将这种思想命名为: “无所不在的计算机”。
10
嵌入式系统无处不在 彼此互连
11
1.1 嵌入式系统定义 什么是嵌入式系统 嵌入式系统(Embedded Systems)是指:“嵌入到对象体系中的、用于执行独立功能的专用计算机系统”。定义为以应用为中心,以微电子技术、控制技术、计算机技术和通讯技术为基础,强调硬件软件的协同性与整合性,软件硬件可剪裁的,适应应用系统对功能、可靠性、成本、体积、功耗和应用环境有等严格要求的专用计算机系统。
12
1.1 嵌入式系统定义 嵌入式系统的嵌入式本质就是将一个计算机嵌入到一个对象体系中去。
13
1.1 嵌入式系统定义 最简单的嵌入式系统仅有执行单一功能的控制能力,在唯一的 ROM中仅有实现单一功能的控制程序,无微型操作系统。复杂的嵌入式系统,例如个人数字助理(PDA)、手持电脑(HPC)等,具有与 PC几乎一样的功能。 实质上与PC的区别仅仅是将微型操作系统与应用软件嵌入在 ROM、RAM或FLASH存储器中,而不是存贮于磁盘等载体中。 很多复杂的嵌入式系统又是由若干个小型嵌入式系统组成的。
14
嵌入式系统示例 ——汽车控制系统 后车门控制系统 前车门控制系统 尾灯控制系统 发动器控制系统 所有的控制系统都是一个完整的嵌入式系统
马达 控制器 车灯 前车门控制系统 尾灯控制系统 发动器控制系统 所有的控制系统都是一个完整的嵌入式系统 座椅控制系统
15
1.1 嵌入式系统定义 从广义上讲,凡是带有微处理器的专用硬件系统都可以称为嵌入式系统,如各类单片机和DSP系统。这些系统在完成较为单一的专业功能时具有简洁高效的特点。但他们的软件的能力有限。 因此,推荐使用嵌入式微处理器构成独立系统,具有自己的操作系统,具有特定功能,用于特定场合的嵌入式系统。所以,一个嵌入式系统就是一个硬件和软件的集合体,它包括硬件和软件两部分。其中硬件包括嵌入式处理器、控制器、数字信号处理器(DSP)、存储及外设器件、输入输出(I/O)由于应用领域不同,应用程序千差万别。
16
1.1 嵌入式系统定义 按照上述嵌入式系统的定义,只要满足定义中三要素的计算机系统,都可称为嵌入式系统。 嵌入式系统按形态可分为
1.1 嵌入式系统定义 按照上述嵌入式系统的定义,只要满足定义中三要素的计算机系统,都可称为嵌入式系统。 嵌入式系统按形态可分为 设备级(工控机) 板级(单板、模块) 芯片级(MCU、SoC) 因此,有些人把嵌入式处理器当作嵌入式系统,但由于嵌入式系统是一个嵌入式计算机系统,因此,只有将嵌入式处理器构成一个计算机系统,并作为嵌入式应用时,这样的计算机系统才可称作嵌入式系统。
17
嵌入式系统的特点 嵌入式系统特别强调“量身定做”的原则,开发人员往往需要针对某一种特殊用途开发出一个截然不同的嵌入式系统来,所以我们很难不经过“大量”修改而直接将一个嵌入式系统全套用到其他的嵌入式产品上去。 “嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。对象系统则是指嵌入式系统所嵌入的宿主系统。嵌入式系统的特点是由三个基本要素衍生出来的。不同的嵌入式系统其特点会有所差异。
18
嵌入式系统的特点 与“嵌入性”的相关特点:由于是嵌入到对象系统中,必须满足对象系统的环境要求,如物理环境(小型)、电气/环境(可靠)、成本(价廉)等要求。 与“专用性”的相关特点:软、硬件的裁剪性;满足对象要求的最小软、硬件配置等。 与“计算机系统”的相关特点:嵌入式系统必须是能满足对象系统控制要求的计算机系统。与上两个特点相呼应,这样的计算机必须配置有与对象系统相适应的接口电路。
19
1.1.2 嵌入式系统的特点 与通用的计算机系统化相比,嵌入式系统具有以下显著特点。 系统内核小 专用性强 运行环境差异大 可靠性要求高
嵌入式系统的特点 与通用的计算机系统化相比,嵌入式系统具有以下显著特点。 系统内核小 专用性强 运行环境差异大 可靠性要求高 系统精简和高实时性操作系统 具有固化在非易失性存储器中的代码 嵌入式系统开发工作和环境
20
1.2 嵌入式系统的发展概述 1.2.1 嵌入式系统的历史与发展 1.始于微型机时代的嵌入式系统 (1)单片机开创了嵌入式系统独立发展之路
1.2 嵌入式系统的发展概述 嵌入式系统的历史与发展 1.始于微型机时代的嵌入式系统 (1)单片机开创了嵌入式系统独立发展之路 (2)单片机的技术发展史 单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。 2. 现代计算机技术的两大分支 通用计算机系统 嵌入式计算机系统
21
1.2.2 嵌入式系统的功能 1.提供强大的网络服务 针对外部联网要求,嵌入设备必须配有通信接口,相应需要TCP/IP协议簇软件支持;
嵌入式系统的功能 1.提供强大的网络服务 针对外部联网要求,嵌入设备必须配有通信接口,相应需要TCP/IP协议簇软件支持; 由于家用电器相互关联(如防盗报警、灯光能源控制、影视设备和信息终端交换信息等)及实验现场仪器的协调工作等要求,新一代嵌入式设备还需具备IEEE1394、USB、CAN、Bluetooth或IrDA通信接口。 同时也需要提供相应的通信组网协议软件和物理层驱动软件。
22
嵌入式系统的功能 2.小型化、低成本、低功耗 为满足这种特性,要求嵌入式产品设计者相应降低处理器的性能,限制内存容量和复用接口芯片。这就相应提高了对嵌入式软件设计技术要求,如选用最佳的编程模型和不断改进算法,采用Java编程模式,优化编译器性能等。 因此,既需要软件人员具有丰富的开发经验,更需要发展先进的嵌入式软件技术,如Java、Web和WAP等。
23
嵌入式系统的功能 3.人性化的人机界面 亿万用户之所以乐于接受嵌入式设备,其重要因素之一是它们与使用者之间的亲和力。它具有自然的人机交互界面,如司机操纵高度自动化的汽车主要还是通过习惯的方向盘、脚踏板和操纵杆。人们与信息终端交互要求以GUI屏幕为中心的多媒体界面。手写文字输入、语音拨号上网、收发电子邮件及彩色图形、图像已取得初步成效。 目前一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,但离掌式语言同声翻译还有很大距离。
24
嵌入式系统的功能 4.完善的开发平台 随着Internet技术的成熟、带宽的提高,ICP和ASP在网上提供的信息内容日趋丰富、应用项目多种多样,像移动电话、固定电话及电冰箱、微波炉等嵌入式电子设备的功能不再单一,电气结构也更为复杂。 为了满足应用功能的升级,设计者一方面采用更强大的嵌入式处理器,如32位、64位RISC芯片或数字信号处理器(DSP)增强处理能力;同时还采用实时多任务编程技术和交叉开发工具技术来控制功能复杂性,简化应用程序设计、保障软件质量和缩短开发周期。
25
1.3 嵌入式系统的硬件和软件特征 嵌入式系统是将嵌入了软件的计算机硬件作为其最重要部分的系统,它是一种专门用于某个应用或生产的特殊产品的计算机系统。由于其软件通常嵌入在ROM(只读存储器)中,因此,不像计算机那样需要辅助存储器,早期嵌入式系统自低向上包含3个部分。如图1-1所示。 嵌入式系统的组成部分是嵌入式系统硬件平台、嵌入式操作系统(RTOS)和嵌入式系统应用。
26
1.3 嵌入式系统的硬件和软件特征 嵌入式系统应用 应用程序与 操作系统的接口 嵌入式 实时操作系统 操作系统与 硬件的接口 嵌入式系统
1.3 嵌入式系统的硬件和软件特征 嵌入式系统应用 嵌入式 实时操作系统 嵌入式系统 硬件平台 应用程序与 操作系统的接口 操作系统与 硬件的接口
27
1.3 嵌入式系统的硬件和软件特征 经过不断地发展,嵌入式系统原有的3层结构逐步演化成为4层结构。这个新增加的中间层称为硬件抽象层(Hardware Abstraction Layer,HAL),有时也称为板级支持包(Board Support Package,BSP)。这个新增加的中间层次位于操作系统和硬件之间,包含了操作系统中与硬件相关的大部分功能。 它能够通过特定的上层接口与操作系统进行交互,向操作系统提供底层硬件信息,并根据操作系统的要求完成对硬件的直接操作。
28
1.3 嵌入式系统的硬件和软件特征 由于引入了一个中间层,屏蔽了底层硬件的多样性,操作系统不再面对具体的硬件环境,而是面对由这个中间层次所代表的、逻辑上的硬件环境,因此,把中间层次叫做硬件抽象层(Hardware Abstraction Layer, HAL)。 图1-2显示了引用HAL以后的嵌入式系统。HAL的引入大大推动了嵌入式实时系统的通用化,从而为嵌入式系统的广泛应用提供了可能。
29
1.3 嵌入式系统的硬件和软件特征 应用程序与操作系统的接口 嵌入式系统应用 嵌入式实时操作系统 操作系统与 HAL的接口 硬件抽象层
1.3 嵌入式系统的硬件和软件特征 嵌入式系统 硬件平台 硬件抽象层 嵌入式系统应用 嵌入式实时操作系统 应用程序与操作系统的接口 操作系统与 HAL的接口 HAL与硬件 的接口
30
嵌入式系统硬件平台 嵌入式系统硬件平台是以嵌入式处理器为核心,由存储器、I/O单元电路、通信模块、外部设备等必要的辅助接口组成的,如图1-3所示。 电源模块 时钟 复位 外围电路 微处理器 MPU Flash ROM RAM USB LCD触摸屏 键盘 其他 外 设
31
1.3.2 硬件抽象层 硬件抽象层通过硬件抽象层接口向操作系统以及应用程序提供对硬件进行抽象后的服务。
硬件抽象层 硬件抽象层通过硬件抽象层接口向操作系统以及应用程序提供对硬件进行抽象后的服务。 当操作系统或应用程序试用硬件抽象层API进行设计时,只要硬件抽象层API能够在下层硬件平台上实现,那么操作系统和应用程序的代码就可以移植。
32
硬件抽象层 板级支持包(Board Support Package,BSP)是现有的大多数商用嵌入式操作系统实现可移植性所采用的一种方案,是硬件抽象层的一种实现。 BSP隔离了所支持的嵌入式操作系统与底层硬件平台之间的相关性,是嵌入式操作系统能够通用与BPS所支持的硬件平台,从而实现嵌入式操作系统的可移植性和跨平台性,以及嵌入式操作系统的通用性、复用性。
33
1.3.2 硬件抽象层 BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形势的BSP。
硬件抽象层 BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形势的BSP。 例如,对应同一个CPU来说,要实现同样的功能,VxWorks的BSP和Linux的BSP的写法和接口定义却完全不同。 因此,BSP一定要按照具体操作系统BSP的定义形式来写(BSP的编程过程大多数是在某一个成型的BSP模板上进行修改),这样才能与上层操作系统保持正确的接口,良好地支持上层操作系统。
34
嵌入式操作系统 嵌入式操作系统的主要特点如下 : 体积小 实时性 特殊的开发调试环境
35
1.3.3 嵌入式操作系统 应用程序 驱动程序、HAL/BSP 驱动层 应用程序接口(API) 数据库 模块 网络模块 图形驱动 OS核
嵌入式操作系统 驱动程序、HAL/BSP 驱动层 应用程序接口(API) 数据库 模块 网络模块 图形驱动 OS核 内存管理 文件管理 OS层 应用层 基本模块 扩展模块 进程调度 应用程序 文件系统/图形用户接口 硬件层
36
1.4 嵌入式系统的分类 根据不同的标准,嵌入式系统有不同的分类方法。 1.按嵌入式微处理器的位数分类 4位 8位 16位 32位
1.4 嵌入式系统的分类 根据不同的标准,嵌入式系统有不同的分类方法。 1.按嵌入式微处理器的位数分类 4位 8位 16位 32位 64位……. 其中,4位、8位、16位嵌入式系统已经获得了大量应用,32位嵌入式系统正成为主流发展趋势。 而一些高度负责和要求高速处理的嵌入式系统已经开始使用64位嵌入式微处理器。
37
1.4 嵌入式系统的分类 2.按软件实时性需求分类 非实时系统(如PDA) 软实时系统(如消费类产品) 硬实时系统(如工业实时控制系统)
38
3.按嵌入式系统的复杂程度分类 小型嵌入式系统 中型嵌入式系统 复杂嵌入式系统
39
1.5 嵌入式系统的应用 工业过程控制 网络通信设备 消费电子产品 航空航天设备 军事电子设备和现代武器
40
习题1 1.嵌入式系统的概念是什么? 2.嵌入式系统的特点是什么? 3.请叙述嵌入式系统的发展过程。 4.嵌入式系统的功能是什么?
5.嵌入式系统的硬件平台由哪些部分组成? 6.硬件抽象层接口的定义和代码设计有哪些特点? 7.嵌入式操作系统的主要特点是什么? 8.请叙述嵌入式系统的分类。 9.举例说明嵌入式的应用领域。
Similar presentations