數(shù)字無中心系統(tǒng)呼叫控制協(xié)議的設(shè)計和實現(xiàn)
無中心移動通信系統(tǒng)是我國專業(yè)移動通信系統(tǒng)的重要組成部分。它使用單工對講方式工作,工作頻率在915.012 5~916.087 5 MHz之間。該系統(tǒng)具有無中心組網(wǎng)、數(shù)字選呼、自動接續(xù)、多址用戶多信道共用、鏈路分散控制等諸多技術(shù)特點,擁有廣闊的實際應(yīng)用前景和深入開發(fā)潛力。該系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示。目前我國的900 MHz無中心移動通信系統(tǒng)尚處在以模擬話音加數(shù)字信令為主導(dǎo)技術(shù)的模擬階段。針對無中心呼叫控制協(xié)議的數(shù)字化研究尚處于空白。
無中心系統(tǒng)的數(shù)字化是將語音和控制信令進(jìn)行數(shù)字化編碼,以二進(jìn)制碼流形式傳播。本系統(tǒng)平臺使用CML公司MX618芯片進(jìn)行語音編碼,MX7041芯片對語音和信令進(jìn)行4FSK基帶調(diào)制,ARM7處理器作為系統(tǒng)的運算控制核心。在此開發(fā)環(huán)境下,本文以數(shù)字無中心呼叫控制層協(xié)議為研究對象,提出并設(shè)計了一套基于無中心體制的呼叫控制協(xié)議數(shù)字化解決方案。該方案已應(yīng)用于數(shù)字無中心對講機(jī)的嵌入式系統(tǒng)開發(fā)中。
1 數(shù)字無中心呼叫控制協(xié)議概述
ETSITS 102490-DPMR標(biāo)準(zhǔn)描述了無中心系統(tǒng)的協(xié)議分層結(jié)構(gòu),如圖2所示。呼叫控制協(xié)議處于無中心系統(tǒng)協(xié)議棧第三層,位于數(shù)據(jù)鏈路層之上,應(yīng)用層之下,是無中心系統(tǒng)的控制核心。
它為整個系統(tǒng)提供基本通話的建立、保持、拆線;點對點通話以及組呼;通話對象的選擇;遲后進(jìn)入、呼叫轉(zhuǎn)移等功能的支持。同時為承載數(shù)據(jù)、語音業(yè)務(wù)的數(shù)據(jù)鏈路層以及實施具體功能的應(yīng)用層提供接口,并且需要提供完備的上下層通用接口為將來的協(xié)議升級預(yù)留空間。
呼叫控制協(xié)議的設(shè)計包括呼叫控制流程、呼叫控制信令的設(shè)計以及后期的程序?qū)崿F(xiàn)編碼,繼而形成獨立的呼叫控制協(xié)議功能模塊。
2 呼叫控制流程的設(shè)計
按照數(shù)字無中心對講機(jī)的工作原理,設(shè)計了一套符合實際應(yīng)用的呼叫控制流程。呼叫控制流程描述了通信終端從通話建立到通話終結(jié)過程中產(chǎn)生的一系列動作和事件。
處于待機(jī)狀態(tài)的移動臺A和移動臺B在控制信道守候。當(dāng)移動臺A按呼叫鍵呼叫移動臺B,A在控制信道廣播發(fā)送針對B的呼叫建立請求信令,并轉(zhuǎn)到選擇的通話信道接收。B收到呼叫建立請求信令后若同意建立連接則轉(zhuǎn)到信令中標(biāo)識的通話信道,同時在此通話信道向A發(fā)送確認(rèn)信令。A接收到確認(rèn)信令后,雙方都進(jìn)入可通話狀態(tài)。若A按下PTT會向B發(fā)送語音頭幀+語音幀。
松開PTT后,發(fā)送尾幀表示此次A方的通話結(jié)束。B此時進(jìn)行語音幀的接收直至收到尾幀,A,B都進(jìn)入可通話狀態(tài)。之后雙方重復(fù)如上過程進(jìn)行通話。一旦A按下拆線鍵,就會向B發(fā)送拆線信令,雙方回到待機(jī)狀態(tài)。此流程如圖3所示。
3 呼叫控制協(xié)議的設(shè)計和實現(xiàn)
呼叫控制信令和隨路信令分別在控制信道和通話信道進(jìn)行傳輸。根據(jù)無中心多信道選址移動通信系統(tǒng)體制,控制信令傳輸通道(控制信道)與通話信道完全分開,它整合若干條通話線路的控制信令,獨占一條公共的控制信道進(jìn)行傳送控制信令。
3.1 信道
控制信道控制信道主要用于廣播傳輸呼叫建立信令以及作為其他用途的信令的發(fā)送通道??刂菩诺赖姆?wù)體制采用順序等待制原則,待前一條信令在控制信道中傳送完成后,接續(xù)的信令才能正常傳送。否則,進(jìn)行等待直到判斷出控制信道空閑。
通話信道通話信道負(fù)責(zé)傳送呼叫建立后雙方的語音、數(shù)據(jù),同時通話信道也用于傳輸隨路信令。隨路信令包括了通話過程中一系列必要的控制信令。通話信道的服務(wù)體制采用呼損制原則,兩臺終端設(shè)備建立連接并占用一條通話信道后,此信道不能再被其他終端使用,直到終端拆線并釋放次通話信道。
如圖4所示,頻率為915.012 5 MHz的控制信道只用于通信雙方傳輸呼叫建立信令,通話信道則可以傳輸拆線信令、應(yīng)答信令等隨路信令。移動臺在兩種信道間轉(zhuǎn)換,通話時守候在通話信道,通話結(jié)束或待機(jī)時返回控制信道。
無中心多信道選址移動通信系統(tǒng)的信道間隔為12.5 kHz時,系統(tǒng)共有158個信道。其中第一個信道915.012 5 MHz為控制信道,所有的呼叫信令都在該信道發(fā)出,其余157個為通話信道。呼叫控制的流程由控制信道和通話信道中控制信令的傳輸而貫通。由此,如何制定控制信令,如何處理通話信令流程中的所有狀態(tài)轉(zhuǎn)移事件便成為呼叫控制協(xié)議設(shè)計的主要內(nèi)容。
3.2 無中心呼叫控制信令的設(shè)計
呼叫控制信令是無中心系統(tǒng)中各種狀態(tài)轉(zhuǎn)換的控制信號,傳遞系統(tǒng)消息和命令。呼叫控制信令按照功能分為呼叫建立請求信令、呼叫應(yīng)答信令、拆線信令、語音始發(fā)信令、語音終結(jié)信令。
3.2.1 控制信令的幀結(jié)構(gòu)
無中心系統(tǒng)基本的數(shù)據(jù)傳輸單位是幀。呼叫控制信令由兩種幀結(jié)構(gòu)構(gòu)成,頭幀和尾幀。
頭幀中包含了信令中大部分的控制信息,其幀結(jié)構(gòu)如下:
前導(dǎo)碼:用于接收機(jī)的同步。
幀同步:頭幀的識別和同步。
頭幀類型:4 b,標(biāo)識頭幀類型,是頭幀的主要標(biāo)識,也是信令的主要標(biāo)識,其取值為:0000通話起始信令;0001呼叫建立請求信令;0010拆線請求信令;0011ACK信令;0100禁發(fā)和還原信令;0101禁收發(fā)信令。
接收方ID:被叫方移動臺ID號,通過空中接口對7位數(shù)字呼號編碼得到。
發(fā)送方ID:主叫方移動臺ID號,通過空中接口對7位數(shù)字呼號編碼得到。
通信模式:用于區(qū)別語音通信或者數(shù)據(jù)傳輸。
通信格式:用于區(qū)別全呼通信、點對點通信。
呼叫信息:11 b,用于區(qū)別單呼、組呼以及ACK信令的定義。
尾幀補(bǔ)充在頭幀之后構(gòu)成完整的信令或單獨構(gòu)成通信結(jié)束的信令,其幀結(jié)構(gòu)如下:
尾幀同步碼:4 b,用于尾幀的發(fā)現(xiàn)和同步,固定為7D DF F5。
尾幀類型:2 b,尾幀的主要標(biāo)識。00表示普通尾幀;01表示帶有狀態(tài)信息的尾幀。
ACK請求:2 b,標(biāo)識是否需要被呼方發(fā)送ACK信號。
Tx等待:4 b,標(biāo)識是否需要一段時間來強(qiáng)制讓收到該尾幀的用戶的PTT失效,以便允許用戶發(fā)送插入請求。
狀態(tài)信息:5 b,用戶根據(jù)需要自己定義,共32種狀態(tài)信息。
3.2.2 呼叫控制信令的內(nèi)容
呼叫建立請求信令是用戶發(fā)起呼叫時向被叫方以廣播方式發(fā)送的控制信息。該信令的組成為:頭幀(建立請求)+尾幀。
呼叫應(yīng)答信令是被叫方接收到呼叫建立請求信令后,向主叫方發(fā)送的反饋控制信息。該信令結(jié)構(gòu)為:頭幀(ACK)。
語音始發(fā)信令先于語音傳送,用于標(biāo)識實際語音即將到來,它的結(jié)構(gòu)為:頭幀(通信起始)。
語音終結(jié)信令表示語音傳輸告一段落,它的位置在語音數(shù)據(jù)塊之后。語音終結(jié)信令結(jié)構(gòu)為:尾幀(通信結(jié)束)。
拆線信令是當(dāng)通信一方希望結(jié)束通話時所發(fā)送的通話結(jié)束信號,用于告知對方通話即將結(jié)束。拆線信令結(jié)構(gòu)為:頭幀(拆線)+尾幀+頭幀(拆線)+尾幀。
3.3 應(yīng)用狀態(tài)機(jī)實現(xiàn)呼叫控制協(xié)議
數(shù)字無中心呼叫控制協(xié)議利用有限狀態(tài)機(jī)的設(shè)計方案進(jìn)行描述和實現(xiàn)。有限狀態(tài)機(jī)克服了純硬件數(shù)字系統(tǒng)順序控制方式不靈活的缺點,它能夠架構(gòu)性能良好的時序邏輯模塊,以事件驅(qū)動的簡易方式來解決復(fù)雜的程序流程問題。其可靠性優(yōu)勢明顯,是目前嵌入式領(lǐng)域控制程序的通用解決方式。
通信流程中狀態(tài)的設(shè)計是呼叫控制層協(xié)議實現(xiàn)的關(guān)鍵。完整而合理的狀態(tài)轉(zhuǎn)移過程也是程序?qū)崿F(xiàn)的重要前提。呼叫控制層狀態(tài)應(yīng)包括呼叫控制流程周期中的每個典型狀況。并且狀態(tài)之間應(yīng)該可以轉(zhuǎn)換,不應(yīng)該存在不能達(dá)到的狀態(tài)或不能進(jìn)入再次過程的死狀態(tài),同時對于要描述的特性沒有意義的多余狀態(tài)也應(yīng)該避免。
3.3.1 用戶A與B通信流程狀態(tài)事件機(jī)
根據(jù)呼叫控制流程和呼叫控制信令的特點以及無中心體制的技術(shù)規(guī)范,呼叫控制狀態(tài)機(jī)中共設(shè)計了S0~S4共5個狀態(tài)。S0(待機(jī)狀態(tài))表示移動終端空閑時的默認(rèn)狀態(tài);S1(發(fā)起呼叫中狀態(tài))為呼叫發(fā)起方撥號后的呼叫等待狀態(tài),S1被叫進(jìn)行中的狀態(tài)為被叫方接收到呼叫建立請求后的判斷等待狀態(tài);S2(呼叫已建立狀態(tài))表示呼叫已建立成功,正在等待下一步進(jìn)行通話;S3(發(fā)話中狀態(tài))為用戶按下對講機(jī)PTT鍵后傳送通話語音的狀態(tài);S4(收話中狀態(tài))為用戶正在收聽對方通話語音的狀態(tài)。通話結(jié)束后雙方返回到S0(待機(jī)狀態(tài))。該狀態(tài)機(jī)考慮了呼叫控制實際應(yīng)用中的技術(shù)細(xì)節(jié),實現(xiàn)了每一個狀態(tài)在各種動作、事件激勵下的可預(yù)期性轉(zhuǎn)移。狀態(tài)機(jī)的具體內(nèi)容如圖5,圖6所示(注:復(fù)位拆線后各狀態(tài)均轉(zhuǎn)換到待機(jī)狀態(tài))。
3.3.2 呼叫控制程序的實現(xiàn)
呼叫控制程序應(yīng)用嵌入式C語言在ARM7處理器中開發(fā)。設(shè)變量ccl_state存儲當(dāng)前狀態(tài)的代碼,next_state存儲下一狀態(tài)代碼,利用Switch_Case語句以及對事件判斷的if條件語句即可實現(xiàn)復(fù)雜的多條件、多分支的呼叫控制狀態(tài)機(jī)。
在程序的設(shè)計過程中加入了ARM定時器。定時器在嵌入式系統(tǒng)中起著十分關(guān)鍵的作用。為節(jié)省頻率資源無中心體制加入了通話限時功能,在通話限時開始后,需要啟動定時器計時。定時器到時后產(chǎn)生IRQ中斷,執(zhí)行終止通話操作。為增加程序的可靠性,防止死狀態(tài)的產(chǎn)生,在程序中也要加入對定時器超時事件的判斷動作。各狀態(tài)(除待機(jī)狀態(tài))一旦處于等待下一步動作的狀態(tài)時,需要立即啟動定時器進(jìn)行超時判斷。例如,呼叫建立時通過定時器檢測對方應(yīng)答時間,超時則返回S0待機(jī)狀態(tài)。
4 呼叫控制協(xié)議的可行性和可靠性分析
呼叫控制流程、呼叫控制信令結(jié)構(gòu)、呼叫控制的狀態(tài)機(jī)三部分密不可分,構(gòu)成了實現(xiàn)呼叫控制協(xié)議的基本要素。呼叫流程的設(shè)計考慮了無中心體制以及傳統(tǒng)對講機(jī)工作流程。
呼叫控制信令借鑒了ETSI TS 102 490-DPMR標(biāo)準(zhǔn)中數(shù)據(jù)鏈路層的信令幀結(jié)構(gòu)并進(jìn)行了改進(jìn)。呼叫控制狀態(tài)機(jī)應(yīng)用UML模型設(shè)計了由通信事件、動作觸發(fā)的五種可變遷狀態(tài)。在邏輯上此呼叫控制協(xié)議充分模擬了實際應(yīng)用中的呼叫控制的各種工作情景,理論上能夠正確完成呼叫控制系統(tǒng)的功能。在實際嵌入式開發(fā)過程中,利用ARM7處理器的高速運行優(yōu)勢,在數(shù)據(jù)傳輸中對誤碼率要求嚴(yán)格的控制信令增加了數(shù)據(jù)鏈路層的差錯控制編碼,CRC循環(huán)冗余校驗,漢明糾錯編碼,交織抑制連續(xù)突發(fā)干擾糾錯編碼,保證了控制信的準(zhǔn)確傳輸。
令此外在呼叫控制程序中增加了防死狀態(tài)的定時器中斷,提高了程序的運行可靠性。本呼叫控制協(xié)議已實際應(yīng)用到實驗室數(shù)字無中心對講機(jī)的樣機(jī)開發(fā)中,運行穩(wěn)定。
5 結(jié) 語
隨著各種數(shù)字技術(shù)的迅猛發(fā)展,模擬的無中心系統(tǒng)在當(dāng)前的技術(shù)環(huán)境下已顯得捉襟見肘,對其進(jìn)行全面數(shù)字化改造將是未來專網(wǎng)無線通信領(lǐng)域的重要工作內(nèi)容。呼叫控制協(xié)議的數(shù)字化標(biāo)準(zhǔn)尚無正式版本推出,本文介紹的呼叫控制協(xié)議已應(yīng)用到數(shù)字無中心對講機(jī)的產(chǎn)品開發(fā)中,運行穩(wěn)定,在功能上有待根據(jù)實際需求進(jìn)行進(jìn)一步的擴(kuò)容和改進(jìn)。