嵌入式系统与软件5.pptVIP

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式系统与软件5

 ROM Monitor ROM Monitor调试结构 注意: 调试过程: ROM Monitor的优点 简单、方便; 支持许多高级的调试功能; 可扩展性强; 成本低廉; 基本上不需要专门的调试硬件支持。 ROM Monitor的缺点  ROM Emulator 内部电路仿真器(ICE) ICE调试结构 功能特点 OCD OCD调试结构 OCD调试方法 优点 缺点 交叉开发的缺点 仿真开发类型 软件仿真开发 软件仿真开发过程 优点 缺点 嵌入式系统开发模式 一种嵌入式多任务软件的开发方法 ——DARTS方法 DARTS: 结构化分析/结构化设计的方法,给出了划分任务的方法以及定义任务间接口的机制. 嵌入式实时软件系统的生命周期: 需求分析与说明 系统设计 任务划分原则 定义任务间接口 任务设计 模块构筑 任务与系统集成 嵌入式实时软件系统的生命周期 需求分析与详细说明 系统设计 任务分解, 定义任务间接口关系 任务设计 按模块方式设计每个任务,定义模块间接口 模块构筑 完成每个模块的详细设计、编码和单元测试 任务与系统集成 系统测试 解 释 控制执行过程 需求分析与说明 需求说明给出系统功能需求(功能,输入,输出)、外部接口需求(如用户界面)、性能以及诸如文件/数据库安全等其它要求。 实时系统常用状态变迁图描述系统,为此需先设计状态变迁图,此图在设计阶段被逐步细化。 功能内聚 各紧密相关的功能,不能分别对应不同的任务,将这些紧密相关的功能组,组成一个任务, 使各功能共享资源或相同事件的驱动。 组成一个任务会减少通信的开销,而且不仅保证了模块级的功能内聚, 也保证了任务级的功能内聚。 任务设计 任务体系结构 函数设计 函数设计 任务与系统集成 模块逐个连接、测试以构成任务,任务被逐个连接和测试形成最终系统 可分两步集成 在宿主机上模拟集成(软集成) 在目标机上的集成。 嵌入式软件设计的一些基本原则 尽量简单 使用静态表 尽量减少动态性 恰当的任务数目 使用有限状态自动机辅助设计 面向对象设计 避免使用复杂算法 尽量简单 使用静态表 系统运行前,根据各任务的实时要求生成一张任务的运行时间表,指明各任务的起始时间及运行长度; 运行时间表生成后,在系统运行过程中不再变化; 系统运行是,调度器只需要根据这张表在指定的时刻启动相应的实时任务。 尽量减少动态性 特点决定 嵌入式系统中,时间资源非常宝贵,往往需要以空间换时间 采用静态数据结构 如静态数组 不能绝对禁止动态 消息队列可以使用动态链表结构 资源丰富系统 恰当的任务数目 任务队列变长,任务调度管理复杂化,调度延迟增加,从而降低整个系统的实时性能; 任务数目的增多,任务间通信几何级数增长,影响系统的实时性能; 原则:在实时性允许的范围内定义适当的任务数目。 需求分析与说明 系 统 设 计 系统设计说明该系统如何被分解成多个任务, 如何定义任务间的关系 任务划分方法 – DARTS(结构化分析/结构化设计)设计方法,此方法给出了划分任务的方法以及定义任务间接口的机制。 DARTS设计方法 数据流分析 每个数据流图都包含: 变换圈, 表示系统完成的功能 箭头表示变换间的数据流动 数据存储区表示数据的存储场所 数据字典定义了数据流和数据存储区所包含的数据项 图 机器人控制数据流图 程序 面板输入有效 性检查 解释程序 各语句 读传 感器 处理面板输入 处理 I/O指令 处理动 作命令 向传感 器输出 输出动作 轴数据 接收 确认 输出到面板 输入 轴控制器 读面板 输入 按下 按钮 面板输入 有效的 面板输入 运行 开始 结束 动作 命令 动作 确认 I/O 命令 传感器值 输入 传感器输入 传感器 输出 输出 面板 输出 显示灯 运行 停止 重启动 轴块 轴确认 轴输入 轴输出 动作块 DARTS设计方法 划分任务 识别出系统所有功能和它们之间的数据流后,下一步将涉及怎样在数据流图上确定出并发的任务。 划分任务原则 I/O 依赖性 时间关键性的功能 计算量大的功能 功能内聚(Functional relations) 时间内聚(Temporal relations) 周期执行的功能(Cyclic executing function) I/O 依赖性 Device I/O Task App.Task 在系统中创建多个与I/O设备相当数目I/O任务 I/O任务只实现与设备相关的代码 I/O任务的执行只受限于I/O设备的速度,而不是处理器 在任务中分离设备相关性 时间关键性 将有时间关键性(deadline)的功能分离出来,组成独立运行的任务; 赋予这些任务高的优先级,以满足对时间的需要。 e

文档评论(0)

sheppha + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5134022301000003

1亿VIP精品文档

相关文档