鄧佳琪 張 曉 趙 光 劉 林,2
1(西南交通大學(xué)信息科學(xué)與技術(shù)學(xué)院 四川 成都 611756) 2(軌道交通工程信息化國(guó)家重點(diǎn)實(shí)驗(yàn)室(中鐵一院) 陜西 西安 710043)
隨著高速鐵路的快速發(fā)展,鐵路GSM-R網(wǎng)絡(luò)除了承載語(yǔ)音、信令等通信業(yè)務(wù)外,還承載CTCS-3列車(chē)控制業(yè)務(wù),因此,GSM-R網(wǎng)絡(luò)傳輸質(zhì)量成為高速鐵路安全運(yùn)營(yíng)的關(guān)鍵[1]。GSM-R系統(tǒng)由基站子系統(tǒng)(Base Station Subsystem,BSS)、網(wǎng)絡(luò)子系統(tǒng)(Network Switching Subsystem,NSS)、運(yùn)行和業(yè)務(wù)支撐子系統(tǒng)以及其他終端設(shè)備組成[2],且通過(guò)網(wǎng)絡(luò)交換子系統(tǒng)實(shí)現(xiàn)與其他通信網(wǎng)絡(luò)的互聯(lián)互通[3]。GSM-R網(wǎng)絡(luò)接口如圖1所示。現(xiàn)有的GSM-R網(wǎng)絡(luò)接口監(jiān)測(cè)系統(tǒng)主要集中在Abis接口和A接口。這些接口處于基站和交換機(jī)之間,所能監(jiān)測(cè)的數(shù)據(jù)是基站和交換機(jī)之間傳遞的信令數(shù)據(jù),對(duì)于車(chē)載設(shè)備與交換機(jī)之間通過(guò)空中接口傳輸?shù)臄?shù)據(jù)和信令無(wú)法監(jiān)控[4]。此外,其中部分信令只在空中接口傳送。當(dāng)這部分信令出現(xiàn)故障時(shí),僅依靠現(xiàn)有監(jiān)測(cè)系統(tǒng)提供的接口數(shù)據(jù),無(wú)法再現(xiàn)和定位故障[5]。如對(duì)CTCS-3無(wú)線(xiàn)超時(shí)和降級(jí)問(wèn)題分析處理時(shí),由于空口監(jiān)測(cè)數(shù)據(jù)缺失,則無(wú)法準(zhǔn)確判斷是車(chē)載移動(dòng)設(shè)備問(wèn)題還是GSM-R網(wǎng)絡(luò)問(wèn)題[6]。
圖1 GSM-R系統(tǒng)接口
本文致力于通過(guò)GSM-R空口協(xié)議解析以完善GSM-R網(wǎng)絡(luò)接口監(jiān)測(cè)系統(tǒng),跟蹤車(chē)載設(shè)備到地面終端間的信令傳輸,通過(guò)空口信令的準(zhǔn)確分析為故障定位提供依據(jù),這對(duì)保障高速鐵路列車(chē)的安全運(yùn)營(yíng)具有重要意義。本文設(shè)計(jì)的空口信令解析系統(tǒng)采用通用軟件無(wú)線(xiàn)電外設(shè)(Universal Software Radio Peripheral,USRP)采集GSM-R空口數(shù)據(jù),通過(guò)物理層相關(guān)的解調(diào)譯碼等,獲取信令數(shù)據(jù)并進(jìn)行內(nèi)容解析,具體過(guò)程如圖2所示。其中,USRP完成信號(hào)采集,并處理成基帶IQ數(shù)據(jù)。PC中物理層模塊完成IQ數(shù)據(jù)的載波同步、SCH同步、解調(diào)、信道譯碼、解交織等過(guò)程。協(xié)議解析模塊則完成對(duì)物理層處理后得到的比特流進(jìn)行信令信息的解析。
圖2 協(xié)議解析系統(tǒng)
為了實(shí)現(xiàn)對(duì)指定頻段信號(hào)的采集和存儲(chǔ),本文采用如圖3所示的數(shù)據(jù)采集系統(tǒng)。其中硬件USRP和計(jì)算機(jī)采用千兆網(wǎng)線(xiàn)連接。USRP充當(dāng)計(jì)算機(jī)的射頻前端,將天線(xiàn)接收到的無(wú)線(xiàn)電波轉(zhuǎn)換為計(jì)算機(jī)軟件可以處理的數(shù)字信號(hào)。計(jì)算機(jī)通過(guò)軟件GNU Radio建立數(shù)據(jù)采集流圖與USRP協(xié)同工作。圖4即為在GNU Radio軟件中建立的數(shù)據(jù)采集流圖[7]。圖4中,RTL-SDR Source模塊用于設(shè)置USRP待采集信號(hào)的參數(shù)及USRP工作相關(guān)參數(shù),如中心頻率、采樣率、帶寬、頻偏、射頻增益等參數(shù);File Sink模塊用于完成對(duì)采集數(shù)據(jù)的存儲(chǔ)。為了便于實(shí)時(shí)了解采集信號(hào)特征,數(shù)據(jù)采集系統(tǒng)采用QT GUI Frequency Sink模塊進(jìn)行采集數(shù)據(jù)實(shí)時(shí)頻譜分析。進(jìn)行數(shù)據(jù)采集時(shí),首先將USRP和計(jì)算機(jī)連接,然后在PC端運(yùn)行GUN Radio軟件下的數(shù)據(jù)采集流圖,實(shí)現(xiàn)信號(hào)的采集和存儲(chǔ)。
圖3 數(shù)據(jù)采集系統(tǒng)
圖4 GNU Radio軟件的數(shù)據(jù)采集流圖
GSM-R空口信令解析軟件基本架構(gòu)如圖5所示。信令解析軟件讀取USRP存儲(chǔ)的IQ基帶信號(hào)進(jìn)行載波同步,即查找FCCH。FCCH同步模塊從數(shù)據(jù)文件頭開(kāi)始搜索直到找到FCCH為止。如果整個(gè)文件都已經(jīng)處理完畢仍然沒(méi)有搜索到FCCH,FCCH同步失敗,本次采集數(shù)據(jù)無(wú)法實(shí)現(xiàn)信令解析。FCCH載波同步完成后即進(jìn)行幀同步,即SCH同步。實(shí)現(xiàn)了FCCH和SCH同步后信令解析軟件將按照GSM-R協(xié)議規(guī)范依次進(jìn)行物理層、鏈路層、網(wǎng)絡(luò)層的處理。
圖5 軟件基本結(jié)構(gòu)
要實(shí)現(xiàn)GSM-R空口信令解析,首先要獲得頻率同步[8]。GSM-R系統(tǒng)通過(guò)在FCCH信道上發(fā)送如圖6所示的頻率校正突發(fā)來(lái)實(shí)現(xiàn)頻率同步[9]。FCCH突發(fā)由148個(gè)連續(xù)的0組成,而GSM-R采用的是GMSK調(diào)制。因此,FCCH頻率校正突發(fā)通過(guò)GMSK調(diào)制后就是一個(gè)固定頻率的正弦/余弦波,且相鄰符號(hào)的相位差為正,利用該特征即可以實(shí)現(xiàn)FCCH載波同步。本文實(shí)現(xiàn)FCCH同步過(guò)程如圖7所示。由于前后兩個(gè)尾比特共6個(gè)0,且考慮到系統(tǒng)對(duì)噪聲等的容忍,本文設(shè)計(jì)的FCCH同步模塊的同步條件是當(dāng)找到連續(xù)138個(gè)相位差為正時(shí),該段數(shù)據(jù)即為FCCH數(shù)據(jù)。
圖6 FCCH突發(fā)脈沖結(jié)構(gòu)
圖7 FCCH查找流程
SCH是FCCH之后的第8個(gè)時(shí)隙。FCCH同步完成后,即可利用該關(guān)系從存儲(chǔ)數(shù)據(jù)中找到對(duì)應(yīng)的SCH數(shù)據(jù)。但是由于FCCH同步屬于粗同步,按此關(guān)系獲取的SCH數(shù)據(jù)存在一定的誤差。因此,本文設(shè)計(jì)的SCH同步模塊是根據(jù)FCCH位置及映射結(jié)構(gòu)讀取包含SCH在內(nèi)的兩個(gè)時(shí)隙的數(shù)據(jù),在該兩個(gè)時(shí)隙范圍內(nèi)尋找SCH精確位置。根據(jù)同步突發(fā)的結(jié)構(gòu)(如圖6所示)可知,同步突發(fā)包括64比特同步序列,且同步突發(fā)(Synchronous Burst,SB)擴(kuò)展訓(xùn)練序列具有較強(qiáng)自相關(guān)性,因此,SCH同步方法即利用序列的相關(guān)性,將截取的SCH數(shù)據(jù)與協(xié)議規(guī)定的SCH同步序列(GMSK映射)進(jìn)行滑動(dòng)相關(guān)運(yùn)算,相關(guān)值最大時(shí)即為SCH同步序列位置。SCH同步過(guò)程如圖8所示。
圖8 SCH同步框圖
同步突發(fā)除了包含同步序列之外,還包括78比特加密數(shù)據(jù),該數(shù)據(jù)中包含了基站識(shí)別碼(Base Station Identity Code,BSIC)和幀號(hào)(Frame number,FN)等系統(tǒng)消息,因此,完成SCH同步后,將進(jìn)行SB的信息解析。在SB解析過(guò)程中涉及的viterbi解調(diào)和CRC校驗(yàn)等信道解碼處理將在下一部分進(jìn)行分析。SCH解析的結(jié)果如圖9所示。其中BSIC包括網(wǎng)絡(luò)色碼和基站色碼,NCC為網(wǎng)絡(luò)色碼,用來(lái)識(shí)別相鄰的PLMN網(wǎng);BCC為基站色碼,用來(lái)識(shí)別相同載頻不同的基站;t3’表示為該SCH位于51復(fù)幀中的第幾個(gè)SCH,值可為0、1、2、3、4;t3,t1,t2則是用來(lái)計(jì)算幀號(hào),FN=(51×26×t1)+(51×tt)+t3。
圖9 SCH解析結(jié)果圖
物理層信號(hào)處理是信令解析的基礎(chǔ),通過(guò)物理層的數(shù)字信號(hào)處理得到各個(gè)邏輯信道的突發(fā)數(shù)據(jù),才能進(jìn)一步進(jìn)行協(xié)議解析。
2.3.1 信道映射模塊
信道映射模塊作為物理層處理中較為重要的模塊,完成物理信道到邏輯信道的映射,以使邏輯信道上的突發(fā)脈沖能正確交織組合在一起形成幀格式傳遞給數(shù)據(jù)鏈路層模塊。GSM-R系統(tǒng)的信道組合如圖10所示。信道組合方式的獲得如下:首先根據(jù)解析BCCH的系統(tǒng)消息得到時(shí)隙0上的BCCH和CCCH組合方式;其次解析CCCH的immediate assignment信令得到SDCCH的組合方式;最后解析SDCCH上assignment Command信令得到TCH的信道組合方式。因此我們可以根據(jù)信令解析結(jié)果和幀號(hào)得到信道映射的結(jié)果,即哪個(gè)時(shí)隙數(shù)據(jù)對(duì)應(yīng)哪一種信道。
圖10 控制信道組合示意圖
2.3.2 信道數(shù)據(jù)的解碼處理
信道解碼過(guò)程是根據(jù)對(duì)應(yīng)的信道類(lèi)型將信道映射模塊輸出的突發(fā)進(jìn)行解交織譯碼,還原信息比特后再傳遞給數(shù)據(jù)鏈路層。不同邏輯信道突發(fā)形式不同,除RACH、FCCH和SCH外的邏輯信道采用如圖11所示的常規(guī)突發(fā),常規(guī)突發(fā)包括26 bit訓(xùn)練比特和58×2 bit的信息比特。如果基站沒(méi)有用戶(hù)接入時(shí)公共控制信道會(huì)不間斷發(fā)送空突發(fā)(格式如圖11所示)。因此,在進(jìn)行數(shù)據(jù)處理前需要先確定當(dāng)前突發(fā)是常規(guī)突發(fā)還是空突發(fā)。區(qū)分常規(guī)突發(fā)和空突發(fā)的方式是利用兩種突發(fā)的訓(xùn)練序列不同來(lái)完成,具體流程如圖12所示。由于GSM-R上的公共控制信道數(shù)據(jù)采用A5/0加密方式,即不加密,所以物理層解碼處理主要對(duì)數(shù)據(jù)進(jìn)行組幀、解交織、viterbi解調(diào)和CRC校驗(yàn)處理,如圖13所示。
圖11 常規(guī)突發(fā)和空突發(fā)脈沖結(jié)構(gòu)
圖12 NB和DB區(qū)分流程 圖13 信道解碼處理流程
(1) 組幀是將發(fā)送端信道編碼時(shí)的分段信息重新組合在一起。如圖14所示的公共控制信道為例,由于連續(xù)的4幀時(shí)隙0數(shù)據(jù)才能形成一個(gè)BCCH消息塊,故將4個(gè)連續(xù)常規(guī)突發(fā)的信息比特提取出來(lái)按順序拼接在一起進(jìn)行組幀。
圖14 BCCH和CCCH在TS0上的復(fù)用
(2) 解交織是為了讓交織后的比特按規(guī)則重新組合恢復(fù)原始比特順序。GSM-R中的交織方式有塊交織和內(nèi)部交織兩種方式。
(3) 利用viterbi算法進(jìn)行卷積碼編碼的解碼,算法實(shí)現(xiàn)是基于viterbi的最大似然檢測(cè)法,在解碼的同時(shí)還可以檢測(cè)和糾正在傳輸過(guò)程中出現(xiàn)的誤碼比特。解碼后就是CRC校驗(yàn),用來(lái)判斷解碼出來(lái)的數(shù)據(jù)是否正確有效。
數(shù)據(jù)鏈路層(L2)作為空中接口的第二層,主要作用是為網(wǎng)絡(luò)層實(shí)體之間相互有效地傳遞消息提供可靠性保障。數(shù)據(jù)鏈路層使用的協(xié)議為L(zhǎng)APDm協(xié)議,它提供給網(wǎng)絡(luò)層的業(yè)務(wù)連接點(diǎn)是服務(wù)接入點(diǎn)(SAP)??湛谥С值臉I(yè)務(wù)接入點(diǎn)有兩種:SAPI=0表示普通信令,SAPI=3表示短消息SMS。
數(shù)據(jù)鏈路層中的幀格式主要分為Format B、Bbis和A等,具體結(jié)構(gòu)如圖15所示。當(dāng)DCCH發(fā)送沒(méi)有信息域的消息時(shí)采用幀格式A,發(fā)送有信息域的消息時(shí)采用幀格式B;而B(niǎo)CCH、PCH、NCH和AGCH發(fā)送消息時(shí)均采用幀格式Bbis,每次發(fā)送的一個(gè)塊包含一個(gè)完整信息。幀的區(qū)分是由物理層(L1)提供的,即在L1進(jìn)行信道映射以后,L2根據(jù)L1提供的信道類(lèi)型指示得到數(shù)據(jù)的幀格式,然后再進(jìn)一步對(duì)其幀結(jié)構(gòu)進(jìn)行解析。L2處理模塊中主要針對(duì)幀頭的地址域、控制域、長(zhǎng)度指示域進(jìn)行解析,然后將有效信息域傳遞給網(wǎng)絡(luò)層。具體流程如圖16所示。
(a) Format type A
(b) Format type B
(c) Format type Bbis圖15 數(shù)據(jù)鏈路層幀結(jié)構(gòu)
圖16 數(shù)據(jù)鏈路層處理流程
由空中接口協(xié)議體系可知,網(wǎng)絡(luò)層協(xié)議是整個(gè)空中接口協(xié)議的核心,它提供了移動(dòng)臺(tái)和基站之間信令交互的接口。本系統(tǒng)網(wǎng)絡(luò)層模塊的主要功能是對(duì)網(wǎng)絡(luò)層信令進(jìn)行解析。網(wǎng)絡(luò)層的消息格式分為標(biāo)準(zhǔn)消息格式和非標(biāo)準(zhǔn)消息格式。標(biāo)準(zhǔn)L3消息格式包含2個(gè)字節(jié)的頭部部分和非必要信令部分。其中頭部包含協(xié)議鑒別(PD)、跳頻指示(Skip Indicator,SI)(或者業(yè)務(wù)標(biāo)識(shí)(Transaction identifier,TI))以及消息類(lèi)型(Message type,MT),其組成結(jié)構(gòu)如圖17所示。
圖17 標(biāo)準(zhǔn)L3消息的結(jié)構(gòu)
根據(jù)數(shù)據(jù)鏈路層解析得到的長(zhǎng)度指示域提取信息域比特流,并傳遞給網(wǎng)絡(luò)層(L3)解析模塊。由L3消息格式可知比特流第5-8位為跳頻指示字段,當(dāng)其值為0000時(shí)消息將被忽略。比特流第1-4位為協(xié)議鑒別字段,第9-16位為消息類(lèi)型字段,由于在不同類(lèi)型協(xié)議中部分消息類(lèi)型的字段編碼相同,所以在解析過(guò)程中應(yīng)該先解析協(xié)議鑒別字段區(qū)分RR、CC和MM等協(xié)議類(lèi)型,再解析消息類(lèi)型。協(xié)議鑒別解析模塊如圖18所示,消息類(lèi)型解析模塊如圖19所示。
圖18 協(xié)議鑒別模塊流程
圖19 消息類(lèi)型解析模塊流程
利用圖3的數(shù)據(jù)采集系統(tǒng)完成高鐵GSM-R數(shù)據(jù)采集。將高鐵站采集到的GSM-R數(shù)據(jù)導(dǎo)入信令解析軟件中進(jìn)行測(cè)試。部分信令交互解析結(jié)果如圖20所示。其中MNC結(jié)果為20表示該數(shù)據(jù)為鐵路GSM-R的數(shù)據(jù)。將輸出解析結(jié)果與協(xié)議中規(guī)定參數(shù)的說(shuō)明和Wireshark結(jié)果進(jìn)行對(duì)比,可以得到其幀號(hào)、消息類(lèi)型、MCC、MNC、LAC等參數(shù)均相同,如圖21所示。結(jié)果驗(yàn)證了算法的正確性,表明該系統(tǒng)能夠?qū)崿F(xiàn)GSM-R信令的監(jiān)測(cè)。
圖20 BCCH部分信令解析結(jié)果
圖21 Wireshake信令解析結(jié)果
本文根據(jù)3GPP協(xié)議標(biāo)準(zhǔn)針對(duì)GSM-R空口監(jiān)測(cè)完成了協(xié)議分析軟件系統(tǒng),利用USRP采集得到的鐵路數(shù)據(jù)進(jìn)行協(xié)議解析軟件的驗(yàn)證測(cè)試。測(cè)試結(jié)果與3GPP協(xié)議比對(duì)表明解析系統(tǒng)實(shí)現(xiàn)正確,滿(mǎn)足空口監(jiān)測(cè)系統(tǒng)的基本要求,通過(guò)跟蹤車(chē)載設(shè)備到地面終端間的信令傳輸,可為空口信令準(zhǔn)確分析和故障定位提供依據(jù)。