主頁(http://www.www.jjxinkai.com):TETRA數(shù)字集群系統(tǒng)語音信道編解碼的設(shè)計和實現(xiàn)(2)
圖2 TETRA系統(tǒng)信道編碼器的結(jié)構(gòu) TETRA數(shù)字集群系統(tǒng)信道編碼器主要由兩大類模塊構(gòu)成:控制模塊和編碼模塊。 (1)控制模塊 控制模塊主要由主控制模塊、讀RAM地址控制器、1路變2路選擇器以及2路變1路選擇器。根據(jù)TETRA數(shù)字集群協(xié)議棧所要求編碼的邏輯信道類型,主控制模塊控制整個編碼模塊的工作。讀RAM地址控制器通過對讀地址的控制,實現(xiàn)了不同等級的分類。1路變2路選擇器將AACH的編碼數(shù)據(jù)和其他邏輯信道的編碼數(shù)據(jù)分離。2路變1路選擇器將兩路編碼數(shù)據(jù)合并成一路數(shù)據(jù),然后進入擾碼模塊。 (2)編碼模塊 編碼模塊主要由循環(huán)編碼模塊、RM(Reed-Muller)編碼模塊、卷積編碼模塊、交織模塊以及加擾模塊組成。循環(huán)編碼模塊是由移位寄存器實現(xiàn)的,在加入CRC校驗碼之后,還加入了4個比特的尾碼。RM(Reed-Muller)編碼模塊只應(yīng)用于AACH邏輯信道。卷積編碼模塊支持TETRA協(xié)議中規(guī)定的各種碼率。交織模塊由塊內(nèi)交織和塊間交織兩個子模塊組成。在編碼之前,加擾模塊需要協(xié)議棧提供色碼參數(shù),才能正確輸出編碼結(jié)果。 在獲知協(xié)議棧所要求編碼的邏輯信道類型之后,主控制模塊開始從存儲數(shù)據(jù)的RAM中讀取待編碼數(shù)據(jù),讀取的個數(shù)隨著邏輯信道類型的不同而不同。因為待編碼數(shù)據(jù)是按順序存入RAM中,而TETRA數(shù)字集群系統(tǒng)中語音信道的編碼方案采用了非均等保護,要求輸入編碼器的碼元順序按等級分類,所以在對語音數(shù)據(jù)進行編碼之前,主控制模塊通過讀RAM地址控制器模塊來控制讀RAM的地址順序,從而完成等級分類。
在TETRA數(shù)字集群系統(tǒng)的信道編碼方案中,AACH邏輯信道的編碼流程與其他邏輯信道的編碼流程不同,所以在實際實現(xiàn)的過程中,通過兩個路徑選擇器形成兩條編碼路徑,使AACH的編碼路徑與其他邏輯信道分開。
圖3 TETRA語音業(yè)務(wù)信道編碼流程 在接收到編碼指令之后,信道編碼器首先判斷協(xié)議棧要求編碼的邏輯信道類型,并根據(jù)邏輯信道類型從語音緩存區(qū)里讀取數(shù)據(jù):全時隙業(yè)務(wù)信道(TCH/F)讀取274比特的數(shù)據(jù);半時隙業(yè)務(wù)信道(TCH/H)讀取137比特的數(shù)據(jù)。由于語音緩存區(qū)里的比特流級別順序是混亂的,所以必須對比特進行重排,將各級別數(shù)據(jù)分類,并按順序排放。只對第二等級的比特進行CRC編碼,在第二等級比特流末端加入CRC校驗值之后,還要再加入4比特尾碼。根據(jù)395-2協(xié)議,業(yè)務(wù)信道編碼前的碼元是逆序進入移位寄存器的,即最先進入編碼模塊,最后進入移位寄存器;最后進入編碼模塊,最先進入移位寄存器。當(dāng)進行RCPC編碼時,首先對第1等級比特進行卷積,然后對第2等級比特(包括CRC校驗碼和尾碼)進行運算。第1等級和第2等級的比特所進行刪余的碼率是不同的,但處理是連續(xù)進行的,在碼率轉(zhuǎn)換的時刻,寄存器不要清空。對所有比特進行交織和加擾。 5 結(jié)束語 本文對TETRA數(shù)字集群系統(tǒng)語音業(yè)務(wù)信道所采用的糾錯編碼技術(shù)進行了分析,闡述了語音業(yè)務(wù)信道的編碼流程,并給出了用FPGA實現(xiàn)編碼器的方案,為進一步的研究與開發(fā)提供參考。
參考文獻(xiàn):
(中國集群通信網(wǎng) | 責(zé)任編輯:陳曉亮) |




