嵌入式通信軟件設計_第1頁
嵌入式通信軟件設計_第2頁
嵌入式通信軟件設計_第3頁
嵌入式通信軟件設計_第4頁
嵌入式通信軟件設計_第5頁
已閱讀5頁,還剩30頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1第1頁,共35頁,2022年,5月20日,3點12分,星期三第1章 嵌入式通信軟件組成1.1 嵌入式通信軟件構件類型1.2 嵌入式通信軟件設計考慮2第2頁,共35頁,2022年,5月20日,3點12分,星期三1.1 軟件構件類型廣義地劃分,通信系統有兩類軟件構件:(1)協議軟件(應用軟件) (2)系統軟件協議軟件實現協議規范;而系統軟件(含基礎軟件)通常包括一個實時操作系統和管理硬件的基礎軟件。3第3頁,共35頁,2022年,5月20日,3點12分,星期三1.1.1 協議軟件協議軟件實現協議規范中詳細規定的協議。規范由一些國際標準化組織制定,如ISO、IEEE、ITU-T等。協議實現通常基于

2、狀態事件機,也叫狀態機。狀態機是協議實現的核心,其形式通常為一狀態事件表,記錄一系列規則來指出在某一事件下應執行的動作。4第4頁,共35頁,2022年,5月20日,3點12分,星期三1.1.2 基礎軟件和系統軟件基礎軟件包括緩沖區管理、動態內存管理、定時器管理、資源管理、模塊間的通信,其他軟件模塊的監視、硬件模塊的狀態管理等。系統軟件包括實時操作系統和設備驅動程序等5第5頁,共35頁,2022年,5月20日,3點12分,星期三1.2 軟件設計考慮硬件體系結構RTOS是否選定需要什么樣的性能需要實現那些協議實現時要使用哪些全局數據結構和表需要什么樣的緩沖區管理和定時器管理告警、統計處理機制系統測

3、試方法6第6頁,共35頁,2022年,5月20日,3點12分,星期三第2章 通信軟件結構模型2.1 通信軟件結構模型2.2 系統塊與功能塊關系模型7第7頁,共35頁,2022年,5月20日,3點12分,星期三Flash控制器SCC定時器網卡控制器硬件平臺Flash驅動網卡驅動BSPVXWORKS內核(WIND)系統軟件文件系統I/O系統VXWORKS函數庫MUXTCP/IP協議棧擴展內存管理緩沖區管理定時器管理資源管理ICCP基礎軟件協議軟件(應用軟件)功能塊1功能塊3功能塊N功能塊2環境系統塊2.1 通信系統軟件結構模型8第8頁,共35頁,2022年,5月20日,3點12分,星期三2.2 系

4、統塊與功能塊關系模型系統塊由多個功能塊組成 。在這些功能塊里,只有一塊功能塊與環境交互,它收集環境中發生的事件,把它們轉換成可以處理的消息,發給相應的進程。同時,它還接收各功能塊中進程發往環境的消息,把它們轉換成硬件可以執行的動作或操作系統的系統調用。功能塊1功能塊2功能塊3功能塊4功能塊5功能塊6通道系統環境系統通道通道通道通道通道通道通道通道9第9頁,共35頁,2022年,5月20日,3點12分,星期三第3章 通信系統協議軟件實現3.1 狀態機3.2 協議數據單元處理3.3 協議接口3.4 協議軟件數據結構3.5 配置與控制3.6 系統啟動3.7 小結10第10頁,共35頁,2022年,5

5、月20日,3點12分,星期三3.1 狀態機協議是通信系統功能的核心,而協議實現的核心是狀態機。協議有些是有狀態的,有些是無狀態的。如IP轉發是無狀態的,其轉發動作的執行不依賴以前的行為或數據包。而7號信令系統中的TUP協議是有狀態的,它呼叫流程是和以前的行為或數據包密切相關的。11第11頁,共35頁,2022年,5月20日,3點12分,星期三有狀態的協議使用稱為狀態機(FSM)的結構在狀態S2出現事件E4(關機)動作:給對方發送斷開消息,終止定時器下一狀態: 斷開狀態狀態S1斷開狀態在狀態S1出現事件E1(初始化)動作:給對方發送啟動消息,啟動定時器下一狀態: 連接狀態在狀態S2出現事件E3(

6、定時器時間到),動作:處理定時器下一狀態: 連接狀態狀態S2連接狀態在狀態S2出現事件E2(協議消息)動作:處理協議消息下一狀態:連接狀態12第12頁,共35頁,2022年,5月20日,3點12分,星期三3.2 協議數據單元處理PDU預處理 主要包括包文法檢查及校驗和驗證等工作。給狀態機的事件預處理完成確定包的類型,并將適當的事件傳給狀態機,狀態機完成數據包的解析,將協議數據轉換為編程數據,狀態機根據消息類型及消息攜帶的具體參數執行下一步動作。PDU傳輸 狀態機完成相應動作后將產生的結果以消息的形式,結合具體所需參數,利用PDU組包功能,將編程數據轉化為協議數據,發送到線路上,傳送給對方。 因

7、此,概括地講,協議數據單元處理就是PDU的校驗、組包及解包過程,該步驟直接影響狀態機的執行。13第13頁,共35頁,2022年,5月20日,3點12分,星期三3.3 協議接口協議任務并非孤立存在或執行,需要和系統環境中的其他成分接口和交互包括:實時操作系統存儲管理緩沖區管理時間管理事件管理進程間通信驅動程序接口配置與控制14第14頁,共35頁,2022年,5月20日,3點12分,星期三 3.4 協議軟件數據結構 3.4.1 表表主要有四類:(1)配置-用于設置操作參數和邊界的讀/寫或只讀。例如,口令就是配置參數。(2)控制-用于改變通信軟件模塊的讀/寫信息。例如,開啟或關斷協議,主備用切換標志

8、設置等就是控制。(3)狀態-詳細反映當前操作狀態的只讀信息。例如,HDLC鏈路的運行狀態就是狀態變量。(4)統計-模塊記數或監視到的只讀信息。例如,對一個對模塊接收或發送的報文數記數的變量就是統計變量。15第15頁,共35頁,2022年,5月20日,3點12分,星期三3.4.2 其它的數據結構進程控制塊 記錄協議模塊中各進程狀態,參數等信息的數據結構。接口控制塊 記錄模塊或進程間通信端口狀態及信息的數據結構。16第16頁,共35頁,2022年,5月20日,3點12分,星期三3.4.3 實現 在協議軟件中使用的數據結構表、進程控制塊、接口控制塊,通常使用數組、鏈表、樹結構等方式實現。 為了能夠快

9、速、有效地訪問數據結構,主要根據不同對象設計不同的HASH算法直接定位的方式實現。17第17頁,共35頁,2022年,5月20日,3點12分,星期三3.5 配置與控制協議的配置與控制是指協議的管理開啟和關斷協議開啟和關斷特定端口的協議特定接口的編址設定最大幀尺寸協議消息超時管理對等實體的超時處理鑒別安全信息流量參數管理封裝信息18第18頁,共35頁,2022年,5月20日,3點12分,星期三3.6 系統啟動(1)對各種表的大小參數進行初始化(2)為動態數據結構和狀態表分配內存(3)狀態表變量初始化(4)緩沖區和定時器接口初始化(5)從本地源讀入配置,并對配置初始化(6)高層和低層接口初始化,包

10、括向高層和/或低層注冊(7)需要時創建和啟動其它的協議任務(8)在無限循環中等待19第19頁,共35頁,2022年,5月20日,3點12分,星期三第4章 多板通信軟件的設計5.1 板間通信協議及實現5.2 多板系統中的故障與容錯20第20頁,共35頁,2022年,5月20日,3點12分,星期三通信系統很復雜,通常在一個機殼上有多塊板,甚至有多個機殼本章討論通信中常用的多板設計中軟件結構的變化。21第21頁,共35頁,2022年,5月20日,3點12分,星期三4.1 板間通信協議及實現板間通信協議(ICCP或ICP) (1) 解決各主控板之間的通信問題。 (2)解決主控板和硬件插板的通信問題。目

11、前使用的通信方式:TCP、UDP、HDLC等。22第22頁,共35頁,2022年,5月20日,3點12分,星期三ICCP實現對底層通信方式進行封裝,提供兩個統一的接口,分別對應基本傳輸服務(A類服務)和帶差錯控制的服務(B類服務)。A類服務。通信的一方將報文發送給對方,不等對方證實。對方收到報文后直接交給用戶。不回證實。這類服務不提供差錯控制。主要適合兩種場合:協議用戶本身自己提供差錯控制;ICCP底層已提供差錯控制,如TCP。23第23頁,共35頁,2022年,5月20日,3點12分,星期三B類服務。該服務與MTP相似,每個報文都帶一個前向序號字節和一個后向序號字節。所謂前向序號是指發送方給

12、當前發送報文的編號,所謂后向序號是本方以正確接收的報文序號。通過對這些序號的判斷,實現對丟失報文的重發,從而達到差錯控制的目的。 B類服務主要用于直接控制HDLC芯片進行通信,或在局域網上使用UDP協議。24第24頁,共35頁,2022年,5月20日,3點12分,星期三 4.2 多板系統中的故障與容錯 多板系統和單板系統都會受到硬件故障的影響。但多板系統能夠通過切換到另一塊板對故障進行處理。這就是多板系統的容錯。目前,電信級設備普遍要求具有容錯功能。單控制板+多線板結構是通信應用中經常使用的多板系統實現。本節以此為基礎討論容錯問題。25第25頁,共35頁,2022年,5月20日,3點12分,星

13、期三4.2.1 控制卡與線卡冗余選擇方案對于控制卡和線卡的冗余,有兩種選擇方案: (1)每卡都有一冗余卡(1:1冗余); (2)N個卡有一冗余卡(1:N冗余)。 目前通用的方案是主控制卡采用1:1冗余,而線卡不采用冗余備份。26第26頁,共35頁,2022年,5月20日,3點12分,星期三4.2.2 冗余卡待機方式選擇溫待機 待機卡在冗余配置中初始化,可向系統操作人員請求下載配置并繼續運行。溫待機需要操作人員的干預。熱待機 熱待機操作是在主卡還正常工作時就從它那里獲得配置信息。期間不需要操作人員干涉。27第27頁,共35頁,2022年,5月20日,3點12分,星期三4.2.3 熱待機溫待機操作

14、不夠靈活,因為必須為冗余卡提供新的配置,這會引起系統運行的中斷,直到冗余卡處于完全運行狀態。因此。目前通信設備容錯控制主要為熱待機方式。28第28頁,共35頁,2022年,5月20日,3點12分,星期三熱待機操作需要主卡和冗余卡之間交互三類消息:(1)當冗余卡起來時,主卡發送的初始化或批更新消息提供了當前配置的完整快照。(2)主卡周期性地或按需要向冗余卡發送檢查點消息,通知配置的改變。(3)在無檢查點消息時,主卡與冗余卡之間發送心搏消息和響應消息。29第29頁,共35頁,2022年,5月20日,3點12分,星期三4.2.4 冗余功能軟件設計數據同步過程設計 主/備用主控機數據的同步分兩個階段:

15、 第一階段,在備用機剛剛加載成功時,備用機和主用機的數據是有差別的,需要備用機一次性地從主用機索取各個FSM的穩態以及掌握的資源等信息; 第二階段,備用機在位之后(可以認為備用機和主用機的數據是一致的),即主/備用主控機均在工作時,主用機要把FSM的穩態和資源的變化通知備用機。對這兩個階段,備用機都要實施相應的FSM狀態遷移、強占資源等,使備用機進入與主用機同步的運行狀態。30第30頁,共35頁,2022年,5月20日,3點12分,星期三主備用切換設計(1)命令切換和定時切換所謂命令切換,指的是通過MML命令發送指令給主處理機,要求進行主備用處理機的倒換,原來的主用處理機由主用運行狀態進入備用運行狀態,同時原來的備用處理機由備用運行狀態進入主用運行狀態。所謂定時切換,指的是MML命令發送指令給主處理機,要求在指定的時間進行主備用處理機的倒換。31第31頁,共35頁,2022年,5月20日,3點12分,星期三(2)故障切換所謂故障切換,指的是主用處理機在運行時發生軟件或硬件的故障,強制進行的主備用處理機切換,原來的備用處理機進入主用運行狀態,而對原來的主用處理機要進行復原和重新加載。對于發生故障切換時,運營部門一般要求不能發生通話中斷,計費丟失,但不要求呼叫建立階段的用戶呼叫成功。32第32頁,共35頁,2022年,5月20日,3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論