嵌入式系统及软件3

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中断, 于是将中断后台运行而进行前台处 理, 处理完成后又回到后台(通常又称主 程序)。
嵌入式系统和软件3
16
运行方式
中断 1
中断 1 中断 2
主程序 中断 1 中断 2
嵌入式系统和软件3
17
流程
前台处理
ISR1 ISR2
后台处理
初始化
N
事件1
Y
处理1
N
事件2
Y
处理2
ISR3嵌入式系统和软件3
18
前后台系统
需要考虑的是中断的现场保护和恢复, 中断嵌套,中断处理过程与主程序的协 调(共享资源)问题。
系统的性能主要由中断延迟时间 (Interrupt latency time), 响应时间 (response time)和恢复时间(recovery time)来刻画。
嵌入式系统和软件3
19
嵌入式软件系统
嵌入式系统和软件3
1
嵌入式软件系统概述
嵌入式软件和通用计算机的软件一样,一般分为系 统软件、支撑软件和应用软件三大类。
系统软件:控制、管理计算机系统的资源。
如:嵌入式操作系统、 嵌入式中间件 (CORBA、 Java)等
支撑软件:辅助软件开发的工具。
如:系统分析设计工具、仿真开发工具、交叉开发工 具、测试工具、配置管理工具、维护工具等。
应用软件:是面向应用领域。
如:手机软件、路由器软件、交换机软件、飞控软件

嵌入式系统和软件3
2
嵌入式软件系统概述
从运行平台来分,嵌入式软件可以分为 运行在开发平台上的软件:设计、开发、测 试工具等 运行在嵌入式系统上的软件:嵌入式操作系 统、应用程序、驱动程序。
嵌入式系统和软件3
3
嵌入式系统的软件体系结构
按嵌入式系统软件复杂程度来分类
– 循环轮询系统 – 有限状态机系统 – 前后台系统 – 单处理器多任务系统 – 多处理器多任务系统
嵌入式系统和软件3
4
循环轮询系统
最简单的软件结构:循环轮询; 程序依次检查系统的每一个输入条件,
一旦条件成绩就进行相应的处理; 适合于慢速和非常快速的简单系统。
有限状态机缺点:
– 任何时刻系统只能有一个状态,无法表示并发性, 不能描述异步并发的系统
– 在系统部件较多时,状态数随之增加,导致复杂性 显著增长
– 对于大的应用系统,难于调试
嵌入式系统和软件3
15
前后台系统
• 后台是一个一直在运行的系统。 • 前台是由一些中断处理过程组成的。 • 当有一前台事件(外部事件)发生时,引起
嵌入式系统和软件3
9
有限状态机系统
有限状态机是实时系统设计中一种重要的、易 于建立的、应用比较广泛的、以描述控制特性为 主的建模方法,它可以应用于从系统分析到设计 的所有阶段。
嵌入式系统和软件3
10
有限状态机系统
有限状态机组成 ✓ 一个有限的状态集合Q ✓ 一个有限的输入集合I ✓ 一个变迁函数δ集合:Q×I→Q
– 保证系统的实时性 – 系统的模块化好,提高系统的可维护性
嵌入式系统和软件3
24
单处理器多任务系统
单处理器多任务系统缺点:
– 需要采用一些新的软件设计方法 – 需要增加功能:线程间的协调,同步和通信
有限状态机通常用“状态转移图”和“状态 转移表”的方式来表示
嵌入式系统和软件3
11
有限状态机系统
状态转移图中的节点代表状态, 若在输入i下状态由q1转变为状态q2,
则有一条标有输入i的弧线从状态q1指 向q2。 此时,其变迁函数δ(q1,i)=q2。
q1
i/δ
q2
嵌入式系统和软件3
12
有限状态机系统
每个任务是顺序执行的,并行性通过操 作系统来完成,任务间的相互通信和同步也 需要操作系统的支持。
嵌入式系统和软件3
21
流程
:::
:::
嵌入式系统和软件3
后台 并发多任务
Tasks
前台 ISRs
22
单处理器多任务系统
单处理器多任务系统主要特点:
·多个顺序执行的程序并行运行(任务)
·宏观上看,所有任务同时运行,每个任务运行在自 己独立的CPU上
7
程序结构
Initialize( ); While (TRUE) {
process ( ); {
Initialize( );
While ( TRUE) {
if (condition1) { action_1( ); }
if (condition2) { action_2( ); }
/* etc. */
嵌入式系统和软件3
5
查询点4
处理段31 查询点3
处理段2
处理段4 查询点5
处理段5 查询点6
查询点2 处理段1
处理段6
查询点1
单回路顺序程序 结构简单易编写, 单一处理响应快, 复杂处理响应迟, 适合单一处理者
嵌入式系统和软件3
6
流程
初始化
N
事件1
Y
处理1
N 事件2 Y 处理2
嵌入式系统和软件3
·实际上,不同的任务是共享同一个CPU和其它硬件。 因此,需要RTOS来对这些共享的设备和数据进行管 理
·每个程序都被编制成无限循环的程序,等待特定的 输入,执行相应的任务
·这种程序模型将系统分成相对简单的,相互合作的
模块
嵌入式系统和软件3
23
单处理器多任务系统
单处理器多任务系统主要优点:
– 将复杂的系统分解为相对独立的多个线程, 达到“分而制之”的目的,从而降低系统的复 杂性
有限状态机举例
a/f0
state0
state1
a/f2
b/f1
b/f2
b/f1
state 2
a/f1
嵌入式系统和软件3
state 3
b/f0
13
有限状态机系统
嵌入式系统和软件3
14
有限状态机系统
有限状态机优点:
Leabharlann Baidu
– 简单易用,状态间的关系能够直观看到,便于编程
– 可以快速的执行
– 只是通过改变输出功能来改变机器的响应
嵌入式系统{和软件3
8
循环轮询系统
循环轮询系统优点: ·对于简单的系统而言,便于编程和理解 ·没有中断机制,程序运行良好,不会出现 随机问题
循环轮询系统缺点: ·有限的应用领域(由于不可确定性) ·对于大量的I/O服务的应用,不容易实现 ·大的程序不便于调试
因此,它适合于慢速和非常快速的简单系统。
单处理器多任务系统
对于一个复杂的嵌入式实时系统来说, – 当采用中断处理程序加一个后台主程序这种 软件结构难以实时的、准确的、可靠的完成 时 – 存在一些互不相关的过程需要在一个计算机 中同时处理时, 就需要采用实时多任务系统。
嵌入式系统和软件3
20
结构
由多个任务,多个中断处理过程,实时 操作系统组成的有机的整体。
相关文档
最新文档