欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

嵌入式系统简介

程序员文章站 2022-07-12 10:11:32
...

第1章 嵌入式技术导论

1.1 嵌入式系统的基本概念

• 嵌入式系统 是以现代计算机技术为基础,以应用为中心, 可以根据系统或用户需求(功能、可靠性、成本、 体积、功耗、环境等),灵活裁剪软硬件模块的专 用计算机系统;
IEEE(国际电气和电子工程师协会)对嵌入式系统 的定义:“用于控制、监视或者辅助操作机器和设 备的装置”。

1.2 嵌入式系统应用领域

1.3 嵌入式系统的主要特点

– 面向应用。系统设计必须综合考虑功能、可靠性、成本、体积、功 耗、环境等具体的应用需求。

  • 软硬件可剪裁。嵌入式系统的硬件和软件都必须高效 率地设计,量体裁衣、去除冗余,力争在同样的硅片面积 上实现更多的功能和更高的性能。
  • 专用计算机控制系统。 不同的嵌入式系统,有不同的应用环境、控制对象, 用户需求一般也不相同,软硬件剪裁的内容不可能一 样,Bootloader 等程序一般也不一样;

1.4 嵌入式系统与单片机

嵌入式系统由硬件和软件两大部分组成,用于实现对其他设备的控制、监视或管理等功能。前者是整个系统的物理基础,它提供软件运行平台和通信接口;后者实际控制系统的运行。

2 嵌入式系统的组成

2.1 组成

嵌入式系统由硬件和软件两大部分组成,用于实现对其他设备的控制、监视或管理等功能。前者是整个系统的物理基础,它提供软件运行平台和通信接口;后者实际控制系统的运行。
硬件:嵌入式微处理器、外围电路、外围硬件设备。
软件:BootLoader、嵌入式操作系统、用户的应用 程序等。

2.1 硬件组成

嵌入式系统简介

• 微处理器是嵌入式系统硬件的核心,具备以下4个微处理器特点:
① 对实时多任务有很强的支持能力,能完成多任务并且有较 短的中断响应时间,从而使内部的代码和实时内核的执行时 间减少到最低限度。
② 具有很强的存储区保护功能。这是由于嵌入式系统的软件 结构已模块化,为了避免在软件模块之间出现错误的交叉作 用,需要设计强大的存储区保护功能,同时也有利于软件诊 断。
③ 可扩展的结构。
④ 功耗很低。便携式无线及移动设备中靠电池供电的嵌入式 系统更是如此,很多只允许mW量级甚至W量级。

2.3 嵌入式系统软件层次分为四个:

① 设备驱动接口(DDI)负责嵌入式系统与外部设备的信 息交互;
② 实时操作系统(RTOS)分成基本和扩展两部分,  前者是操作系统的核心,负责整个系统的任务调度,存储分配、时钟管理和 中断管理,提供文件、图形用户界面(GUI)等基本服务;  后者是为用户提供操作系统的扩展功能,包括网络、数据库等;
③ 可编程应用接口(API)也称为编程中间件、应用中间 软件,是为编制应用程序提供的各种编程接口库,它针 对不同应用领域、不同的安全要求分别构建,从而减轻 应用开发者的负担;
④ 应用软件是针对不同应用而由开发者自己编写的软件。
嵌入式系统初始化
• 分为3个主要环节,按照自底向上、从硬件 到软件的次序依次为:
①片级初始化
②板级初始化
③系统级初始化

2.4 嵌入式操作系统

任务调度:多任务运行实际是靠CPU在多个任务之间切换、调 度实现的。任务的调度有三种方式:可抢占式、不可抢占式和时间片轮转。目前,大多数嵌入式操作系统 – 对不同优先级的任务采用基于优先级的可抢占式调度法 – 对相同优先级的任务则采用时间片轮转调度法。
实存储器:大多数嵌入式系统针对没有MMU的处理器设计,不 能使用处理器的虚拟内存管理技术,而是采用实存 储器管理策略, • 因此对于内存的访问是直接的,它对地址的访问不 需要经过MMU,而是直接送到地址线上输出,所有 程序中访问的地址都是实际的物理地址。

2.5 硬实时和软实时

依据操作系统的类型,嵌入式系统划分为两种类型: 实时系统和分时系统。 • 实时系统又分为两类:硬实时系统和软实时系统。

2.6 内核加载方式

嵌入式操作系统内核可以在Flash上直接运行,也可以加载 到内存中运行。
静态链接:根据嵌入式系统的内存管理机制,嵌入式操作系统对用户 程序一般采用静态链接的形 式。在嵌入式系统中,应用程 序和操作系统的内核代码经过编译、链接生成一个二进制 文件来运行。

3. 计算机结构与工作原理

3.1 冯诺依曼架构

嵌入式系统简介

3.2 哈佛结构------冯诺依曼架构的扩展(2)

嵌入式系统简介

两种计算机体系结构的比较:
 传统的微处理器采用的冯·诺依曼结构将指令和数 据存放在同一存储空间中,统一编址,指令和数据 通过同一总线访问。
 哈佛结构则是不同于冯·诺依曼结构的一种并行体 系结构,其主要特点是程序和数据存储在不同的存 储空间中,即程序存储器和数据存储器是两个相互 独立的存储器,每个存储器独立编制、独立访问。 与之相对应的是系统中设置的两条总线(程序总线 和数据总线),从而使数据的吞吐率提高了一倍。
嵌入式系统简介

3.3微型计算机三总线结构

嵌入式系统简介

3.4计算机各大组成部分概述

微机系统的硬件主要由以下几部分组成:
嵌入式系统简介
嵌入式系统简介

注:微机通过I/O设备与外部交换信息,但两者处 理的信息从数据格式到逻辑时序一般不能直接兼 容,必须在两者之间引入连接电路,即I/O接口电路。

3.5 微型计算机基本工作原理

–任何一条指令均由两部分组成:
操作码 地址码(操作数)
目前微机系统中使用着三个层次、三种形式的程序:
 机器语言程序 (二进制)
 汇编语言程序
 高级语言程序
微型计算机执行指令都分成三个阶段进行
 取指令  分析指令  执行指令
缓冲与缓存的比较
• 缓冲Buffer  一般用于数据的I/O;  消除干扰;  速度匹配(同步);  接口电路的设计,往往需要考虑数据的缓冲,如硬盘与内存之间、ADC/DAC 等;  其他:媒体播放器,网络浏览器等,为了“流畅”播放和浏览网页,也需开 辟缓冲区。
• 缓存Cache  先于内存与CPU交换数据,比主存储器体积小但速度快;  频繁访问的程序代码和数据可以驻留Cache,目的在于提高了CPU访问主存的 速度;  MMU需要考虑Cache的控制与管理问题。– CPU命中Cache的概率,是Cache的一个重要指标;它与 Cache的大小、替换算法、程序特性等因素有关。

3.6 精简指令集

RISC体系结构应具有如下特点:  采用固定长度的指令格式,指令归整、简单、基本寻址方式有2~3 种。  使用单周期指令,便于流水线操作执行。  大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/ 存储指令可以访问存储器,以提高指令的执行效率。  所有的指令都可根据前面的执行结果决定是否被执行,从而提高指 令的执行效率  可用加载/存储指令批量传输数据,以提高数据的传输效率。  可在一条数据处理指令中同时完成逻辑处理和移位处理。  在循环处理中使用地址的自动增减来提高运行效率。
现代的CPU往往采用复杂指令集CISC的外围,内部加入了 精简指令集RISC的特性,如超长指令集CPU就是融合了RISC 和CISC的优势,成为未来的CPU发展方向之一。

3.7 流水线技术

以ARM7处理器使用3级流水线为例,分别为:
 取指级

 译码级
 执行级

3.8 嵌入式处理器的发展阶段

1.嵌入式微处理器(Micro Processing Unit,MPU)
2.嵌入式微控制器 (Microcontroller Unit, MCU)
3.嵌入式DSP处理器(Embedded Digital Signal Processor, EDSP)
4.SoC(System on chip)片上系统

3.9 计算机发展历史中的若干重要人物

巴贝奇:英国数学家,机械式通用计算机 。

图灵:存储器(纸带)、运算器和控制器,形成具备计算和信息处 理功能“通用计算机”模型。
冯.诺依曼:存储器、运算器和控制器+ 输入、输出装置,共五 大部件。
姚期智

3.10 嵌入式系统发展趋势

① 嵌入式应用软件的开发需要强大的开发工具和操作系统 的支持

② 联网成为必然趋势
③ 支持小型电子设备实现小尺寸、微功耗和低成本
④ 提供精巧的多媒体人机界面

4. Cortex-M3 体系简介

嵌入式系统简介
按嵌入式系统的典型应用分类:
① Cortex-A:高性能(High Performance)
② Cortex-M:微控制器类(Microcontroller)
③ Cortex-R:实时类(Real Time)
• 各ARM体系结构版本
V1 该版本的ARM体系结构,只有26位的寻址空间, 没有商业化
V2 同样为26位寻址空间,它相对V1版本有改进
V3 寻址范围扩展到32位(目前已废弃),具有独立 的程序
V4 不在为了与以前的版本兼容而支持26位体系结构, 并明确了哪些指令会引起未定义指令异常发生,它相 对V3版本作了以下的改进
V5 在V4版本的基础上,对现在指令的定义进行了 必要的修正,对V4版本的体系结构进行了扩展并并 增加了指令
嵌入式系统简介
• Cortex是ARM的新一代处理器内核,它在本质 上也是ARM v7架构的实现。
• 按嵌入式系统的典型应用分类:
① Cortex-A:高性能(High Performance),针对日益增长的运行Linux、 WinCE、Symbian等操作系统在内的消费者娱乐和无线产品设计与实现。
② Cortex-M:微控制器类(Microcontroller),针对应用系统对功耗、 成本敏感,同时对微处理器性能要求较高的工业领域(汽车、家电、 医疗器械等)。
③ Cortex-R:实时类(Real Time),针对实时性要求较高的领域,可 以运行RTOS
• 任何微处理器都是由至少内核、存储器、总线、IO 构成。
嵌入式系统简介

5 STM32 系列微控制器

6. 嵌入式系统工程设计与开发分为四个阶段:

  1. 需求分析: 功能需求分析;性能需求分析;安全性分析; 可靠性分析;成本分析;市场需求分析等
  2. 架构及概要设计
  3. 详细设计开发
  4. 测试、提高、完善

侵删