书签 分享 收藏 举报 版权申诉 / 58
上传文档赚钱

类型DARTS实时软件分析设计方法课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:5100821
  • 上传时间:2023-02-11
  • 格式:PPT
  • 页数:58
  • 大小:2.30MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《DARTS实时软件分析设计方法课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    DARTS 实时 软件 分析 设计 方法 课件
    资源描述:

    1、DARTS实时软件分析设计方法实时软件分析设计方法主讲:谢小云主讲:谢小云DARTS实时软件开发设计方法1、DARTS设计方法概述设计方法概述2、DARTS设计方法的设计步骤设计方法的设计步骤 3、基于、基于DARTS的洗衣机控制软件设计的洗衣机控制软件设计 4、机器人控制器系统的设计、机器人控制器系统的设计目录目录DARTS实时软件开发设计方法1、DARTS设计方法概述设计方法概述u通用软件开发的设计:通用软件开发的设计:n系统划分为各个功能子模块,再进一步细分为函数,采用自顶向下的设计方法u嵌入式应用软件的设计嵌入式应用软件的设计n通过并发的任务来运作的,应用软件开发的系统设计将系统划分为

    2、多个任务,各个任务允许并发执行,通过相互间通信建立联系。DARTS实时软件开发设计方法1、DARTS设计方法概述设计方法概述nDARTS(Design Approach for Real-Time Systems),它是SAISD(System Analysis System Design结构化分析和设计)方法在实时系统开发中的应用,按照软件生命周期进行软件开发。nDARTS通过将系统分解成任务和定义任务接口的方法,来扩充结构化分析/设计的方法,使得实时应用系统具有并行处理的能力。该开发方法的关键是将一个系统分解为并行的任务,并定义任务间的接口。DARTS实时软件开发设计方法1、DARTS设计

    3、方法概述设计方法概述2、DARTS设计方法的设计步骤设计方法的设计步骤 3、基于、基于DARTS的洗衣机控制软件设计的洗衣机控制软件设计4、机器人控制器系统的设计、机器人控制器系统的设计目录目录DARTS实时软件开发设计方法2.1 嵌入式实时软件系统生命周期嵌入式实时软件系统生命周期u需求分析需求分析u系统设计系统设计DARTS设计方法设计方法n数据流分析数据流分析n划分任务划分任务n定义任务接口定义任务接口u任务设计任务设计u模块构筑模块构筑u任务与系统集成任务与系统集成u系统测试系统测试DARTS实时软件开发设计方法2.2 DARTS-数据流分析数据流分析 u在需求分析的基础上,以数据流图

    4、作为分析工在需求分析的基础上,以数据流图作为分析工具分析系统的数据流,从系统的功能需求开始具分析系统的数据流,从系统的功能需求开始分析系统的数据流,以确定主要的功能。分析系统的数据流,以确定主要的功能。u数据流图数据流图(Data Flow Diagram,DFD)也称为)也称为Bubble Chart或或Data Flow Graph,它用来,它用来描绘描绘系统的逻辑模型,从数据传递和加工的角度,系统的逻辑模型,从数据传递和加工的角度,以图形的方式描绘数据在系统中流动和处理的以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能。过程,反映系统必须完成的逻辑功能。DARTS

    5、实时软件开发设计方法2.2 DARTS-数据流分析数据流分析u数据流图的基本图形符号数据流图的基本图形符号 加工。输入数据在此进行变换产生输出数据,其中要标明加工的名字。数据输入的源点或数据输出的终点。其中要标明源点或终点的名字。数据流。被加工的数据与流向,箭头边应给出数据流名字,可用名词或名词性短语命名。数据存储。必须加以命名,用名词或名词性短语命名。DARTS实时软件开发设计方法2.2 DARTS-数据流分析数据流分析u数据流图示例数据流图示例 DARTS实时软件开发设计方法2.2 DARTS-数据流分析数据流分析u数据流与加工之间的关系数据流与加工之间的关系 n在数据流图中,如果有两个以

    6、上数据流指向一个加工,或者是从一个加工中引出两个以上的数据流,这些数据流之间往往存在一定关系。DARTS实时软件开发设计方法2.2 DARTS-数据流分析数据流分析DARTS实时软件开发设计方法2.2 DARTS-数据流分析数据流分析u 数据流图的画法数据流图的画法 n识别系统的输入和输出,画出基本系统模型 n把顶层图细化为系统的功能级数据模型n对功能级数据流图中描绘的主要功能进一步细化 DARTS实时软件开发设计方法2.3 DARTS-划分任务划分任务 u识别出系统的所有功能以及它们之间的数据流识别出系统的所有功能以及它们之间的数据流关系,得到完整的数据流图后,下一步是识别关系,得到完整的数

    7、据流图后,下一步是识别出可并行的功能。系统设计人员把可并行、相出可并行的功能。系统设计人员把可并行、相对独立的功能单元抽象成一个系统任务。对独立的功能单元抽象成一个系统任务。uDARTS设计方法提供了怎样在数据流图上确定设计方法提供了怎样在数据流图上确定并发任务的方法。并发任务的方法。u实时软件系统中并行任务的分解主要考虑系统实时软件系统中并行任务的分解主要考虑系统内功能的异步性。内功能的异步性。u一个任务可对应一个变换,也可对应多个变换。一个任务可对应一个变换,也可对应多个变换。DARTS实时软件开发设计方法2.3 DARTS-划分任务划分任务 u划分任务的原则划分任务的原则:n I/O依赖

    8、性n如果变换依赖于I/O,速度受限I/O,可独立成任务n在系统中创建与I/O设备数目相当的I/O任务nI/O任务只实现与设备相关的代码nI/O任务的执行只受限于I/O设备的速度,而不是处理器n在任务中分离设备相关性DeviceI/O Task App.TDARTS实时软件开发设计方法2.3 DARTS-划分任务划分任务n功能的时间关键性:n具有时间关键性的功能应当分离处理出来,成为一个独立的任务,并且赋予这些任务较高的优先级,以满足系统对时间的要求。event 1event 2Task 1Task 2Task 3Task 3deadline 1deadline DARTS实时软件开发设计方法2

    9、.3 DARTS-划分任务划分任务n计算需求n计算量大的功能在运行时势必会占用CPU很多时间,应当让它们单独成为一个任务。n为了保证其他费时少的任务得到优先运行,应该赋予计算量大的任务以较低优先级运行,这样允许它能被高优先级的任务抢占。n多个计算任务可安排成同优先级,按时间片循环轮转DARTS实时软件开发设计方法2.3 DARTS-划分任务划分任务n功能内聚:n系统中各紧密相关的功能,不适合划分为独立的任务,应该把这些逻辑上或数据上紧密相关的功能合成一个任务,使各个功能共享资源或相同事件的驱动。n把每个变换都作为同一任务中一个个独立的模块,不仅保证了模块级的功能内聚,也保证了任务级的功能内聚e

    10、vent 1F1(x)+F3(x)event 2F2(x)DARTS实时软件开发设计方法2.3 DARTS-划分任务划分任务n时间内聚:n将同一时间内完成的各功能形成一个任务,即使这些功能是不相关的n功能组的各功能是由相同的外部事件驱动的(如时钟等),这样每次任务接收到一个事件,它们都可以同时执行n由于减少了任务调度及切换的次数,减少了系统的开销Clock TickeventF1(x)+F2(y)+F3(z)F4(x)+F5(y)DARTS实时软件开发设计方法2.3 DARTS-划分任务划分任务n功能的周期执行n将在相同周期内执行的各个功能组成一个任务,使运行频率越高的任务赋予越高的优先级。n

    11、频率高的任务赋予高优先级F1F2F110HZ10HZ15HZ15HZFDARTS实时软件开发设计方法2.4 DARTS-定义任务间的接口定义任务间的接口 u在数据流图中,接口以数据流和数据存储区的在数据流图中,接口以数据流和数据存储区的形式存在。形式存在。u在在DARTS中有两类任务接口模块:中有两类任务接口模块:n任务通信模块TCM(Task Communication Module)n任务同步模块TSM(Task Synchronization Module)DARTS实时软件开发设计方法2.4 DARTS-定义任务间的接口定义任务间的接口u任务通信模块任务通信模块n信息隐藏模块信息隐藏模

    12、块数据数据存储区存储区写数据写数据读数据读数据读数据读数据任务任务A任务任务BDARTS实时软件开发设计方法2.4 DARTS-定义任务间的接口定义任务间的接口n消息通信模块消息通信模块DARTS实时软件开发设计方法2.4 DARTS-定义任务间的接口定义任务间的接口u任务同步模块任务同步模块源源S:发事件信号:发事件信号(E)S目标目标D:等待事件:等待事件(E)DDARTS实时软件开发设计方法2.4 DARTS-定义任务间的接口定义任务间的接口u表示任务之间的接口的符号表示任务之间的接口的符号DARTS实时软件开发设计方法2.5 DARTS-任务设计任务设计 u有了划分好的任务以及定义好的

    13、任务间的接口有了划分好的任务以及定义好的任务间的接口后,接下来就可以开始任务的设计。后,接下来就可以开始任务的设计。u主要工作是确定每个任务的结构,画出每个任主要工作是确定每个任务的结构,画出每个任务的数据流图,使用结构化设计方法,从数据务的数据流图,使用结构化设计方法,从数据流图导出任务的模块结构图,并定义各模块的流图导出任务的模块结构图,并定义各模块的接口,之后,便可以进行任务的详细设计,给接口,之后,便可以进行任务的详细设计,给出每个模块的程序流程图及数据结构。出每个模块的程序流程图及数据结构。DARTS实时软件开发设计方法1、DARTS设计方法概述设计方法概述2、DARTS设计方法的设

    14、计步骤设计方法的设计步骤 3、基于、基于DARTS的洗衣机控制软件设计的洗衣机控制软件设计 4、机器人控制器系统的设计、机器人控制器系统的设计目录目录DARTS实时软件开发设计方法3.1 洗衣机控制软件需求分析与说明洗衣机控制软件需求分析与说明 u功能需求定义和描述功能需求定义和描述 n默认状态下洗衣机处于关闭状态。n电源开关开启后,洗衣机默认的程序功能是洗衣、漂洗、脱水,默认水位时中等水位,运行状态是等待状态;n洗衣机有运行状态和等待状态;n当洗衣机处于运行状态时,用户的程序控制,即洗衣、漂洗、脱水按键和水位按键的输入无效;只有当洗衣机处于等待状态时其输入才有效;n程序控制的洗衣、漂洗、脱水

    15、这三个键可以按下一个、两个或者三个,洗衣机总是按洗衣-漂洗-脱水的顺序执行程序并且只执行用户选择的程序;DARTS实时软件开发设计方法3.1 洗衣机控制软件需求分析与说明洗衣机控制软件需求分析与说明n水位按键每次只能选择高、中、低三种水位的一个值;n洗衣机显示面板显示洗衣机的电源状态、暂停启动状态、当前执行的程序以及即将执行的程序和水位状态,并且能根据用户输入以后及时改变显示信息。DARTS实时软件开发设计方法3.1 洗衣机控制软件需求分析与说明洗衣机控制软件需求分析与说明u非功能需求定义和描述非功能需求定义和描述 n洗衣机开关机的响应时间控制在500ms以内;n洗衣机在运行状态和等待状态之间

    16、的才换控制在800ms以内;n洗衣机功能和水位的输入控制在600ms以内;n洗衣机显示面板的响应控制在1200ms以内;n这里假设洗衣机洗衣用600s的时间,漂洗用300s的时间,脱水用100s的时间。DARTS实时软件开发设计方法3.1 洗衣机控制软件需求分析与说明洗衣机控制软件需求分析与说明u外部接口描述外部接口描述 DARTS实时软件开发设计方法3.1 洗衣机控制软件需求分析与说明洗衣机控制软件需求分析与说明u系统状态变迁图系统状态变迁图 DARTS实时软件开发设计方法3.2 洗衣机控制软件系统设计以及数据流分析洗衣机控制软件系统设计以及数据流分析 u说明说明n洗衣机程序状态信息是一组数

    17、据,包含四个项:电源状态、运行情况、程序状态和水位信息,与输入面板的相对应;n时钟中断的时间间隔是20ms,通过具有一定频率的时钟中断来查看当前洗衣机程序执行的执行情况、按键输入和面板输出,以提高效率、降低复杂性。n洗衣机状态、指令集是洗衣机在转变为相应状态的时候所需要运行的指令等,这些存储在快速读写存储器之中,读取这些数据的时间非常快,在100ms的量级。DARTS实时软件开发设计方法3.3 洗衣机控制软件任务划分洗衣机控制软件任务划分u洗衣机控制软件任务划分洗衣机控制软件任务划分(在数据流图中被划入相同的任务的数据处理过程用相同颜色的虚线方框来表示)n按键输入任务:功能内聚原则;n中断定时

    18、任务:周期执行原则;n洗衣机状态信息处理任务:计算需求和功能内聚原则;n信号输出任务:I/O依赖性原则。n为了提高效率,将数据流图中的洗衣机状态信息和洗衣机状态指令集整合在一起作为洗衣机程序的信息存储,以便各个任务的访问能够有一个统一的入口。DARTS实时软件开发设计方法3.3 洗衣机控制软件任务划分洗衣机控制软件任务划分u洗衣机控制软件任务接口洗衣机控制软件任务接口 DARTS实时软件开发设计方法3.4 任务模块设计任务模块设计u按键输入任务按键输入任务 n数据流图 DARTS实时软件开发设计方法3.4 任务模块设计任务模块设计n模块结构图 DARTS实时软件开发设计方法3.4 任务模块设计

    19、任务模块设计u状态信息处理任务状态信息处理任务 n数据流图 DARTS实时软件开发设计方法3.4 任务模块设计任务模块设计n模块结构 DARTS实时软件开发设计方法3.4 任务模块设计任务模块设计u中断定时任务中断定时任务 n数据流图DARTS实时软件开发设计方法3.4 任务模块设计任务模块设计n模块结构DARTS实时软件开发设计方法3.4 任务模块设计任务模块设计u信号输出任务信号输出任务 n数据流图DARTS实时软件开发设计方法3.4 任务模块设计任务模块设计n模块结构DARTS实时软件开发设计方法1、DARTS设计方法概述设计方法概述2、DARTS设计方法的设计步骤设计方法的设计步骤 3

    20、、基于、基于DARTS的洗衣机控制软件设计的洗衣机控制软件设计 4、机器人控制器系统的设计、机器人控制器系统的设计目录目录DARTS实时软件开发设计方法上电手动停止结束断电运行程序选择控制面板控制面板控制设备由内部控控制设备由内部控制器和外部控制面制器和外部控制面板组成板组成控制器控制六个转控制器控制六个转轴,并与数字轴,并与数字I/O传感器交互作用。传感器交互作用。转轴和转轴和I/O由程序由程序控制控制该程序由控制面板该程序由控制面板操作启动执行操作启动执行4.1 需求分析与说明需求分析与说明DARTS实时软件开发设计方法u控制执行过程控制执行过程n按下“上电”按钮,系统进入了上电状态。n上

    21、电成功后,系统进入了手动状态。此时,操作者可以通过程序选择开关选择程序n按下“运行”按钮,则选定的程序开始运行,系统转为运行态。n程序运行中如果按下“停止”键,程序被挂起。之后,操作者可以按下“运行”键,使程序恢复执行,也可按下“结束”键,结束程序。n按下“结束”键后,系统进入终止态。当程序最终终止执行时,系统返回手动状态。4.1 需求分析与说明需求分析与说明DARTS实时软件开发设计方法断电态断电态通电态通电态手动态手动态运行态运行态终止态终止态挂起态挂起态上电上电上电上电 成功成功断电断电启动启动程序程序选择选择程序程序 终止终止结束结束启动启动停止停止状态变迁图状态变迁图4.1 需求分析

    22、与说明需求分析与说明DARTS实时软件开发设计方法4.2 数据流分析数据流分析程序程序面板输入有面板输入有效效性检查性检查解释程序解释程序各语句各语句读传读传感器感器处理面板处理面板输入输入 处理处理I/O命令命令处理动处理动作命令作命令向传感向传感器输出器输出输出动作输出动作轴数据轴数据接收接收确认确认输出到输出到面板面板轴控制轴控制器器读面板读面板 输入输入按下按下按钮按钮面板输入面板输入 有效的有效的面板输入面板输入 运行运行开始开始 结束结束动作动作命令命令动作动作确认确认I/O命令命令传感器值传感器值输入输入传感器输入传感器输入传感器传感器输出输出输出输出面板面板输出输出 运行运行

    23、停止停止重启动重启动轴块轴块轴确认轴确认轴输入轴输入轴输出轴输出动作块动作块4.2 数据流分析数据流分析DARTS实时软件开发设计方法4.3 任务划分任务划分DARTS实时软件开发设计方法4.3 任务划分任务划分DARTS实时软件开发设计方法4.4 任务模块设计任务模块设计u详细说明系统中各任务的设计考虑和执行流程,详细说明系统中各任务的设计考虑和执行流程,以利于程序员编制程序。以利于程序员编制程序。u任务体系结构:详细定义任务包含的子模块和任务体系结构:详细定义任务包含的子模块和模块间的关系模块间的关系u任务执行流程:尽可能详细地描述任务的处理任务执行流程:尽可能详细地描述任务的处理过程过程

    24、u任务内数据结构任务内数据结构u任务内模块间接口任务内模块间接口DARTS实时软件开发设计方法4.4 任务模块设计任务模块设计DARTS实时软件开发设计方法4.4 任务模块设计任务模块设计DARTS实时软件开发设计方法u系统和任务设计完成后,进行每个模块的详细系统和任务设计完成后,进行每个模块的详细设计,直到每个具体的函数设计,直到每个具体的函数u在单元测试前不必编完模块全部程序,可以分在单元测试前不必编完模块全部程序,可以分阶段编码和测试阶段编码和测试u模块的详细设计应一气呵成,避免系统以非结模块的详细设计应一气呵成,避免系统以非结构化方式形成构化方式形成4.5 任务构筑任务构筑DARTS实

    25、时软件开发设计方法4.5 任务构筑任务构筑u函数描述函数描述给出对该函数的简要描述,说明设给出对该函数的简要描述,说明设计目的、意义以及特点计目的、意义以及特点u功能功能说明该函数应具有的功能,可采用说明该函数应具有的功能,可采用IPO图(输入一处理一输出图)形式图(输入一处理一输出图)形式u性能性能说明对该函数的性能要求,包括精度、说明对该函数的性能要求,包括精度、灵活性和时间特性等灵活性和时间特性等u输入输入定义每个输入项的特性,包括名称、标定义每个输入项的特性,包括名称、标识、数据类型和格式、取值范围、输入方式、识、数据类型和格式、取值范围、输入方式、数据来源、保密方式等数据来源、保密方

    26、式等u输出输出定义每个输入项的特性,特征同输入定义每个输入项的特性,特征同输入DARTS实时软件开发设计方法4.5 任务构筑任务构筑u算法算法详细说明本函数所选用的算法,具体的详细说明本函数所选用的算法,具体的计算公式和计算步骤计算公式和计算步骤u流程流程用流程图辅以必要的说明来表示本函数用流程图辅以必要的说明来表示本函数的逻辑流程的逻辑流程u接口接口说明本函数与其他函数的调用关系,包说明本函数与其他函数的调用关系,包括说明参数赋值和调用方式以及相关数据结构括说明参数赋值和调用方式以及相关数据结构(如数据库、文件)。(如数据库、文件)。u存储分配存储分配说明本函数的存储分配说明本函数的存储分配u限制条件限制条件说明本函数运行所受限制说明本函数运行所受限制 u测试计划测试计划说明对本函数的测试计划,包括技说明对本函数的测试计划,包括技术要求、输入数据、预期结果、人员安排等术要求、输入数据、预期结果、人员安排等DARTS实时软件开发设计方法u模块逐个连接、测试以构成任务模块逐个连接、测试以构成任务u任务被逐个连接和测试形成最终系统任务被逐个连接和测试形成最终系统u可分两步集成可分两步集成n在宿主机上模拟集成(软集成)n在目标机上集成4.6 任务与系统集成任务与系统集成

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:DARTS实时软件分析设计方法课件.ppt
    链接地址:https://www.163wenku.com/p-5100821.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库