宋政育 孫 昕
【摘要】文章首先描述了TETRA空中接口協議棧的結構和主要功能,然后詳細闡述了上MAC協議棧的功能、工作原理及其開發過程,最后對所開發的協議棧進行了仿真和測試。仿真測試結果與《ETSI TS 100 392-2 TETRA V+D Part 2: Air Interface》協議一致。
【關鍵詞】TETRA數字集群 空中接口 上MAC層 協議棧
1 引言
集群通信系統是多信道共用的專業移動通信系統,向正在申請服務的設備或用戶自動分配信道,主要用于指揮調度等業務。它通過頻率共用緩解頻率資源緊缺的狀態,同時又通過基站集中使用、統一控制,有效地降低用戶組網費用。2000年原信息產業部推薦了TETRA和iDen兩種數字集群的標準,其中TETRA數字集群系統以其開放性好、保密性強以及頻譜利用率高等優點,在全球許多國家得到了廣泛的應用。

上MAC是TETRA數字集群移動通信系統的重要組成部分,TETRA數字集群協議棧上MAC功能的開發對TETRA數字集群通信系統國產化具有重要意義。
2 TETRA數字集群協議棧的結構
TETRA數字集群空中接口協議棧參照ISO/OSI七層模型,自下而上可分為物理層、數據鏈路層和網絡層,如圖1所示:
TETRA數字集群空中接口的第一層為物理層,負責調制和解調、收/發轉換、頻率校正、碼元同步及移動臺功率控制等。
第二層為數據鏈路層(DLL),完成從網絡層至物理層的映射,可分為媒體接入控制層(MAC)和邏輯鏈路層(LLC),其中MAC層又可分為上MAC層和下MAC層。MAC負責信道分配及物理層的數據復用,用數據原語與高層進行通信,用邏輯信道與低層進行通信。MAC實現TDMA的幀同步、交織/去交織、信道編碼、隨機接入過程、分片/重組、AACH上無線鏈路質量的RSSI(接收信號強度指示)和MER(消息刪除率)測量、支持LLC重傳過程的MER測量。在上MAC層實現控制面(C面)和用戶面(U面)的分離,用戶面的業務傳送至用戶面,而控制面的信息則傳送至協議棧。LLC負責處理多路邏輯鏈路以支持同時發生的業務,并負責數據傳送與重傳、分段/合段以及邏輯鏈路處理。DLL經三個業務接入點(SAP)與上一層進行通信,經兩個SAP與物理層進行通信。

第三層為網絡層,可分為兩個子層:較低子層稱為移動鏈路實體(MLE),負責控制較低層與無線電相關的功能;較高子層包括移動性管理(MM)、電路控制實體(CMCE)以及分組數據(PD)三部分,它們被統稱為子網接入功能(SNAF)。
空中接口各層之間通過業務接入點相互訪問,通過原語進行數據交換,對等層之間通過協議數據單元(PDU)進行數據與信息交互。
3 上MAC的主要功能及工作原理
上MAC主要具有隨機接入控制、信令分片和重組、無線信道管理和維護、保留時隙授予和管理、業務信道竊用、邏輯信道復用和解復用、第二層地址管理以及功率控制等功能。
(1)隨機接入控制
在公共控制信道(MCCH)的上行鏈路上,當多個移動臺發送信令時,可采取隨機接入或保留接入的方式。當移動臺發起初始接入時,則必須使用隨機接入的方式。
因為隨機接入采用ALOHA協議,移動臺接入的成功率與接入參數的設置密切相關,所以基站側上MAC應合理設置這些參數,通過廣播PDU將其發送給移動臺。移動臺側上MAC根據這些參數,決定何時開始進行隨機接入。通過基站和移動臺上MAC信息交互,實現上行信令的隨機接入,并保證較高的接入成功率。
(2)信令分片和重組
當上層所發送信令的長度超過一個物理時隙所能承載的長度時,上MAC需要緩存該信令,并進行分片,然后在多個時隙上利用多個MAC塊來傳輸這些分片。

當上MAC從下層接收到分片的信令時,不能直接將該信令向上層傳遞,而應在相應的信道上接收到所有的分片之后,在本層對這些分片進行重組,然后向上層傳遞重組的完整信令。由于每個信令的分片沒有序號,所以上MAC必須順序地發射或接收這些分片。如果在傳輸中有任何一個分片發生錯誤,那么就放棄這個信令傳輸過程,發送側LLC必須請求重新發送該信令。
當發送分片信令的第一個分片時,應該使用完整MAC首部(在下行鏈路上使用MAC-RESOURCE PDU,在上行鏈路上使用MAC-ACCESS或者MAC-DATA PDU);當發送后續的分片(MAC-FRAG PDU)和最后的分片(MAC-END或者MAC-END-HU PDU)時,只需使用簡化MAC首部。
(3)無線信道管理和維護
無線信道管理和維護是上MAC的核心功能之一。上MAC負責為電路模式的呼叫分配業務信道,為分組數據業務提供PDCH信道;并且在業務和分組數據傳輸過程中維護這些信道,在完成傳輸之后釋放這些信道。
(4)保留時隙授予和管理
在隨機接入之后,當移動臺要求發送更多的信令消息時,或者當基站向移動臺發送請求移動臺側LLC進行響應的消息時(例如:基站側LLC基本鏈路和高級鏈路確認消息的發送),使用保留接入。基站側上MAC根據當前信道的時隙使用情況,授予移動臺保留時隙,并管理這些保留時隙。移動臺側上MAC就可以在這些保留時隙中向基站發送信令。在完成保留接入之后,移動臺重新返回到隨機接入狀態。
(5)業務信道竊用
如果需要在處于業務模式的信道上傳輸端到端的U面信令(例如同步和加密等)、C面信令(例如越區切換)以及MAC本層的控制信令,那么利用竊用信道(STCH)來傳輸這些信令。通常,利用STCH發送重要的、緊急的以及需要立即發送的消息。
盡管在STCH上不需要等待就可以傳輸信息,但是頻繁地竊用信道將降低業務的QoS,因此需謹慎使用STCH。對于高層的信令,通過原語中的竊用許可參數,指示是否允許竊用。對于不需要立即傳輸的信令(例如功率控制),可以在18幀的慢相關信道(SACCH)上延遲發送這些信令。
(6)邏輯信道復用和解復用
在上MAC和下MAC接口,定義了不同類型的邏輯信道,每類邏輯信道有不同的差錯控制方法和突發形成方式。通常,邏輯信道可分為業務信道(TCH)和信令信道(SCH),其中業務信道攜帶電路模式數據;信令信道攜帶控制信息,主要包括BNCH(攜帶網絡信息)、BSCH(攜帶同步信息)、BLCH(用于基站線性化)、CLCH(用于MS功放線性化)、SCH/F(攜帶雙向全時隙MAC塊控制信息)、SCH/HD(攜帶下行半時隙MAC塊控制信息)、SCH/HU(攜帶上行半時隙MAC塊控制信息)、AACH(攜帶下行ACCESS-ASSIGN PDU,占據廣播塊)以及STCH(攜帶TMA和TMB接入點的消息,占據業務信道的半時隙)。
在上行鏈路中,下MAC將接收到的數據傳送至上MAC,其邏輯信道復用的方式為SCH/HU+SCH/HU、SCH/F、STCH+STCH、STCH+TCH、TCH以及CLCH+SCH/HU。
在下行鏈路中,上MAC按時隙(MAC塊)將數據傳送至下MAC,一個時隙內的若干邏輯信道按一定的準則復用,形成突發。下行鏈路的邏輯信道復用方式為SCH/F+AACH、SCH/HD+SCH/HD+AACH、SCH/HD+BNCH+AACH、STCH+STCH+AACH、STCH+TCH+AACH、BSCH+BNCH+AACH、BSCH+SCH/HD+AACH、BLCH+SCH/HD+AACH以及BLCH+BNCH+AACH。
(7)第二層地址管理
在上MAC層中,上行鏈路和下行鏈路TMA接入點的地址使用方法不同。
在上行鏈路中,上MAC從MAC PDU中提取地址和地址類型,并將其傳送至網絡層。上MAC所使用的上行地址類型為SSI、USSI、SMI以及Event Lab。
在下行鏈路中,上MAC從TMA原語中提取地址和地址類型,并將其轉化為MAC PDU中的地址。上MAC所使用的下行地址類型為SSI、USSI、SMI、Event Lab、SSI+Event Label、SSI+Usage Marker、SMI+Event Label以及廣播地址(全1)。
(8)功率控制
功率控制分開環功率控制和閉環功率控制兩種。通過功率控制,可以降低鄰道干擾和同頻干擾。
開環功率控制由移動臺獨立完成,移動臺測量下行鏈路的信號質量和信號強度等,并根據測量結果調節上行鏈路發射功率。由于上行和下行鏈路的衰落往往是不相關的,因此這種方法并不可靠。
為了更可靠地控制移動臺的發射功率,可以采用閉環功率控制。基站可通過發送包含“功率控制”元素的MAC-RESOURCE PDU控制移動臺的發射功率。當移動臺發射信令或業務數據時,必須服從基站的功率控制命令。
4 上MAC協議棧的開發
4.1 開發工具
由于TETRA數字集群空中接口協議棧開發具有較高的復雜性,若采用純人工編碼,則會由于開發人員風格不一致,水平不相同,而導致協議棧存在較多的潛在錯誤,且調試困難。因此,必須利用軟件開發工具,通過系統工程的方法來管理協議軟件的整個開發過程,加速協議棧的開發,使生成的代碼具有較高的可靠性和較好的一致性。基于此,選用Telelogic公司的通信開發軟件Tau G2進行TETRA數字集群協議棧的開發。Tau G2將通信軟件開發中常用的SDL/MSC引入到了UML語言中,開發人員只需要通過UML建模和編寫相對較少的代碼,就可以實現一個復雜的協議棧開發。
4.2 開發流程
為了方便程序的開發、升級以及維護,首先根據上MAC的功能將其分為Transmitter和Receiver兩個模塊,分別負責數據的發送和接收。如果Transmitter和Receiver兩個模塊協同工作處理一些信令,那么需要定義一些全局變量,并使用這些全局變量進行兩個模塊之間的交互。TETRA數字集群協議只定義了空中接口部分,因此上MAC實體與LLC和下MAC通信的原語需自行定義,將原語和PDU定義為結構體,并將其作為層與層之間信號的參數來實現各層之間的通信。然后編寫PDU的編解碼函數,協議棧對等層之間通過PDU傳遞信息,上MAC要分解來自對等層的PDU,對PDU中的請求做出應答,將應答后的指令以PDU的形式發出。隨后使用圖形化的UML和SDL語言描述協議,實現協議棧的功能。最后,編寫測試用例進行協議一致性測試。圖2示出了上MAC協議棧開發的流程:
4.3 仿真測試
在完成上MAC協議棧功能開發之后,需要編寫各種測試用例,對所開發的上MAC協議棧進行協議一致性測試。由于TAU G2中含有TTCN Suite測試套件,因此利用測試語言TTCN-3設計測試用例。圖3示出了上MAC下行鏈路發送信令的仿真測試過程:
在運行該測試用例之后,圖3所示的仿真測試過程與《ETSI TS 100 392-2 TETRA V+D Part 2: Air Interface》協議的描述一致,該測試過程分為下列四個階段:
(1)第一階段:LLC向上MAC發送TMA-DATA-IN-BUFFER信號,該信號表示上層有待傳輸的信令,等待上MAC的響應;
(2)第二階段:在上MAC接收到TMA-DATA-IN-BUFFER信號之后,向LLC發送MAC-READY信號,該信號表示上MAC已經準備發送信令;
(3)第三階段:LLC向上MAC發送TMA-UNITDATA-REQ信號,該信號攜帶TMA-UNITDATA- REQ原語的所有參數;
(4)第四階段:在上MAC接收到TMA-UNITDATA-REQ信號之后,根據其攜帶的原語參數構成MAC-RESOURCE PDU,通過TMV-UNITDATA-REQ信號將該PDU發送到下MAC。
5 結束語
TETRA數字集群系統廣泛地應用于交通、消防、水利、公安、武警、法院和檢察院等特殊部門,實現TETRA數字集群系統的國產化,對保障我國的國家安全有著重要的作用。上MAC協議棧的開發對TETRA數字集群協議棧的研究與開發具有一定的參考價值,為開發我國自主知識產權的TETRA數字集群系統積累了經驗。
參考文獻
[1]ETSI TS 100 392-2 V2.6.1(2005-05). Terrestrial trunked radio(TETRA); voice pluse data (V+D); Part 2: air interface(AI)[S].
[2]Draft EN 300 392-1 V1.1.1(1998-07). Trans-European trunked radio(TETRA); voice plus data (V+D); Part 1: general network design[S].
[3]孫昕, 李海. TETRA數字集群空中接口協議棧體系結構分析[J]. 移動通信, 2008(3):34-37.
[4]鄭祖輝, 鮑智良, 經明等. 數字集群移動通信系統[M]. 北京: 電子工業出版社, 2002.
[5]劉宇紅, 白偉. SDL語言及其在通信系統中的應用[J]. 通信技術, 2002(12):82-83.
[6]宋茂強. 通信軟件設計基礎[M]. 北京: 北京郵電大學出版社, 2001.