嵌入式系统设计与实例开发ppt课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
嵌入式系统设计与实例开发
——ARM与C/OS-Ⅱ
基本概念及设计方法
1
一、嵌入式系统硬件基础
冯·诺依曼体系结构和哈佛体系结构 CISC与RISC 影响CPU性能的因素 存储器系统 I/O接口
2
典型嵌入式系统基本组成-硬件
电源 模块
外围电路
Flash
微处理器
时钟
RAM
MPU
复位
ROM
USB
外设
LCD Keyboard
Other
3
1.1 冯·诺依曼体系结构模型
指令寄存器 控制器
数据通道
输入
输出
中央处理器
存储器
程序
指令0 指令1 指令2 指令3 指令4
数据
数据0 数据1 数据2
4
1.2 哈佛体系结构
地址
指令寄存器
控制器
指令
数据通道
输入
输出
中央处理器
地址 数据
程序存储器
指令0 指令1 指令2
19
2)事件驱动系统:(Event-Driven system)
事件驱动系统是能对外部事件直接响应的系统。它包括前后台、 实时多任务、多处理器等,是嵌入式实时系统的主要形式。
应用程序是一个无限的循环,循环中调用相应的函数完成相应的 操作,这部分可以看成后台行为(background)。中断服务程序处 理异步事件,这部分可以看成前台行为(foreground)。
17
按实时性分类
强实时系统,其系统响应时间在毫秒或微秒级(数控 机床);
一般实时系统,其系统响应时间在毫秒-几秒的数量 级上,其实时性的要求比强实时系统要差一些(电子菜谱 的查询)。
弱实时系统,其系统响应时间约为数十秒或更长(工 程机械)。
18
按软件结构分类
1)循环轮询系统:(Polling Loop)
制
地址
器
数据
9
总线和总线桥
CPU
高速总线
低速设备
低速总线
桥
存储器
高速设备
数据
高速设备
10
1.5 存储器系统
RAM:随机存取存储器, SRAM:静态随机存储器, DRAM:动态随机存储器
1)SRAM比DRAM快 2)SRAM比DRAM耗电多 3)DRAM存储密度比SRAM高得多 4)DRM需要周期性刷新 ROM:只读存储器 FLASH:闪存
6
1.4 影响CPU性能的因素:流水线、超标量和缓存
流水线技术:几个指令可以并行执行 提高了CPU的运行效率 内部信息流要求通畅流动
Add
取指
Sub Cmp
时间
译码 取指
执行add
译码 执行sub
百度文库
取指
译码 执行cmp
7
超标量执行
超标量执行:超标量CPU采用多条流水线结构
指令CACHE
预取
流 译码1 水 译码2 线 执行1 1
16
3.1 操作系统的分类
(1)顺序执行系统:系统内只含有一个程序,独占CPU的 运行时间,按语句顺序执行该程序,直至执行完毕,另一 程序才能启动运行。如DOS操作系统。
(2)分时操作系统:系统内同时可以有多个程序运行,把 CPU的时间分按顺序分成若干片,每个时间片内执行不同 的程序。如UNIX
(3)实时操作系统:系统内有多个程序运行,每个程序有 不同的优先级,只有最高优先级的任务才能占有CPU的控 制权。
通用系统模型 PC机中的情况 嵌入式系统应用
HOST系统
应用软件+驱动程序 Ms.Win+接口芯片
驱动代码+嵌入式处理 器+HOST芯片
HUB
HUB
HUB
DEVICE D DEVICE
U盘 其他
数据采集器
U盘
其他
数据采集器
15
二、嵌入式系统软件基础
操作系统的分类 嵌入式实时操作系统 前台与后台 多任务,任务优先级,调度 非占先式与占先式、可重入型函数
后台也可以叫做任务级,前台也叫中断级。
例如,很多基于微处理器的产品采用前后台系统设计,如微波炉 、电话机、玩具等。从省电的角度出发,平时微处理器处在停机状态 ,所有的事都靠中断服务来完成。
20
前后台系统(后台循环、前台中断)
后台
前台 ISR
时间
ISR
ISR
21
代码的临界区
代码的临界区也称为临界区,指处理时不可分割的代码。 一旦这部分代码开始执行,则不允许任何中断打入。
U盘、移动硬盘、无驱型的MP3(U盘) USB接口的键盘、Mouse、打印机、数码相机…… 即插即用,热插拨,系统不需重启便可工作,且易于扩展 (127个) USB2.0以低成本实现高达480Mb/s的传输率(USB1.1的 全速设备可达12Mb/s) 接口标准统一、端口供电
14
一个典型的USB通讯系统
执行2
预取
流 译码1 水 译码2 线 执行1 2
执行2
数据
8
高速缓存(CACHE)
1、为什么采用高速缓存
微处理器的时钟频率比内存速度提高快得多,高速缓存可以提 高内存的平均性能。
2、高速缓存的工作原理
高速缓存是一种小型、快速的存储器,它保存部分主存内容的 拷贝。
高 数据
速
缓
CACHE
CPU
存
主存
控
11
SRAM和DRAM
1)SRAM
CS R/W Addr Data
2)DRAM
CS R/W RAS CAS Addr Data
12
输入输出接口
I/O A/D、D/A 键盘 LCD 存储器接口 设备接口
13
例如USB
USB:Universal Serial Bus,通用串行总线 大家生活中常见的与USB有关的东西有:
最简单的软件结构是循环轮询,程序依次检查系统的每一个输入条 件,一旦条件成立就进行相应的处理。
Initialize() While(true){
if(condition_1) action_1(); if(condition_2) action_2();
…… if(condition_n) acition_n(); }
在进入临界区之前要关中断,而临界区代码执行完以后要 立即开中断(在任务切换时,地址、指令、数据等寄存器 堆栈保护)。
22
多任务(任务、进程和线程)
休眠、就绪、运行、挂起、被中断
任务 1
任务 2
数据存储器
数据0 数据1 数据2
5
1.3 CISC和RISC
CISC:复杂指令集(Complex Instruction Set Computer)
具有大量的指令和寻址方式 8/2原则:80%的程序只使用20%的指令 大多数程序只使用少量的指令就能够运行。 RISC:精简指令集(Reduced Instruction Set Computer) 在通道中只包含最有用的指令 确保数据通道快速执行每一条指令 使CPU硬件结构设计变得更为简单
——ARM与C/OS-Ⅱ
基本概念及设计方法
1
一、嵌入式系统硬件基础
冯·诺依曼体系结构和哈佛体系结构 CISC与RISC 影响CPU性能的因素 存储器系统 I/O接口
2
典型嵌入式系统基本组成-硬件
电源 模块
外围电路
Flash
微处理器
时钟
RAM
MPU
复位
ROM
USB
外设
LCD Keyboard
Other
3
1.1 冯·诺依曼体系结构模型
指令寄存器 控制器
数据通道
输入
输出
中央处理器
存储器
程序
指令0 指令1 指令2 指令3 指令4
数据
数据0 数据1 数据2
4
1.2 哈佛体系结构
地址
指令寄存器
控制器
指令
数据通道
输入
输出
中央处理器
地址 数据
程序存储器
指令0 指令1 指令2
19
2)事件驱动系统:(Event-Driven system)
事件驱动系统是能对外部事件直接响应的系统。它包括前后台、 实时多任务、多处理器等,是嵌入式实时系统的主要形式。
应用程序是一个无限的循环,循环中调用相应的函数完成相应的 操作,这部分可以看成后台行为(background)。中断服务程序处 理异步事件,这部分可以看成前台行为(foreground)。
17
按实时性分类
强实时系统,其系统响应时间在毫秒或微秒级(数控 机床);
一般实时系统,其系统响应时间在毫秒-几秒的数量 级上,其实时性的要求比强实时系统要差一些(电子菜谱 的查询)。
弱实时系统,其系统响应时间约为数十秒或更长(工 程机械)。
18
按软件结构分类
1)循环轮询系统:(Polling Loop)
制
地址
器
数据
9
总线和总线桥
CPU
高速总线
低速设备
低速总线
桥
存储器
高速设备
数据
高速设备
10
1.5 存储器系统
RAM:随机存取存储器, SRAM:静态随机存储器, DRAM:动态随机存储器
1)SRAM比DRAM快 2)SRAM比DRAM耗电多 3)DRAM存储密度比SRAM高得多 4)DRM需要周期性刷新 ROM:只读存储器 FLASH:闪存
6
1.4 影响CPU性能的因素:流水线、超标量和缓存
流水线技术:几个指令可以并行执行 提高了CPU的运行效率 内部信息流要求通畅流动
Add
取指
Sub Cmp
时间
译码 取指
执行add
译码 执行sub
百度文库
取指
译码 执行cmp
7
超标量执行
超标量执行:超标量CPU采用多条流水线结构
指令CACHE
预取
流 译码1 水 译码2 线 执行1 1
16
3.1 操作系统的分类
(1)顺序执行系统:系统内只含有一个程序,独占CPU的 运行时间,按语句顺序执行该程序,直至执行完毕,另一 程序才能启动运行。如DOS操作系统。
(2)分时操作系统:系统内同时可以有多个程序运行,把 CPU的时间分按顺序分成若干片,每个时间片内执行不同 的程序。如UNIX
(3)实时操作系统:系统内有多个程序运行,每个程序有 不同的优先级,只有最高优先级的任务才能占有CPU的控 制权。
通用系统模型 PC机中的情况 嵌入式系统应用
HOST系统
应用软件+驱动程序 Ms.Win+接口芯片
驱动代码+嵌入式处理 器+HOST芯片
HUB
HUB
HUB
DEVICE D DEVICE
U盘 其他
数据采集器
U盘
其他
数据采集器
15
二、嵌入式系统软件基础
操作系统的分类 嵌入式实时操作系统 前台与后台 多任务,任务优先级,调度 非占先式与占先式、可重入型函数
后台也可以叫做任务级,前台也叫中断级。
例如,很多基于微处理器的产品采用前后台系统设计,如微波炉 、电话机、玩具等。从省电的角度出发,平时微处理器处在停机状态 ,所有的事都靠中断服务来完成。
20
前后台系统(后台循环、前台中断)
后台
前台 ISR
时间
ISR
ISR
21
代码的临界区
代码的临界区也称为临界区,指处理时不可分割的代码。 一旦这部分代码开始执行,则不允许任何中断打入。
U盘、移动硬盘、无驱型的MP3(U盘) USB接口的键盘、Mouse、打印机、数码相机…… 即插即用,热插拨,系统不需重启便可工作,且易于扩展 (127个) USB2.0以低成本实现高达480Mb/s的传输率(USB1.1的 全速设备可达12Mb/s) 接口标准统一、端口供电
14
一个典型的USB通讯系统
执行2
预取
流 译码1 水 译码2 线 执行1 2
执行2
数据
8
高速缓存(CACHE)
1、为什么采用高速缓存
微处理器的时钟频率比内存速度提高快得多,高速缓存可以提 高内存的平均性能。
2、高速缓存的工作原理
高速缓存是一种小型、快速的存储器,它保存部分主存内容的 拷贝。
高 数据
速
缓
CACHE
CPU
存
主存
控
11
SRAM和DRAM
1)SRAM
CS R/W Addr Data
2)DRAM
CS R/W RAS CAS Addr Data
12
输入输出接口
I/O A/D、D/A 键盘 LCD 存储器接口 设备接口
13
例如USB
USB:Universal Serial Bus,通用串行总线 大家生活中常见的与USB有关的东西有:
最简单的软件结构是循环轮询,程序依次检查系统的每一个输入条 件,一旦条件成立就进行相应的处理。
Initialize() While(true){
if(condition_1) action_1(); if(condition_2) action_2();
…… if(condition_n) acition_n(); }
在进入临界区之前要关中断,而临界区代码执行完以后要 立即开中断(在任务切换时,地址、指令、数据等寄存器 堆栈保护)。
22
多任务(任务、进程和线程)
休眠、就绪、运行、挂起、被中断
任务 1
任务 2
数据存储器
数据0 数据1 数据2
5
1.3 CISC和RISC
CISC:复杂指令集(Complex Instruction Set Computer)
具有大量的指令和寻址方式 8/2原则:80%的程序只使用20%的指令 大多数程序只使用少量的指令就能够运行。 RISC:精简指令集(Reduced Instruction Set Computer) 在通道中只包含最有用的指令 确保数据通道快速执行每一条指令 使CPU硬件结构设计变得更为简单