嵌入式系统设计 王行甫 wangxfu@ustc.edu.cn 0551_63607858 中国科学技术大学计算机学院.

Slides:



Advertisements
Similar presentations
数据结构的引入. 通讯录管理 社团机构管理 校园导航管理 通讯录管理 社团机构管理 校园导航管理.
Advertisements

高校教师、高级项目经理 任铄 QQ : 第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能 1.5 OS 结构设计.
嵌入式应用程序设计 第一章 嵌入式系统基础.
连接器技术发展趋势及因应策略 生产&营销副总经理 王跃轩 贵州航天电器股份有限公司.
计算机网络教程 任课教师:孙颖楷.
GOOWI 万物“无”连 --低功耗蓝牙在IoT中的应用    魏心伟 高为通信技术有限公司.
——Windows98与Office2000(第二版) 林卓然编著 中山大学出版社
计算机网络课程总结 一、计算机网络基础 计算机网络定义和功能、基本组成 OSI/RM参考模型(各层的功能,相关概念, 模型中数据传输 等)
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
若您对我的课程和服务满意,可以通过以下方式联系我获取其他课程。 QQ群号(总群): 个人QQ号:
初级会计电算化 (用友T3) 制作人:张爱红.
实用操作系统概念 张惠娟 副教授 1.
第10章 FPGA硬件设计 <EDA技术与应用> 课程讲义
基于解释性语言的手机跨平台架构 Sloan Yi. Qt MTK.
计算机基础知识 丁家营镇九年制学校 徐中先.
《数据库原理及应用》课程介绍 信息工程学院 孙俊国
                                                                                                                                                                
Windows CE.Net 移植与开发 Dhp
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
产品介绍 产品类型:数据终端 建议零售价2800元 上市时间:2017 年 2 月 目标人群:物流、快递及仓储等行业从业人员
嵌入式系统课程简介 宋健建 南京大学软件学院 2004/02/10.
嵌入式系统设计与开发 第1章 概述 第2章 ARM及其编程模型 第3章 ARM指令集 第4章 嵌入式程序设计
嵌入式处理器结构与应用 姓名:张晓晶 单位:软件学院
第1章 嵌入式系统概述 嵌入式系统的发展、定义、特点、组成、分类 嵌入式系统硬件核心、软件核心 嵌入式实时操作系统
存储系统.
大学计算机基础 典型案例之一 构建FPT服务器.
走进编程 程序的顺序结构(二).
深圳市计算机行业协会 单片机与嵌入技术专业委员会 宣洪
华为—E8372h- 155 外观设计 产品类型:数据卡 建议零售价格:299元 上市时间:2017年6月7日 目标人群:大众
第11章:一些著名开源软件介绍 第12章:服务安装和配置 本章教学目标: 了解当前一些应用最广泛的开源软件项目 搭建一个网站服务器
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
数 控 技 术 华中科技大学机械科学与工程学院.
逆向工程-汇编语言
《手把手教你学STM32》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司 淘宝店铺:
厂商—型号 海尔-PAD002 外观设计 建议零售价格:2999元 上市时间:2011年3月 目标人群:有移动互联需求的商务人士
中国科学技术大学计算机系 陈香兰(0551- ) Spring 2009
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
三:基于Eclipse的集成开发环境搭建与使用
Unit 11.Operating System 11.1 What’s OS 11.2 Related Courses
程序设计工具实习 Software Program Tool
华为—HUAWEI EC176 外观设计 建议零售价格:339元 上市时间:2012年 6月 10日 目标人群:大众消费群体
工业机器人技术基础及应用 主讲人:顾老师
新一代安全网上银行 小组成员:杨志明 王晶 任毅 刘建中 关昊 刘超.
内容摘要 ■ 课程概述 ■ 教学安排 ■ 什么是操作系统? ■ 为什么学习操作系统? ■ 如何学习操作系统? ■ 操作系统实例
C语言程序设计 主讲教师:陆幼利.
微机系统的组成.
嵌入式系统讲义 第1章 嵌入式系统概述 周国运
HUAWEI—S7-301c 外观设计 建议零售价格:2899元 上市时间:2012年5 月15日
K60入门课程 02 首都师范大学物理系 王甜.
产品介绍 日修改版本: 去除:C+W统一认证功能:(是否支持) 小米3 外观设计 上市时间: 2014 年 2 月
Platform Builder使用介绍 WINCE系统应用开发流程说明 ACTION RDC 杨 涛 2005.Dec.3th
EC5373u-819 产品介绍 外观设计 产品类型:MIFI 建议零售价格:499元 上市时间:14 年 12 月12日
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
核探测与核电子学国家重点实验室 中国科学技术大学近代物理系 王照琪
Thomson-252G 外观设计 上市时间:2011年1月 目标人群:普通消者,行业用户费 标准配置:一电一充\耳机\数据线\DC充电器
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
华为— S7-201c 外观设计 S7-201c 建议零售价格:2588元 上市时间:2011年 10月 20 日
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
LOGIX500软件入门 西安华光信息技术有限公司 2008年7月11日.
魏新宇 MATLAB/Simulink 与控制系统仿真 魏新宇
华为—HUAWEI EC19 9 建议零售价格:299元 上市时间:2012年4月18日 目标人群:移动办公用户;其它有移动上网需求的用户
现代电子技术综合实验 陈学英.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
本节内容 C语言的汇编表示 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
华为-HUAWEI—EC156 建议零售价格:329元 上市时间:2012年 1 月 1 日 目标人群:大众消费群体 标准配置:无配件
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
入侵检测技术 大连理工大学软件学院 毕玲.
一个实时嵌入式操作系统移植问题研究 报告人:荣峰华.
Presentation transcript:

嵌入式系统设计 王行甫 wangxfu@ustc.edu.cn 0551_63607858 中国科学技术大学计算机学院

课程目的 理论与实践相结合。 以嵌入式系统基础及嵌入式处理器及其体系结构为重点,以应用为目的,全面介绍嵌入式系统的设计。 使大家既能对嵌入式系统及开发有一个全景的把握,又能深入理解嵌入式实时操作系统。

课程特点 利用PC机就可以自己动手搭建嵌入式系统的开发平台,熟悉应用开发,更方便地学习和理解嵌入式系统的基础知识: 从纯软件到硬/软件结合 从“纸”上谈兵(编程序)到“板”上谈兵 从“懂”怎么做到“会”做 从讲/听到讲/听/做

实验系统的内容 PC虚拟机 ARM9开发板 目标平台 开发工具 ADS集成开发环境 嵌入式操作系统 Linux 实验项目

课程成绩评定 课程成绩=平时成绩+实验成绩+期末考试成绩 平时成绩 20分,其中作业10分,出勤10分 实验成绩 20分,平时10分,实验报告10分 期末考试:闭卷考试60分,第十四周左右

目录 第1章 嵌入式系统概述 第2章 ARM微处理器概述与编程模型 第3章 ARM9指令系统 第4章 嵌入式程序设计基础 第1章 嵌入式系统概述 第2章 ARM微处理器概述与编程模型 第3章 ARM9指令系统 第4章 嵌入式程序设计基础 第5章 嵌入式内部可编程模块 第6章 嵌入式接口技术应用 第7章 软件开发环境

第1章 嵌入式系统概述 嵌入式系统定义 嵌入式系统的发展概述 嵌入式系统的硬件和软件特征   嵌入式系统的分类 嵌入式系统的应用

1.1 嵌入式系统定义 计算机发展的三大阶段 第一阶段:始于五十年代的由IBM, Burroughs, Honeywell等公司率先研制的大型机。 第二阶段:始于七十年代的个人计算机。 第三阶段:计算机正迈入下一个充满机遇的阶段—“后PC时代”或“无处不在的计算机”阶段。

1.1 嵌入式系统定义 无处不在的计算机 施乐公司Palo Alto研究中心主任Mark Weiser认为: 1.1 嵌入式系统定义 无处不在的计算机 施乐公司Palo Alto研究中心主任Mark Weiser认为: “从长远来看,PC机和计算机工作站将衰落,因为计算机变得无处不在:例如在墙里、在手腕上、在手写电脑中(象手写纸一样)等等,随用随取、伸手可及”。 全世界的计算机科学家正在形成一种共识: 计算机不会成为科幻电影中的那种贪婪的怪物, 而是将变得小巧玲珑, 无处不在. 他们藏身在任何地方, 又消失在所有地方, 功能强大, 确有无影无踪. 人们将这种思想命名为: “无所不在的计算机”。

嵌入式系统无处不在 彼此互连

1.1 嵌入式系统定义 什么是嵌入式系统 嵌入式系统(Embedded Systems)是指:“嵌入到对象体系中的、用于执行独立功能的专用计算机系统”。定义为以应用为中心,以微电子技术、控制技术、计算机技术和通讯技术为基础,强调硬件软件的协同性与整合性,软件硬件可剪裁的,适应应用系统对功能、可靠性、成本、体积、功耗和应用环境有等严格要求的专用计算机系统。

1.1 嵌入式系统定义 嵌入式系统的嵌入式本质就是将一个计算机嵌入到一个对象体系中去。

1.1 嵌入式系统定义 最简单的嵌入式系统仅有执行单一功能的控制能力,在唯一的 ROM中仅有实现单一功能的控制程序,无微型操作系统。复杂的嵌入式系统,例如个人数字助理(PDA)、手持电脑(HPC)等,具有与 PC几乎一样的功能。 实质上与PC的区别仅仅是将微型操作系统与应用软件嵌入在 ROM、RAM或FLASH存储器中,而不是存贮于磁盘等载体中。 很多复杂的嵌入式系统又是由若干个小型嵌入式系统组成的。

嵌入式系统示例 ——汽车控制系统 后车门控制系统 前车门控制系统 尾灯控制系统 发动器控制系统 所有的控制系统都是一个完整的嵌入式系统 马达 控制器 车灯 前车门控制系统 尾灯控制系统 发动器控制系统 所有的控制系统都是一个完整的嵌入式系统 座椅控制系统

1.1 嵌入式系统定义 从广义上讲,凡是带有微处理器的专用硬件系统都可以称为嵌入式系统,如各类单片机和DSP系统。这些系统在完成较为单一的专业功能时具有简洁高效的特点。但他们的软件的能力有限。 因此,推荐使用嵌入式微处理器构成独立系统,具有自己的操作系统,具有特定功能,用于特定场合的嵌入式系统。所以,一个嵌入式系统就是一个硬件和软件的集合体,它包括硬件和软件两部分。其中硬件包括嵌入式处理器、控制器、数字信号处理器(DSP)、存储及外设器件、输入输出(I/O)由于应用领域不同,应用程序千差万别。

1.1 嵌入式系统定义 按照上述嵌入式系统的定义,只要满足定义中三要素的计算机系统,都可称为嵌入式系统。 嵌入式系统按形态可分为 1.1 嵌入式系统定义 按照上述嵌入式系统的定义,只要满足定义中三要素的计算机系统,都可称为嵌入式系统。 嵌入式系统按形态可分为 设备级(工控机) 板级(单板、模块) 芯片级(MCU、SoC) 因此,有些人把嵌入式处理器当作嵌入式系统,但由于嵌入式系统是一个嵌入式计算机系统,因此,只有将嵌入式处理器构成一个计算机系统,并作为嵌入式应用时,这样的计算机系统才可称作嵌入式系统。

1.1.2 嵌入式系统的特点 嵌入式系统特别强调“量身定做”的原则,开发人员往往需要针对某一种特殊用途开发出一个截然不同的嵌入式系统来,所以我们很难不经过“大量”修改而直接将一个嵌入式系统全套用到其他的嵌入式产品上去。 “嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。对象系统则是指嵌入式系统所嵌入的宿主系统。嵌入式系统的特点是由三个基本要素衍生出来的。不同的嵌入式系统其特点会有所差异。

1.1.2 嵌入式系统的特点 与“嵌入性”的相关特点:由于是嵌入到对象系统中,必须满足对象系统的环境要求,如物理环境(小型)、电气/环境(可靠)、成本(价廉)等要求。 与“专用性”的相关特点:软、硬件的裁剪性;满足对象要求的最小软、硬件配置等。 与“计算机系统”的相关特点:嵌入式系统必须是能满足对象系统控制要求的计算机系统。与上两个特点相呼应,这样的计算机必须配置有与对象系统相适应的接口电路。

1.1.2 嵌入式系统的特点 与通用的计算机系统化相比,嵌入式系统具有以下显著特点。 系统内核小 专用性强 运行环境差异大 可靠性要求高 1.1.2 嵌入式系统的特点 与通用的计算机系统化相比,嵌入式系统具有以下显著特点。 系统内核小 专用性强 运行环境差异大 可靠性要求高 系统精简和高实时性操作系统 具有固化在非易失性存储器中的代码 嵌入式系统开发工作和环境

1.2 嵌入式系统的发展概述 1.2.1 嵌入式系统的历史与发展 1.始于微型机时代的嵌入式系统 (1)单片机开创了嵌入式系统独立发展之路 1.2 嵌入式系统的发展概述 1.2.1 嵌入式系统的历史与发展 1.始于微型机时代的嵌入式系统 (1)单片机开创了嵌入式系统独立发展之路 (2)单片机的技术发展史 单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。 2. 现代计算机技术的两大分支 通用计算机系统 嵌入式计算机系统

1.2.2 嵌入式系统的功能 1.提供强大的网络服务 针对外部联网要求,嵌入设备必须配有通信接口,相应需要TCP/IP协议簇软件支持; 1.2.2 嵌入式系统的功能 1.提供强大的网络服务 针对外部联网要求,嵌入设备必须配有通信接口,相应需要TCP/IP协议簇软件支持; 由于家用电器相互关联(如防盗报警、灯光能源控制、影视设备和信息终端交换信息等)及实验现场仪器的协调工作等要求,新一代嵌入式设备还需具备IEEE1394、USB、CAN、Bluetooth或IrDA通信接口。 同时也需要提供相应的通信组网协议软件和物理层驱动软件。

1.2.2 嵌入式系统的功能 2.小型化、低成本、低功耗 为满足这种特性,要求嵌入式产品设计者相应降低处理器的性能,限制内存容量和复用接口芯片。这就相应提高了对嵌入式软件设计技术要求,如选用最佳的编程模型和不断改进算法,采用Java编程模式,优化编译器性能等。 因此,既需要软件人员具有丰富的开发经验,更需要发展先进的嵌入式软件技术,如Java、Web和WAP等。

1.2.2 嵌入式系统的功能 3.人性化的人机界面 亿万用户之所以乐于接受嵌入式设备,其重要因素之一是它们与使用者之间的亲和力。它具有自然的人机交互界面,如司机操纵高度自动化的汽车主要还是通过习惯的方向盘、脚踏板和操纵杆。人们与信息终端交互要求以GUI屏幕为中心的多媒体界面。手写文字输入、语音拨号上网、收发电子邮件及彩色图形、图像已取得初步成效。 目前一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,但离掌式语言同声翻译还有很大距离。

1.2.2 嵌入式系统的功能 4.完善的开发平台 随着Internet技术的成熟、带宽的提高,ICP和ASP在网上提供的信息内容日趋丰富、应用项目多种多样,像移动电话、固定电话及电冰箱、微波炉等嵌入式电子设备的功能不再单一,电气结构也更为复杂。 为了满足应用功能的升级,设计者一方面采用更强大的嵌入式处理器,如32位、64位RISC芯片或数字信号处理器(DSP)增强处理能力;同时还采用实时多任务编程技术和交叉开发工具技术来控制功能复杂性,简化应用程序设计、保障软件质量和缩短开发周期。

1.3 嵌入式系统的硬件和软件特征 嵌入式系统是将嵌入了软件的计算机硬件作为其最重要部分的系统,它是一种专门用于某个应用或生产的特殊产品的计算机系统。由于其软件通常嵌入在ROM(只读存储器)中,因此,不像计算机那样需要辅助存储器,早期嵌入式系统自低向上包含3个部分。如图1-1所示。 嵌入式系统的组成部分是嵌入式系统硬件平台、嵌入式操作系统(RTOS)和嵌入式系统应用。

1.3 嵌入式系统的硬件和软件特征 嵌入式系统应用 应用程序与 操作系统的接口 嵌入式 实时操作系统 操作系统与 硬件的接口 嵌入式系统 1.3 嵌入式系统的硬件和软件特征 嵌入式系统应用 嵌入式 实时操作系统 嵌入式系统 硬件平台 应用程序与 操作系统的接口 操作系统与 硬件的接口

1.3 嵌入式系统的硬件和软件特征 经过不断地发展,嵌入式系统原有的3层结构逐步演化成为4层结构。这个新增加的中间层称为硬件抽象层(Hardware Abstraction Layer,HAL),有时也称为板级支持包(Board Support Package,BSP)。这个新增加的中间层次位于操作系统和硬件之间,包含了操作系统中与硬件相关的大部分功能。 它能够通过特定的上层接口与操作系统进行交互,向操作系统提供底层硬件信息,并根据操作系统的要求完成对硬件的直接操作。

1.3 嵌入式系统的硬件和软件特征 由于引入了一个中间层,屏蔽了底层硬件的多样性,操作系统不再面对具体的硬件环境,而是面对由这个中间层次所代表的、逻辑上的硬件环境,因此,把中间层次叫做硬件抽象层(Hardware Abstraction Layer, HAL)。 图1-2显示了引用HAL以后的嵌入式系统。HAL的引入大大推动了嵌入式实时系统的通用化,从而为嵌入式系统的广泛应用提供了可能。

1.3 嵌入式系统的硬件和软件特征 应用程序与操作系统的接口 嵌入式系统应用 嵌入式实时操作系统 操作系统与 HAL的接口 硬件抽象层 1.3 嵌入式系统的硬件和软件特征 嵌入式系统 硬件平台 硬件抽象层 嵌入式系统应用 嵌入式实时操作系统 应用程序与操作系统的接口 操作系统与 HAL的接口 HAL与硬件 的接口

1.3.1 嵌入式系统硬件平台 嵌入式系统硬件平台是以嵌入式处理器为核心,由存储器、I/O单元电路、通信模块、外部设备等必要的辅助接口组成的,如图1-3所示。 电源模块 时钟 复位 外围电路 微处理器 MPU Flash ROM RAM USB LCD触摸屏 键盘 其他 外 设

1.3.2 硬件抽象层 硬件抽象层通过硬件抽象层接口向操作系统以及应用程序提供对硬件进行抽象后的服务。 1.3.2 硬件抽象层 硬件抽象层通过硬件抽象层接口向操作系统以及应用程序提供对硬件进行抽象后的服务。 当操作系统或应用程序试用硬件抽象层API进行设计时,只要硬件抽象层API能够在下层硬件平台上实现,那么操作系统和应用程序的代码就可以移植。

1.3.2 硬件抽象层 板级支持包(Board Support Package,BSP)是现有的大多数商用嵌入式操作系统实现可移植性所采用的一种方案,是硬件抽象层的一种实现。 BSP隔离了所支持的嵌入式操作系统与底层硬件平台之间的相关性,是嵌入式操作系统能够通用与BPS所支持的硬件平台,从而实现嵌入式操作系统的可移植性和跨平台性,以及嵌入式操作系统的通用性、复用性。

1.3.2 硬件抽象层 BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形势的BSP。 1.3.2 硬件抽象层 BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形势的BSP。 例如,对应同一个CPU来说,要实现同样的功能,VxWorks的BSP和Linux的BSP的写法和接口定义却完全不同。 因此,BSP一定要按照具体操作系统BSP的定义形式来写(BSP的编程过程大多数是在某一个成型的BSP模板上进行修改),这样才能与上层操作系统保持正确的接口,良好地支持上层操作系统。

1.3.3 嵌入式操作系统 嵌入式操作系统的主要特点如下 : 体积小 实时性 特殊的开发调试环境

1.3.3 嵌入式操作系统 应用程序 驱动程序、HAL/BSP 驱动层 应用程序接口(API) 数据库 模块 网络模块 图形驱动 OS核 1.3.3 嵌入式操作系统 驱动程序、HAL/BSP 驱动层 应用程序接口(API) 数据库 模块 网络模块 图形驱动 OS核 内存管理 文件管理 OS层 应用层 基本模块 扩展模块 进程调度 应用程序 文件系统/图形用户接口 硬件层

1.4 嵌入式系统的分类 根据不同的标准,嵌入式系统有不同的分类方法。 1.按嵌入式微处理器的位数分类 4位 8位 16位 32位 1.4 嵌入式系统的分类 根据不同的标准,嵌入式系统有不同的分类方法。 1.按嵌入式微处理器的位数分类 4位 8位 16位 32位 64位……. 其中,4位、8位、16位嵌入式系统已经获得了大量应用,32位嵌入式系统正成为主流发展趋势。 而一些高度负责和要求高速处理的嵌入式系统已经开始使用64位嵌入式微处理器。

1.4 嵌入式系统的分类 2.按软件实时性需求分类 非实时系统(如PDA) 软实时系统(如消费类产品) 硬实时系统(如工业实时控制系统)

3.按嵌入式系统的复杂程度分类 小型嵌入式系统 中型嵌入式系统 复杂嵌入式系统

1.5 嵌入式系统的应用 工业过程控制 网络通信设备 消费电子产品 航空航天设备 军事电子设备和现代武器

习题1 1.嵌入式系统的概念是什么? 2.嵌入式系统的特点是什么? 3.请叙述嵌入式系统的发展过程。 4.嵌入式系统的功能是什么? 5.嵌入式系统的硬件平台由哪些部分组成? 6.硬件抽象层接口的定义和代码设计有哪些特点? 7.嵌入式操作系统的主要特点是什么? 8.请叙述嵌入式系统的分类。 9.举例说明嵌入式的应用领域。