DARTS實時軟件分析設計方法
《DARTS實時軟件分析設計方法》由會員分享,可在線閱讀,更多相關《DARTS實時軟件分析設計方法(58頁珍藏版)》請在讀根文庫上搜索。
1、 DARTS實時軟件分析設計方法 主講:謝小云 DARTS實時軟 件 開發設計 方法 1、 DARTS設計方法概述 2、 DARTS設計方法的設計步驟 3、基于 DARTS的洗衣機控制軟件設計 4、 機器人控制器系統的設計 目錄 DARTS實時軟 件 開發設計 方法 1、 DARTS設計方法概述 通用軟件開發的設計: 系統劃分為各個功能子模塊,再進一步細分為函數, 采用自頂向下的設計方法 嵌入式應用軟件的設計 通過并發的任務來運作的,應用軟件開發的系統設 計將系統劃分為多個任務,各個任務允許并發執行, 通過相互間通信建立聯系。 DARTS實時軟 件 開發設計 方法 1、 DARTS設計方法概述
2、 DARTS(Design Approach for Real-Time Systems) , 它是 SAISD(System Analysis System Design結構化分 析和設計 )方法在實時系統開發中的應用,按照軟件 生命周期進行軟件開發。 DARTS通過將系統分解成任務和定義任務接口的方 法,來擴充結構化分析 /設計的方法,使得實時應用 系統具有并行處理的能力。該開發方法的關鍵是將 一個系統分解為并行的任務,并定義任務間的接口。 DARTS實時軟 件 開發設計 方法 1 、 DARTS設計方法概述 2、 DARTS設計方法的設計步驟 3、基于 DARTS的洗衣機控制軟件設計 4
3、、 機器人控制器系統的設計 目錄 DARTS實時軟 件 開發設計 方法 2.1 嵌入式實時軟件系統生命周期 需求分析 系統設計 DARTS設計方法 數據流分析 劃分任務 定義任務接口 任務設計 模塊構筑 任務與系統集成 系統測試 DARTS實時軟 件 開發設計 方法 2.2 DARTS-數據流分析 在需求分析的基礎上,以數據流圖作為分析工 具分析系統的數據流,從系統的功能需求開始 分析系統的數據流,以確定主要的功能。 數據流圖( Data Flow Diagram, DFD)也稱為 Bubble Chart或 Data Flow Graph,它用來描繪 系統的邏輯模型,從數據傳遞和加工的角度,
4、 以圖形的方式描繪數據在系統中流動和處理的 過程,反映系統必須完成的邏輯功能。 DARTS實時軟 件 開發設計 方法 2.2 DARTS-數據流分析 數據流圖的基本圖形符號 加工。輸入數據在此進行變換產生輸出數據,其中要標明加工的名字。 數據輸入的源點或數據輸出的終點。其中要標明源點或終點的名字。 數據流。被加工的數據與流向,箭頭邊應給出數據流名字,可用 名詞或名詞性短語命名。 數據存儲。必須加以命名,用名詞或名詞性短語命名。 DARTS實時軟 件 開發設計 方法 2.2 DARTS-數據流分析 數據流圖示例 DARTS實時軟 件 開發設計 方法 2.2 DARTS-數據流分析 數據流與加工之
5、間的關系 在數據流圖中,如果有兩個以上數據流指向一個加 工,或者是從一個加工中引出兩個以上的數據流, 這些數據流之間往往存在一定關系。 T A B C * 由 數 據 A 和 B 共 同 變 換 成 C T B C A * 由 數 據 A 變 換 成 數 據 B 和 C DARTS實時軟 件 開發設計 方法 2.2 DARTS-數據流分析 T A B C + 由 數 據 A 或 B , 或 A 和 B 共 同 變 換 成 C TA B C + 由 數 據 A 變 換 為 B 或 C , 或 同 時 變 換 為 B 和 C T A B C + 由 數 據 A 或 B 其 中 之 一 變 換 成
6、C TA B C 由 數 據 A 變 換 成 B 或 C 其 中 之 一+ DARTS實時軟 件 開發設計 方法 2.2 DARTS-數據流分析 數據流圖的畫法 識別系統的輸入和輸出,畫出基本系統模型 把頂層圖細化為系統的功能級數據模型 對功能級數據流圖中描繪的主要功能進一步細化 DARTS實時軟 件 開發設計 方法 2.3 DARTS-劃分任務 識別出系統的所有功能以及它們之間的數據流 關系,得到完整的數據流圖后,下一步是識別 出可并行的功能。系統設計人員把可并行、相 對獨立的功能單元抽象成一個系統任務。 DARTS設計方法提供了怎樣在數據流圖上確定 并發任務的方法。 實時軟件系統中并行任務
7、的分解主要考慮系統 內功能的異步性。 一個任務可對應一個變換,也可對應多個變換。 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-劃分任務 功能的時間關鍵性 : 具有時間關鍵性的功能應當分離處理出來,成為 一個
8、獨立的任務,并且賦予這些任務較高的優先 級,以滿足系統對時間的要求。 event 1 event 2 Task 1 Task 2 Task 3 Task 3 deadline 1 deadline 2 DARTS實時軟 件 開發設計 方法 2.3 DARTS-劃分任務 計算需求 計算量大的功能在運行時勢必會占用 CPU很多時 間,應當讓它們單獨成為一個任務。 為了保證其他費時少的任務得到優先運行,應該 賦予計算量大的任務以較低優先級運行,這樣允 許它能被高優先級的任務搶占。 多個計算任務可安排成同優先級 , 按時間片循環 輪轉 DARTS實時軟 件 開發設計 方法 2.3 DARTS-劃分任務
9、 功能內聚 : 系統中各緊密相關的功能,不適合劃分為獨立的 任務,應該把這些邏輯上或數據上緊密相關的功 能合成一個任務,使各個功能共享資源或相同事 件的驅動。 把每個變換都作為同一任務中一個個獨立的模塊, 不僅保證了模塊級的功能內聚,也保證了任務級 的功能內聚 event 1 F1(x) + F3(x) event 2 F2(x) DARTS實時軟 件 開發設計 方法 2.3 DARTS-劃分任務 時間內聚 : 將 同一時間內完成的各功能 形成一個任務 , 即使 這些功能是不相關的 功能組的各功能是由相同的外部事件驅動的 ( 如 時鐘等 ) , 這樣每次任務接收到一個事件 , 它們 都可以同時
10、執行 由于減少了任務調度及切換的次數 , 減少了系統 的開銷 Clock Tick event F1(x) + F2(y)+F3(z) F4(x)+F5(y) DARTS實時軟 件 開發設計 方法 2.3 DARTS-劃分任務 功能的周期執行 將在相同周期內執行的各個功能組成一個任務, 使運行頻率越高的任務賦予越高的優先級。 頻率高的任務賦予高優先級 F1 F2 F1 10HZ 10HZ 15HZ 15HZ F2 DARTS實時軟 件 開發設計 方法 2.4 DARTS-定義任務間的接口 在數據流圖中,接口以數據流和數據存儲區的 形式存在。 在 DARTS中有兩類任務接口模塊: 任務通信模塊
11、TCM( Task Communication Module) 任務同步模塊 TSM( Task Synchronization Module) DARTS實時軟 件 開發設計 方法 2.4 DARTS-定義任務間的接口 任務通信模塊 信息隱藏模塊 數據 存儲區 寫數據 讀數據 讀數據 任務 A 任務 B DARTS實時軟 件 開發設計 方法 2.4 DARTS-定義任務間的接口 消息通信模塊 DARTS實時軟 件 開發設計 方法 2.4 DARTS-定義任務間的接口 任務同步模塊 源 S:發事件信號 (E) S 目標 D:等待事件 (E) D DARTS實時軟 件 開發設計 方法 2.4 D
12、ARTS-定義任務間的接口 表示任務之間的接口的符號 任 務 信 息 隱 藏 模 塊 松 散 耦 合 消 息 通 信 消 息 隊 列 無 回 復 緊 密 耦 合 消 息 通 信 緊 密 耦 合 消 息 通 信 消 息 / 回 復 事 件 DARTS實時軟 件 開發設計 方法 2.5 DARTS-任務設計 有了劃分好的任務以及定義好的任務間的接口 后,接下來就可以開始任務的設計。 主要工作是確定每個任務的結構,畫出每個任 務的數據流圖,使用結構化設計方法,從數據 流圖導出任務的模塊結構圖,并定義各模塊的 接口,之后,便可以進行任務的詳細設計,給 出每個模塊的程序流程圖及數據結構。 DARTS實時
13、軟 件 開發設計 方法 1 、 DARTS設計方法概述 2、 DARTS設計方法的設計步驟 3、基于 DARTS的洗衣機控制軟件設計 4、 機器人控制器系統的設計 目錄 DARTS實時軟 件 開發設計 方法 3.1 洗衣機控制軟件需求分析與說明 功能需求定義和描述 默認狀態下洗衣機處于關閉狀態。 電源開關開啟后,洗衣機默認的程序功能是洗衣、 漂洗、脫水,默認水位時中等水位,運行狀態是等 待狀態; 洗衣機有運行狀態和等待狀態; 當洗衣機處于運行狀態時,用戶的程序控制,即洗 衣、漂洗、脫水按鍵和水位按鍵的輸入無效;只有 當洗衣機處于等待狀態時其輸入才有效; 程序控制的洗衣、漂洗、脫水這三個鍵可以按
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創性部分享有著作權。
- 關 鍵 詞:
- DARTS 實時 軟件 分析 設計 方法
