<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于VRTX操作系統(tǒng)實(shí)現(xiàn)V5接口協(xié)議

          基于VRTX操作系統(tǒng)實(shí)現(xiàn)V5接口協(xié)議

          作者: 時(shí)間:2004-12-07 來源:網(wǎng)絡(luò) 收藏
          摘要:是接入網(wǎng)(AN)和本地交換機(jī)(LE)之間標(biāo)準(zhǔn)化的開放。本文首先簡要介紹結(jié)構(gòu),然后給出IDS2000綜合數(shù)字通信系統(tǒng)中接口的方法;著重介紹第三層的軟件方法,并對(duì)嵌入式系統(tǒng)編程進(jìn)行一些探討。

          關(guān)鍵詞:接入網(wǎng) V5接口 實(shí)時(shí) 本地交換機(jī)

          引言

            接入網(wǎng)的概念是由傳統(tǒng)的用戶線發(fā)展起來的。近年來,由于電話業(yè)務(wù)的發(fā)展、新業(yè)務(wù)種類的增多、對(duì)線路帶寬要求的提高以及各種新興技術(shù)(特別是光纖通信技術(shù))的發(fā)展,使得傳統(tǒng)的用戶線的概念逐漸發(fā)展成為接入網(wǎng)的概念。前幾年,國際電信聯(lián)盟(ITU)正式定義了用戶接入網(wǎng)。引入接入網(wǎng)后,現(xiàn)有的電信網(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)化的V5.1和V5.2接口的建議[1,2]。

            V5接口是一種在接入網(wǎng)中適用范圍廣、標(biāo)準(zhǔn)化程度高的新型開放的數(shù)字接口,對(duì)于設(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ī)和接入網(wǎng)的技術(shù)和業(yè)務(wù)演進(jìn)完全獨(dú)立開來。接入網(wǎng)的發(fā)展可以不受交換機(jī)的限制,使得接入網(wǎng)市場完全開放。

          一、V5接口結(jié)構(gòu)

            窄帶V5接口包括V5.1和V5.2接口。V5.1接口由1條2048Kb/s鏈路構(gòu)成,通過時(shí)隙傳遞公共控制信號(hào),支持模擬電話接入,64Kb/s的綜合業(yè)務(wù)數(shù)字網(wǎng)基本接入(2B+D)和用于半永久連接的、不加帶外信令信息的其他模擬接入和數(shù)字接入。這些接入類型都具有指配的承載通路分配,即用戶端口與V5.1接口內(nèi)承載通路有固定的對(duì)應(yīng)關(guān)系。V5.2接口按需要可以由1~16個(gè)2048Kb/s鏈路構(gòu)成,除支持V5.1接口的業(yè)務(wù)外,還支持ISDN PRI(30B+D)接入,其呼叫的時(shí)隙分配使得V5.2接口具有集中功能。V5.1接口是V5.2接口的子集,V5.1接口應(yīng)當(dāng)能夠升級(jí)到V5.2接口。

            V5接口協(xié)議由3層組成,接入網(wǎng)側(cè)和本地交換機(jī)側(cè)呈不對(duì)稱布置,層與層之間的信息傳遞采用原語,而同層子層間的信息傳遞則采用映射。

            V5接口物理層由1~16條2048Kb/s的鏈路構(gòu)成,電氣和物理特性符合G.703建議,幀結(jié)構(gòu)符合G.704/G.706建議。每幀由32個(gè)時(shí)隙組成,其中:時(shí)隙TS0用作幀定位和CRC-4規(guī)程;時(shí)隙TS15、TS16和TS31可以用作通信通路(C通路),運(yùn)載信令信息和控制信息,通過指配來分配;其余時(shí)隙可用作承載通路。

            V5接口的數(shù)據(jù)鏈路層僅對(duì)于C通路而言。第二層協(xié)議(LAPV5)規(guī)范以建議Q.921中規(guī)定的LAPD協(xié)議和規(guī)程為基礎(chǔ),允許將不同的信息流靈活地復(fù)用到C通路上去。第二層協(xié)議分為兩個(gè)子層:封裝功能子層(LAPV5-EF)和數(shù)據(jù)鏈路子層(LAPV5-DL)。此外,第二層功能中還應(yīng)包括幀中繼功能(AN-FR)。

            V5接口的第三層協(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è)的鏈路阻塞、鏈路解除阻塞和鏈路標(biāo)識(shí)功能;BCC協(xié)議用來把一特定2048Kb/s鏈路上的承載通路呼叫分配給用戶端口;保護(hù)協(xié)議提供V5.2接口在出現(xiàn)故障時(shí)通信路徑切換的保護(hù)功能。

            如圖2所示,當(dāng)?shù)谌龑訁f(xié)議有信令信息需要發(fā)送時(shí),通過數(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)是電力自動(dòng)化研究院為了滿足電力通信網(wǎng)發(fā)展的需要而開發(fā)的一種綜合接入設(shè)備。該設(shè)備具備V5接口,使得IDS2000系統(tǒng)可以很方便地通過開放接口和大型交換設(shè)備互連,取代了原先接入大型交換設(shè)備時(shí)所用的音頻Z接口或?qū)S媒涌凇?/P>

          V5接口協(xié)議分3層結(jié)構(gòu)。物理層和數(shù)據(jù)鏈路層部分功能由硬件實(shí)現(xiàn),這在超大規(guī)模集成電路飛速發(fā)展的今天,難度已不是太大。Mitel公司生產(chǎn)的大規(guī)模E1接口芯片MT9075就是一種很合適的芯片[3]。MT9075是一種單E1接口,綜合了成幀器和LIU。重要特性包括數(shù)據(jù)鏈路接入、告警、中斷、環(huán)回和診斷,并內(nèi)嵌了兩個(gè)HDLC控制器(MT8952),特別適用在V5接口(封裝功能子層功能和HDLC協(xié)議類似)。

            V5接口的第三層協(xié)議包含內(nèi)容較多,由軟件實(shí)現(xiàn)。本文主要結(jié)合嵌入式系統(tǒng)編程來介紹V5接口的第三層軟件結(jié)構(gòu),對(duì)于協(xié)議細(xì)節(jié)的實(shí)現(xiàn)不多贅述。

          1.實(shí)時(shí)多任務(wù)[4]

            目前,嵌入式應(yīng)用領(lǐng)域的一個(gè)發(fā)展傾向是采用實(shí)時(shí)多任務(wù)RTOS(Real Time Operating System)。RTOS的廣泛使用與應(yīng)用的復(fù)雜化有關(guān)。過去1個(gè)單片機(jī)應(yīng)用程序所控制的外設(shè)和履行的任務(wù)不多,采取1個(gè)主循環(huán)和幾個(gè)順序調(diào)用的子程序模塊即可滿足要求;但現(xiàn)在1個(gè)嵌入式控制系統(tǒng)可能要同時(shí)控制/監(jiān)視很多外設(shè),要求實(shí)時(shí)響應(yīng),有很多處理任務(wù),各個(gè)任務(wù)之間有很多信息傳遞,如果仍采用原來的方法,存在兩個(gè)問題:一是中斷可能得不到及時(shí)響應(yīng),處理時(shí)間過長;二是系統(tǒng)任務(wù)多,要考慮的各種可能也多,各種資源若調(diào)度不當(dāng)就會(huì)造成死鎖,降低軟件可靠性,程序編寫任務(wù)量成指數(shù)增加。正是這種情況的出現(xiàn),推動(dòng)著RTOS的應(yīng)用迅速發(fā)展。

            對(duì)于V5接口,系統(tǒng)軟件工作量相當(dāng)大,包括5個(gè)核心協(xié)議功能的處理,須管理很多定時(shí)器,有很多用戶端口需要監(jiān)視,并且要求實(shí)時(shí)處理,若采用傳統(tǒng)的軟件編程方法,很難實(shí)現(xiàn)。在IDS2000系統(tǒng)中,筆者采用實(shí)時(shí)多任務(wù)操作系統(tǒng)[5]作為開發(fā)平臺(tái),大大減輕了軟件的工作量,而采用面向?qū)ο蟮木幊谭椒ê褪录?qū)動(dòng)的消息機(jī)制,使得協(xié)議程序具有高可靠性、可控、可觀測、易于維護(hù)和管理。

          2.V5接口軟件框圖

          如圖3所示,V5接口軟件主要包括:

          (1) 數(shù)據(jù)鏈路層模塊(僅包括數(shù)據(jù)鏈路子層功能,封裝功能子層由硬件板完成);

          (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) 定時(shí)器管理模塊;

          (10) 消息處理模塊;

          (11) 用戶端口模塊;

          (12) 10ms定時(shí)中斷。

            上述模塊中,模塊1~7完成V5接口協(xié)議的核心功能。其中,數(shù)據(jù)鏈路層模塊對(duì)模塊2~7所產(chǎn)生的消息進(jìn)行處理,交由V5硬件接口板完成封裝功能,再發(fā)送給LE側(cè)實(shí)體;PSTN協(xié)議處理模塊主要功能是建立用戶端口狀態(tài)和LE側(cè)國內(nèi)協(xié)議實(shí)體之間的聯(lián)系;控制協(xié)議模塊用于表示用戶端口狀態(tài)指示與控制,還和系統(tǒng)啟動(dòng)、重新啟動(dòng)、指配有關(guān);V5接口AN側(cè)系統(tǒng)管理模塊是協(xié)議功能正常實(shí)現(xiàn)的重要部分,在AN和LE中,不同的FSM之間或第二層協(xié)議實(shí)體之間沒有直接的通信,而是通過系統(tǒng)管理來協(xié)調(diào)V5接口各個(gè)協(xié)議實(shí)體之間的操作。另外,系統(tǒng)管理負(fù)責(zé)從AN或LE的各種功能模塊中接收和處理有關(guān)狀態(tài)和故障的信息。系統(tǒng)管理還是維護(hù)臺(tái)或網(wǎng)管系統(tǒng)與V5接口之間的橋梁,它負(fù)責(zé)接收維護(hù)命令,并對(duì)V5接口執(zhí)行相應(yīng)的操作,隨時(shí)向上層網(wǎng)管報(bào)告系統(tǒng)的運(yùn)行狀況。

            模塊8~12完成V5接口協(xié)議的輔助功能。其中用戶端口模塊負(fù)責(zé)用戶端口狀態(tài)掃描與控制,直接與硬件端口聯(lián)系;AN側(cè)資源管理模塊配合BCC協(xié)議處理模塊完成V5接口中BCC協(xié)議功能;消息處理模塊是為了減輕操作系統(tǒng)的負(fù)擔(dān)設(shè)立的,它負(fù)責(zé)協(xié)同操作系統(tǒng)管理各模塊的消息隊(duì)列;定時(shí)器管理模塊負(fù)責(zé)產(chǎn)生、管理系統(tǒng)中所需要的定時(shí)器,當(dāng)定時(shí)器溢出時(shí),發(fā)送消息至相應(yīng)模塊;10ms定時(shí)中斷程序負(fù)責(zé)調(diào)度系統(tǒng)中需周期性運(yùn)行的任務(wù),采用“信號(hào)量”(semaphores)的通信機(jī)制完成。

          3.有限狀態(tài)機(jī)

            在上述程序模塊中,存在大量的有限狀態(tài)機(jī)(FSM),如控制協(xié)議中的用戶端口FSM、公共控制FSM、BCC協(xié)議中的承載通路連接FSM等。有限狀態(tài)機(jī)是描述通信協(xié)議過程的一般方式,是一種面向?qū)ο蟮拿枋龇椒?,與具體實(shí)現(xiàn)程序無關(guān)。有限狀態(tài)機(jī)具有有限狀態(tài)集,在任意給定的時(shí)刻,必有惟一確定的狀態(tài),在某狀態(tài)下必須依賴于外部輸入的特定消息觸發(fā),才能引起狀態(tài)轉(zhuǎn)移或執(zhí)行某種任務(wù)。

            有限狀態(tài)機(jī)對(duì)于系統(tǒng)其他軟件而言相當(dāng)于一個(gè)“黑匣子”。它可以接收有限的消息組,也可以發(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ī)模的增大越發(fā)明顯。我們只須要定義一個(gè)FSM基類,利用封裝、繼承和多態(tài)性的特點(diǎn),就很容易從先前定義的基類中派生出所需要的FSM,大大減少了軟件的工作量,軟件也易于維護(hù)。

          4.定時(shí)器的實(shí)現(xiàn)機(jī)制

            定時(shí)器對(duì)于正確實(shí)現(xiàn)通信協(xié)議功能有著很重要的作用。V5接口協(xié)議中存在大量的定時(shí)器,當(dāng)話務(wù)量較大時(shí),可能有數(shù)百個(gè)定時(shí)器同時(shí)運(yùn)行。定時(shí)器的設(shè)計(jì)是正確完成V5接口協(xié)議功能的一個(gè)重要部分。

            本系統(tǒng)中由定時(shí)器管理進(jìn)程負(fù)責(zé)管理V5接口中所有的定時(shí)器。由于各種定時(shí)器所要求的精度各不相同,所選擇時(shí)間的長度對(duì)各定時(shí)器進(jìn)行監(jiān)視和計(jì)數(shù)累計(jì)是問題的關(guān)鍵:時(shí)間間隔太小,影響系統(tǒng)運(yùn)行效率;時(shí)間間隔太長,影響定時(shí)器的精度。為了解決這個(gè)問題,系統(tǒng)中設(shè)定了三種不同分辨率的定時(shí)器:10ms、100ms和1s(分辨率指計(jì)數(shù)時(shí)間間隔)。

            若某應(yīng)用進(jìn)程須要使用定時(shí)器,首先要向定時(shí)器管理進(jìn)程發(fā)送一消息,消息中應(yīng)包含申請定時(shí)器的分辨率、預(yù)置計(jì)數(shù)值、溢出后應(yīng)發(fā)送的消息等信息。定時(shí)器管理進(jìn)程收到該消息后,根據(jù)定時(shí)器的分辨率將其放到合適的定時(shí)隊(duì)列中,啟動(dòng)定時(shí)。若定時(shí)器計(jì)數(shù)為零,則表示該定時(shí)器溢出,定時(shí)器管理進(jìn)程應(yīng)向相應(yīng)的應(yīng)用進(jìn)程發(fā)送溢出消息,同時(shí)應(yīng)釋放該定時(shí)器。應(yīng)用進(jìn)程若主動(dòng)要求放棄一定時(shí)器,則應(yīng)向定時(shí)器管理進(jìn)程發(fā)送一釋放定時(shí)器消息。消息中應(yīng)包含所申請定時(shí)器的標(biāo)號(hào)、分辨率以及溢出目標(biāo)進(jìn)程、目標(biāo)對(duì)象等。定時(shí)器管理進(jìn)程接收到此消息后,在合適的定時(shí)器隊(duì)列中尋找到該定時(shí)器后,將其釋放。 定時(shí)器管理進(jìn)程管理其他各應(yīng)用進(jìn)程所申請的定時(shí)器。在定時(shí)器管理進(jìn)程中,有三個(gè)鏈表分別用于存放這3種不同分辨率的定時(shí)器。

          定時(shí)器管理進(jìn)程完成以下一些基本功能:

          (1)管理10ms、100ms和1s三種定時(shí)器鏈表。

          (2)當(dāng)10ms定時(shí)間隔到,應(yīng)遍歷10ms定時(shí)器鏈表,完成對(duì)鏈表中各定時(shí)器的計(jì)數(shù)處理。若有定時(shí)器溢出,則向相應(yīng)的進(jìn)程發(fā)送溢出消息,并從定時(shí)器鏈表中釋放該定時(shí)器。同樣,當(dāng)100ms或1s的定時(shí)間隔到時(shí),也應(yīng)對(duì)100ms或1s定時(shí)器鏈表作相同處理。

          (3)處理從其他進(jìn)程接收到的消息。當(dāng)收到從其他進(jìn)程發(fā)送的申請定時(shí)器的消息時(shí),應(yīng)在相應(yīng)分辨率的定時(shí)器鏈表中插入所申請的定時(shí)器;在接收到從其他進(jìn)程來的釋放定時(shí)器的消息后,應(yīng)尋找到該定時(shí)器,并將其釋放。

          5.編寫可重入函數(shù)

            V5接口中有大量的函數(shù)需要編寫。和傳統(tǒng)的編程環(huán)境不同,本系統(tǒng)中,V5接口軟件運(yùn)行在多任務(wù)環(huán)境上,函數(shù)的可重入性(reentrancy)顯得很重要。

            所謂可重入函數(shù)是指一個(gè)可以被多個(gè)任務(wù)調(diào)用的過程,任務(wù)在調(diào)用時(shí)不必?fù)?dān)心數(shù)據(jù)是否會(huì)出錯(cuò)。在編寫函數(shù)時(shí)應(yīng)盡量只使用局部變量,對(duì)于要使用的全局變量需要加以保護(hù)(如采用關(guān)中斷、信號(hào)量等措施),這樣構(gòu)成的函數(shù)一定是可重入的;而編譯器是否具有可重入的庫,與它所服務(wù)的操作系統(tǒng)有關(guān),如DOS下的Borland C和Microsoft C/C++等就沒有可重入函數(shù)庫,這是因?yàn)镈OS是一個(gè)單用戶、單任務(wù)的操作系統(tǒng)。

            為了確保每一個(gè)調(diào)用函數(shù)的任務(wù)控制自己私有變量,在一個(gè)可重入的C函數(shù)中,將這樣的變量申明為局部變量,C編譯器將這樣的變量存放在調(diào)用棧上或寄存器里。在操作系統(tǒng)下編寫可重入的函數(shù),須要遵循以下原則:

          (1)將所有局部變量申明為auto或寄存器(register)類型;

          (2)盡量不要使用static或extern變量,不可避免使用全局變量時(shí),需加以保護(hù);

          (3)用庫函數(shù)sc_gblock分配大的數(shù)據(jù)結(jié)構(gòu)。

          三、V5接口發(fā)展的趨勢

            從長遠(yuǎn)看,為了克服現(xiàn)有一系列SNI(業(yè)務(wù)節(jié)點(diǎn)接口)功能的限制,須要開發(fā)附加的SNI,特別是模塊型和B-ISDN接入型SNI。目前,以ATM為基礎(chǔ)的VB5接口的標(biāo)準(zhǔn)化工作正在進(jìn)行。VB5參考點(diǎn)可分為VB5.1和VB5.2兩種形式。

            ITU-T已經(jīng)通過了關(guān)于VB5參考點(diǎn)的建議,規(guī)定了VB5既支持AN與SN的直接連接,又支持 兩者的遠(yuǎn)程連接;既支持基于ATM的B-ISDN接入,又支持各種非ATM的接入。此外,VB5還應(yīng)支持接入各種SN的接入功能,并能同時(shí)連接到多個(gè)不同的SN。有關(guān)VB5的技術(shù)框架還有待進(jìn)一步研究和開發(fā)。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          c++相關(guān)文章:c++教程




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();