hasuploaded_基于VRTX操作系統(tǒng)實(shí)現(xiàn)V5接口協(xié)議_第1頁
hasuploaded_基于VRTX操作系統(tǒng)實(shí)現(xiàn)V5接口協(xié)議_第2頁
hasuploaded_基于VRTX操作系統(tǒng)實(shí)現(xiàn)V5接口協(xié)議_第3頁
hasuploaded_基于VRTX操作系統(tǒng)實(shí)現(xiàn)V5接口協(xié)議_第4頁
hasuploaded_基于VRTX操作系統(tǒng)實(shí)現(xiàn)V5接口協(xié)議_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于vrtx操作系統(tǒng)實(shí)現(xiàn)v5接口協(xié)議摘要:v5接口是接入網(wǎng)(an)和本地交換機(jī)(le)之間標(biāo)準(zhǔn)化的開放接 口。木文首先簡要介紹v5接口協(xié)議結(jié)構(gòu),然后給出ids2000綜合數(shù)字 通信系統(tǒng)屮v5接口的實(shí)現(xiàn)方法;著重介紹第三層協(xié)議的軟件實(shí)現(xiàn)方 法,并對嵌入式系統(tǒng)編程進(jìn)行一些探討。關(guān)鍵詞:接入網(wǎng)v5接口實(shí)時操作系統(tǒng)本地交換機(jī)引言接入網(wǎng)的概念是由傳統(tǒng)的用戶線發(fā)展起來的。近年來,由于電話 業(yè)務(wù)的發(fā)展、新業(yè)務(wù)種類的增多、對線路帶寬要求的提高以及各種新 興技術(shù)(特別是光纖通信技術(shù))的發(fā)展,使得傳統(tǒng)的用戶線的概念逐 漸發(fā)展成為接入網(wǎng)的概念。前兒年,國際電信聯(lián)盟(itu)正式定義 了用戶接入網(wǎng)。引入接入網(wǎng)后,現(xiàn)有

2、的電信網(wǎng)將減少端局?jǐn)?shù)量,簡化 中繼網(wǎng)的復(fù)雜程度,有利于中繼網(wǎng)的管理。接入網(wǎng)所覆蓋的范圍可以由三類接口來界定,如圖1所示。接口 的標(biāo)準(zhǔn)化、綜合性直接影響到接入網(wǎng)的建設(shè)成本及接入網(wǎng)能承載的業(yè) 務(wù)能力,為此,itu-t綜合考慮各種需要,終于通過了關(guān)于接入網(wǎng)和 本地交換機(jī)之間標(biāo)準(zhǔn)化的v51和v5. 2接口的建議1, 2 ov5接口是一種在接入網(wǎng)中適用范圍廣、標(biāo)準(zhǔn)化程度高的新型開 放的數(shù)字接口,對于設(shè)備的開發(fā)應(yīng)用、多種業(yè)務(wù)的發(fā)展和網(wǎng)絡(luò)的史新 起著重要的作用。v5接口的標(biāo)準(zhǔn)化代表了重要的網(wǎng)絡(luò)演進(jìn)方向,影 響深遠(yuǎn)。其意義在于交換機(jī)通過此接口可以支持多種類型的用戶接 入,而且v5接口的開放性意味著交換機(jī)和接入

3、網(wǎng)的技術(shù)和業(yè)務(wù)演進(jìn) 完全獨(dú)立開來。接入網(wǎng)的發(fā)展可以不受交換機(jī)的限制,使得接入網(wǎng)市 場完全開放。一、v5接口協(xié)議結(jié)構(gòu)窄帶v5接口包括v5. 1和v5.2接口。v5. 1接口由1條2048kb/s 鏈路構(gòu)成,通過時隙傳遞公共控制信號,支持模擬電話接入,基于 64kb/s的綜合業(yè)務(wù)數(shù)字網(wǎng)基木接入(2b+d)和用于半永久連接的、 不加帶外信令信息的其他模擬接入和數(shù)字接入。這些接入類型都具有 指配的承載通路分配,即用戶端口與v51接口內(nèi)承載通路有固定的 對應(yīng)關(guān)系。v5. 2接口按需要可以由p16個2048kb/s鏈路構(gòu)成,除支 持v5.1接口的業(yè)務(wù)外,還支持tsdnprt (30b+d)接入,其基于呼叫

4、 的吋隙分配使得v5. 2接口具有集中功能。v5. 1接口是v5. 2接口的了 集,v5. 1接口應(yīng)當(dāng)能夠升級到v5. 2接口。v5接口協(xié)議由3層組成,接入網(wǎng)側(cè)和本地交換機(jī)側(cè)呈不對稱布 置,層與層z間的信息傳遞采用原語實(shí)現(xiàn),而同層子層間的信息傳遞 則采用映射。v5接口物理層由16條2048kb/s的鏈路構(gòu)成,電氣和物理特性 符合g. 703建議,幀結(jié)構(gòu)符合g. 704/g. 706建議。每幀市32個時隙組 成,其中:時隙ts0用作幀定位和crc-4規(guī)程;時隙ts15、ts16和ts31 可以用作通信通路(c通路),運(yùn)載信令信息和控制信息,通過指配來 分配;其余時隙可用作承載通路。v5接口的數(shù)據(jù)

5、鏈路層僅對于c通路而言。笫二層協(xié)議(lapv5)規(guī) 范以建議q.921中規(guī)定的lapd協(xié)議和規(guī)程為基礎(chǔ),允許將不同的信息 流靈活地復(fù)用到c通路上去。第二層協(xié)議分為兩個了層:封裝功能了 層(lapv5-ef)和數(shù)據(jù)鏈路子層(lapv5-dl) o此外,第二層功能中還應(yīng) 包括幀中繼功能(an-fr) ov5接口的第三層協(xié)議簇包括pstn協(xié)議、控制協(xié)議、鏈路控制協(xié) 議、bcc協(xié)議和保護(hù)協(xié)議(后三種協(xié)議為v5. 2接口特有)。pstn協(xié)議 負(fù)責(zé)處理與pstn業(yè)務(wù)有關(guān)的信令;控制協(xié)議負(fù)責(zé)用戶端口狀態(tài)指示與 控制,協(xié)調(diào)兩側(cè)在網(wǎng)管控制下的數(shù)據(jù)指配;鏈路控制協(xié)議負(fù)責(zé)協(xié)調(diào)和 控制an、le兩側(cè)的鏈路阻塞、鏈路解

6、除阻塞和鏈路標(biāo)識功能;bcc協(xié) 議用來把一特定2048kb/s鏈路上的承載通路基于呼叫分配給用戶端 口;保護(hù)協(xié)議提供v5. 2接口在出現(xiàn)故障時通信路徑切換的保護(hù)功能。如圖2所示,當(dāng)?shù)谌龑訁f(xié)議有信令信息需耍發(fā)送時,通過數(shù)據(jù)鏈 路子層(lapv5-dl),請求封裝功能子層(lapv5-ef),用給定的封 裝功能地址傳送數(shù)據(jù)鏈路子層端到端數(shù)據(jù)。二、v5接口的實(shí)現(xiàn)筆者曾參與ids2000綜合數(shù)字通信系統(tǒng)(接入網(wǎng)側(cè))v5. 2接口的 開放研制工作。ids2000綜合數(shù)字通信系統(tǒng)是電力自動化研究院為了 滿足電力通信網(wǎng)發(fā)展的需要而開發(fā)的一種綜合接入設(shè)備。該設(shè)備具備 v5接口,使得ids2000系統(tǒng)可以很方便

7、地通過開放接口和大型交換設(shè) 備互連,取代了原先接入人型交換設(shè)備時所用的音頻z接口或?qū)S媒?口。v5接口協(xié)議分3層結(jié)構(gòu)。物理層和數(shù)據(jù)鏈路層部分功能市硬件 實(shí)現(xiàn),這在超大規(guī)模集成電路飛速發(fā)展的今天,難度已不是太大。 mitel公司生產(chǎn)的大規(guī)模e1接口芯片mt9075就是一種很合適的芯片 3o mt9075是一種單el接口,綜合了成幀器和liu。重要特性包括 數(shù)據(jù)鏈路接入、告警、屮斷、環(huán)冋和診斷,并內(nèi)嵌了兩個hdlc控制器 (mt8952),特別適用在v5接口 (封裝功能子層功能和hdlc協(xié)議類 似)ov5接口的第三層協(xié)議包含內(nèi)容較多,由軟件實(shí)現(xiàn)。本文主要結(jié) 合嵌入式系統(tǒng)編程來介紹v5接口的第三層軟

8、件結(jié)構(gòu),對于協(xié)議細(xì)節(jié) 的實(shí)現(xiàn)不多贅述。1實(shí)時多任務(wù)操作系統(tǒng)4目前,嵌入式應(yīng)用領(lǐng)域的一個發(fā)展傾向是采用實(shí)時多任務(wù)操作系 統(tǒng)rtos (realtimeoperatingsystem) 。 rtos的廣泛使用與應(yīng)用的復(fù) 雜化有關(guān)。過去1個單片機(jī)應(yīng)用程序所控制的外設(shè)和履行的任務(wù)不 多,采取1個主循環(huán)和幾個順序調(diào)用的子程序模塊即可滿足要求;但 現(xiàn)在1個嵌入式控制系統(tǒng)可能要同時控制/監(jiān)視很多外設(shè),要求實(shí)時 響應(yīng),有很多處理任務(wù),各個任務(wù)之間有很多信息傳遞,如果仍采用 原來的方法,存在兩個問題:一是中斷可能得不到及時響應(yīng),處理時 間過長;二是系統(tǒng)任務(wù)多,要考慮的各種可能也多,各種資源若調(diào)度 不當(dāng)就會造成死

9、鎖,降低軟件可靠性,程序編寫任務(wù)量成指數(shù)增加。 正是這種情況的出現(xiàn),推動著rtos的應(yīng)用迅速發(fā)展。對于v5接口,系統(tǒng)軟件工作量相當(dāng)大,包括5個核心協(xié)議功能 的處理,須管理很多是時器,有很多用戶端口需耍監(jiān)視,并且耍求實(shí) 吋處理,若采用傳統(tǒng)的軟件編程方法,很難實(shí)現(xiàn)。在ids2000系統(tǒng)中, 筆者采用vrtx實(shí)時多任務(wù)操作系統(tǒng)5作為開發(fā)平臺,大大減輕了軟 件的工作量,而采用面向?qū)ο蟮木幊谭椒ê褪录?qū)動的消息機(jī)制,使 得協(xié)議程序具有高可靠性、可控、可觀測、易于維護(hù)和管理。2.v5接口軟件框圖如圖3所示,v5接口軟件主要包払(1) 數(shù)據(jù)鏈路層模塊(僅包括數(shù)據(jù)鏈路子層功能,封裝功能子 層由硬件板完成);(

10、2) pstn協(xié)議處理模塊;(3) 控制協(xié)議處理模塊(包括用戶端口狀態(tài)機(jī)、指配控制狀態(tài) 機(jī)、公共控制狀態(tài)機(jī));(4) 鏈路控制協(xié)議處理模塊(包括鏈路控制狀態(tài)機(jī)、鏈路控制l3狀態(tài)機(jī));(5) bcc協(xié)議處理模塊;(6) 保護(hù)協(xié)議模塊;(7) v5接口an側(cè)系統(tǒng)管理模塊;(8) v5接口an側(cè)資源管理模塊;(9) 定時器管理模塊;(10) 消息處理模塊;(11) 用戶端口模塊;(12) 10ms定時中斷。上述模塊屮,模塊7完成v5接口協(xié)議的核心功能。其屮,數(shù) 據(jù)鏈路層模塊對模塊27所產(chǎn)生的消息進(jìn)行處理,交由v5硬件接口 板完成封裝功能,再發(fā)送給le側(cè)實(shí)體;pstn協(xié)議處理模塊主耍功能是 建立用戶端

11、口狀態(tài)和le側(cè)國內(nèi)協(xié)議實(shí)體之間的聯(lián)系;控制協(xié)議模塊用 于表示用戶端口狀態(tài)指示與控制,還和系統(tǒng)啟動、重新啟動、指配有 關(guān);v5接口an側(cè)系統(tǒng)管理模塊是協(xié)議功能正常實(shí)現(xiàn)的重要部分,在 an和le中,不同的fsm之間或第二層協(xié)議實(shí)體之間沒有直接的通信, 而是通過系統(tǒng)管理來協(xié)調(diào)v5接口各個協(xié)議實(shí)體之間的操作。另外, 系統(tǒng)管理負(fù)責(zé)從an或le的各種功能模塊中接收和處理有關(guān)狀態(tài)和故 障的信息。系統(tǒng)管理還是維護(hù)臺或網(wǎng)管系統(tǒng)與v5接口之間的橋梁, 它負(fù)責(zé)接收維護(hù)命令,并對v5接口執(zhí)行相應(yīng)的操作,隨時向上層網(wǎng) 管報告系統(tǒng)的運(yùn)行狀況。模塊曠12完成v5接口協(xié)議的輔助功能。其中用戶端口模塊負(fù)責(zé) 用戶端口狀態(tài)掃描與控

12、制,直接與硬件端口聯(lián)系;an側(cè)資源管理模塊 配合bcc協(xié)議處理模塊完成v5接口屮bcc協(xié)議功能;消息處理模塊是 為了減輕操作系統(tǒng)的負(fù)擔(dān)設(shè)立的,它負(fù)責(zé)協(xié)同操作系統(tǒng)管理各模塊的 消息隊列;定吋器管理模塊負(fù)責(zé)產(chǎn)牛:、管理系統(tǒng)中所需要的定吋器, 當(dāng)定時器溢出時,發(fā)送消息至相應(yīng)模塊;10ms定時中斷程序負(fù)責(zé)調(diào)度 系統(tǒng)中需周期性運(yùn)行的任務(wù),采用“信號量” (semaphores)的通信 機(jī)制完成。3. 有限狀態(tài)機(jī)在上述程序模塊中,存在大量的有限狀態(tài)機(jī)(fsm),如控制協(xié) 議屮的用戶端口fsm、公共控制fsm、bcc協(xié)議中的承載通路連接fsm 等。有限狀態(tài)機(jī)是描述通信協(xié)議過程的一般方式,是一種面向?qū)ο蟮?描

13、述方法,與具體實(shí)現(xiàn)程序無關(guān)。有限狀態(tài)機(jī)具有有限狀態(tài)集,在任 意給定的時刻,必有惟一確定的狀態(tài),在某狀態(tài)下必須依賴于外部輸 入的特定消息觸發(fā),才能引起狀態(tài)轉(zhuǎn)移或執(zhí)行某種任務(wù)。有限狀態(tài)機(jī)對于系統(tǒng)其他軟件而言相當(dāng)于一個“黑匣子”。它可 以接收有限的消息組,也可以發(fā)送特定的消息組,但其內(nèi)部結(jié)構(gòu)不為 系統(tǒng)其他部分所知。它的功能完全由它接收和發(fā)送消息順序所決定。有限狀態(tài)機(jī)的這種描述方式很適合用面向?qū)ο蟮姆椒▽?shí)現(xiàn)。在傳 統(tǒng)的實(shí)現(xiàn)方法中,狀態(tài)變量和狀態(tài)表可以在狀態(tài)機(jī)模塊外被訪問,易 于遭到破壞。面向?qū)ο蟮膶?shí)現(xiàn)方法提供了一種更加結(jié)構(gòu)化和更加直觀 的fsm實(shí)現(xiàn)方法,更利于“數(shù)據(jù)隱藏”,而且這些優(yōu)點(diǎn)隨著fsm規(guī)模的

14、 增大越發(fā)明顯。我們只須要定義一個fsm基類,利用封裝、繼承和多 態(tài)性的特點(diǎn),就很容易從先前定義的基類中派生出所需要的fsm,大 犬減少了軟件的工作量,軟件也易于維護(hù)。4. 定吋器的實(shí)現(xiàn)機(jī)制定時器對丁正確實(shí)現(xiàn)通信協(xié)議功能有著很重耍的作用。v5接口 協(xié)議中存在大量的定時器,當(dāng)話務(wù)量較大時,可能有數(shù)百個定時器同 時運(yùn)行。定時器的設(shè)計是正確完成v5接口協(xié)議功能的一個重要部分。本系統(tǒng)中由定時器管理進(jìn)程負(fù)責(zé)管理v5接口中所有的定時器。 由于各種定時器所要求的精度各不相同,所選擇時間的長度對各定時 器進(jìn)行監(jiān)視和計數(shù)累計是問題的關(guān)鍵:時間間隔太小,影響系統(tǒng)運(yùn)行 效率;吋間間隔太長,影響定吋器的精度。為了解決

15、這個問題,系統(tǒng) 中設(shè)定了三種不同分辨率的定時器:10ms、100ms和is (分辨率指計 數(shù)時間間隔)。若某應(yīng)用進(jìn)程須要使用定時器,首先要向定時器管理進(jìn)程發(fā)送一 消息,消息中應(yīng)包含申請定時器的分辨率、預(yù)置計數(shù)值、溢出后應(yīng)發(fā) 送的消息等信息。定時器管理進(jìn)程收到該消息后,根據(jù)定吋器的分辨 率將其放到合適的定時隊列中,啟動定時。若立時器計數(shù)為零,貝表 示該定時器溢出,定時器管理進(jìn)程應(yīng)向相應(yīng)的應(yīng)用進(jìn)程發(fā)送溢出消 息,同時應(yīng)釋放該定時器。應(yīng)用進(jìn)程若主動要求放棄一定時器,則應(yīng) 向定時器管理進(jìn)程發(fā)送一釋放定時器消息。消息中應(yīng)包含所申請定時 器的標(biāo)號、分辨率以及溢岀目標(biāo)進(jìn)程、目標(biāo)對象等。定吋器管理進(jìn)程 接收到

16、此消息后,在合適的定時器隊列中尋找到該定時器后,將其釋 放。定時器管理進(jìn)程管理其他齊應(yīng)用進(jìn)程所申請的定時器。在定時器 管理進(jìn)程中,有三個鏈表分別用于存放這3種不同分辨率的定時器。定時器管理進(jìn)程完成以下一些基本功能:(1) 管理10ms、100ms和is三種定時器鏈表。(2) 當(dāng)10ms定時間隔到,應(yīng)遍歷10ms定時器鏈表,完成對鏈表 屮各定時器的計數(shù)處理。若有定時器溢出,則向相應(yīng)的進(jìn)程發(fā)送溢出 消息,并從定時器鏈表中釋放該定時器。同樣,當(dāng)100ms或is的定時 間隔到時,也應(yīng)對100ms或is定時器鏈表作相同處理。(3) 處理從其他進(jìn)程接收到的消息。當(dāng)收到從其他進(jìn)程發(fā)送的 申請定吋器的消息吋,

17、應(yīng)在相應(yīng)分辨率的定吋器鏈表中插入所申請的 定時器;在接收到從其他進(jìn)程來的釋放定時器的消息后,應(yīng)尋找到該 定時器,并將其釋放。5. 編寫可重入函數(shù)v5接口中有大量的函數(shù)需要編寫。和傳統(tǒng)的編程環(huán)境不同,本 系統(tǒng)中,v5接口軟件運(yùn)行在多任務(wù)環(huán)境上,函數(shù)的可重入性(reentrancy)顯得很重要。所謂可重入函數(shù)是指一個可以被多個任務(wù)調(diào)用的過程,任務(wù)在調(diào) 用時不必?fù)?dān)心數(shù)據(jù)是否會出錯。在編寫函數(shù)時應(yīng)盡量只使用局部變 量,對于要使用的全局變量需要加以保護(hù)(如釆用關(guān)中斷、信號量等 措施),這樣構(gòu)成的函數(shù)一定是可重入的;而編譯器是否具有可重入 的庫,與它所服務(wù)的操作系統(tǒng)有關(guān),如dos下的borlandc和 microsoftc/c+等就沒有可重入函數(shù)庫,這是因?yàn)閐os是一個單用戶、 單任務(wù)的操作系統(tǒng)。為了確保每一個調(diào)用函數(shù)的任務(wù)控制自己私有變量,在一個可重 入的c函數(shù)中,將這樣的變量申明為局部變量,c編譯器將這樣的變量 存放在調(diào)用棧上或寄存器里。在vrtx操作系統(tǒng)下編寫叮重入的函數(shù), 須要遵循以下原則:(1) 將所有局部變量申明為auto或寄存器(register)類型;(2) 盡量不要使用static或extern變量,不可避免使用全局變量 時,需加以保護(hù);(3)用vrtx庫函數(shù)sc_gblock分配大的數(shù)據(jù)

溫馨提示

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

評論

0/150

提交評論