DARTS实时软件分析设计方法.pptx
《DARTS实时软件分析设计方法.pptx》由会员分享,可在线阅读,更多相关《DARTS实时软件分析设计方法.pptx(58页珍藏版)》请在三一办公上搜索。
1、,DARTS实时软件分析设计方法,DARTS实时软件开发设计方法,1、DARTS设计方法概述2、DARTS设计方法的设计步骤 3、基于DARTS的洗衣机控制软件设计 4、机器人控制器系统的设计,目录,DARTS实时软件开发设计方法,1、DARTS设计方法概述,通用软件开发的设计:系统划分为各个功能子模块,再进一步细分为函数,采用自顶向下的设计方法嵌入式应用软件的设计通过并发的任务来运作的,应用软件开发的系统设计将系统划分为多个任务,各个任务允许并发执行,通过相互间通信建立联系。,DARTS实时软件开发设计方法,1、DARTS设计方法概述,DARTS(Design Approach for Re
2、al-Time Systems),它是SAISD(System Analysis System Design结构化分析和设计)方法在实时系统开发中的应用,按照软件生命周期进行软件开发。DARTS通过将系统分解成任务和定义任务接口的方法,来扩充结构化分析/设计的方法,使得实时应用系统具有并行处理的能力。该开发方法的关键是将一个系统分解为并行的任务,并定义任务间的接口。,DARTS实时软件开发设计方法,1、DARTS设计方法概述2、DARTS设计方法的设计步骤 3、基于DARTS的洗衣机控制软件设计4、机器人控制器系统的设计,目录,DARTS实时软件开发设计方法,2.1 嵌入式实时软件系统生命周期
3、,需求分析系统设计DARTS设计方法数据流分析划分任务定义任务接口任务设计模块构筑任务与系统集成系统测试,DARTS实时软件开发设计方法,2.2 DARTS-数据流分析,在需求分析的基础上,以数据流图作为分析工具分析系统的数据流,从系统的功能需求开始分析系统的数据流,以确定主要的功能。数据流图(Data Flow Diagram,DFD)也称为Bubble Chart或Data Flow Graph,它用来描绘系统的逻辑模型,从数据传递和加工的角度,以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能。,DARTS实时软件开发设计方法,2.2 DARTS-数据流分析,数据流
4、图的基本图形符号,加工。输入数据在此进行变换产生输出数据,其中要标明加工的名字。,数据输入的源点或数据输出的终点。其中要标明源点或终点的名字。,数据流。被加工的数据与流向,箭头边应给出数据流名字,可用名词或名词性短语命名。,数据存储。必须加以命名,用名词或名词性短语命名。,DARTS实时软件开发设计方法,2.2 DARTS-数据流分析,数据流图示例,DARTS实时软件开发设计方法,2.2 DARTS-数据流分析,数据流与加工之间的关系 在数据流图中,如果有两个以上数据流指向一个加工,或者是从一个加工中引出两个以上的数据流,这些数据流之间往往存在一定关系。,DARTS实时软件开发设计方法,2.2
5、 DARTS-数据流分析,DARTS实时软件开发设计方法,2.2 DARTS-数据流分析,数据流图的画法 识别系统的输入和输出,画出基本系统模型 把顶层图细化为系统的功能级数据模型对功能级数据流图中描绘的主要功能进一步细化,DARTS实时软件开发设计方法,2.3 DARTS-划分任务,识别出系统的所有功能以及它们之间的数据流关系,得到完整的数据流图后,下一步是识别出可并行的功能。系统设计人员把可并行、相对独立的功能单元抽象成一个系统任务。DARTS设计方法提供了怎样在数据流图上确定并发任务的方法。实时软件系统中并行任务的分解主要考虑系统内功能的异步性。一个任务可对应一个变换,也可对应多个变换。
6、,DARTS实时软件开发设计方法,2.3 DARTS-划分任务,划分任务的原则:I/O依赖性如果变换依赖于I/O,速度受限I/O,可独立成任务在系统中创建与I/O设备数目相当的I/O任务I/O任务只实现与设备相关的代码I/O任务的执行只受限于I/O设备的速度,而不是处理器在任务中分离设备相关性,Device,I/O Task,App.Task,DARTS实时软件开发设计方法,2.3 DARTS-划分任务,功能的时间关键性:具有时间关键性的功能应当分离处理出来,成为一个独立的任务,并且赋予这些任务较高的优先级,以满足系统对时间的要求。,DARTS实时软件开发设计方法,2.3 DARTS-划分任务
7、,计算需求计算量大的功能在运行时势必会占用CPU很多时间,应当让它们单独成为一个任务。为了保证其他费时少的任务得到优先运行,应该赋予计算量大的任务以较低优先级运行,这样允许它能被高优先级的任务抢占。多个计算任务可安排成同优先级,按时间片循环轮转,DARTS实时软件开发设计方法,2.3 DARTS-划分任务,功能内聚:系统中各紧密相关的功能,不适合划分为独立的任务,应该把这些逻辑上或数据上紧密相关的功能合成一个任务,使各个功能共享资源或相同事件的驱动。把每个变换都作为同一任务中一个个独立的模块,不仅保证了模块级的功能内聚,也保证了任务级的功能内聚,DARTS实时软件开发设计方法,2.3 DART
8、S-划分任务,时间内聚:将同一时间内完成的各功能形成一个任务,即使这些功能是不相关的功能组的各功能是由相同的外部事件驱动的(如时钟等),这样每次任务接收到一个事件,它们都可以同时执行由于减少了任务调度及切换的次数,减少了系统的开销,DARTS实时软件开发设计方法,2.3 DARTS-划分任务,功能的周期执行将在相同周期内执行的各个功能组成一个任务,使运行频率越高的任务赋予越高的优先级。频率高的任务赋予高优先级,DARTS实时软件开发设计方法,2.4 DARTS-定义任务间的接口,在数据流图中,接口以数据流和数据存储区的形式存在。在DARTS中有两类任务接口模块:任务通信模块TCM(Task C
9、ommunication Module)任务同步模块TSM(Task Synchronization Module),DARTS实时软件开发设计方法,2.4 DARTS-定义任务间的接口,任务通信模块信息隐藏模块,DARTS实时软件开发设计方法,2.4 DARTS-定义任务间的接口,消息通信模块,DARTS实时软件开发设计方法,2.4 DARTS-定义任务间的接口,任务同步模块,DARTS实时软件开发设计方法,2.4 DARTS-定义任务间的接口,表示任务之间的接口的符号,DARTS实时软件开发设计方法,2.5 DARTS-任务设计,有了划分好的任务以及定义好的任务间的接口后,接下来就可以开始
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DARTS 实时 软件 分析 设计 方法
链接地址:https://www.31ppt.com/p-7330713.html