摘 要: 為了提高DMR系統(tǒng)基帶算法的性能,分析研究了DMR通信協(xié)議中的BPTC碼和變長BPTC碼。針對這兩種碼,提出了利用和積算法作為軟輸入軟輸出譯碼器,進行迭代譯碼的新方案。該方案在MATLAB下進行了仿真,并與伴隨式譯碼方案進行了對比分析。BPTC和變長BPTC碼的仿真實驗結(jié)果表明,采用軟判決迭代譯碼的方案在低信噪比和高信噪比時都有更好的編碼增益。
關(guān)鍵詞: DMR;BPTC;變長BPTC;和積算法;軟輸入軟輸出;迭代譯碼
DMR(Digital Mobile Radio)協(xié)議是由歐洲電信標準協(xié)會(ETSI)推出的數(shù)字集群通信協(xié)議。在現(xiàn)代通信領域,專網(wǎng)的數(shù)字通信系統(tǒng)將逐漸取代過去的模擬通信系統(tǒng)。無線信道易受噪聲、干擾和其他信道因素的影響,對數(shù)字通信系統(tǒng)的服務質(zhì)量產(chǎn)生較大的影響。為了保證實時通信業(yè)務的服務質(zhì)量,降低誤碼率,在數(shù)據(jù)傳輸中采用前向糾錯編碼的方式使其有一定的糾錯能力。DMR中有兩種重要的前向糾錯碼,即BPTC(Block Product Turbo Code)碼和變長BPTC碼,它們分別在語音幀和廣播信令中起到非常重要的作用。本文提出了軟判決迭代譯碼方案,其仿真實驗結(jié)果明顯優(yōu)于參考文獻[1]、[2]中提出的兩種方案。
1 DMR信道編解碼介紹
1.1 BPTC碼編碼過程
控制信令中,未確認和確認的數(shù)據(jù)都用一個(196,96)Turbo乘積碼[3]對信源進行編碼,然后分別對矩陣的行和列使用(15,11,3)和(13,9,3)漢明編碼。對編碼后的新矩陣按從左到右再從上到下的順序編號,一個額外的保留位增添到原有序列中,形成196位。最后采用公式(1)進行交織。
m=(n×181)mod196(1)
其中,m表示交織后的序列號,n表示交織前的序列號。m決定了傳輸陣列中的每個位的位置。整個編碼過程如圖1所示。
BPTC解碼是編碼的逆過程,對接收到的196 bit序列先排成13×15的矩陣,通過(13,9)列譯碼后再通過(15,11)行譯碼,最后得出9×11的矩陣,去除前3 bit后得到譯碼的96 bit序列。
1.2 變長BPTC碼編碼過程
在DMR協(xié)議中,CACH信令、嵌入式信令和反向信道采用3種方式的變長BPTC編碼。3種編碼方式十分類似,本文以CACH信令為例對變長BPTC編碼進行研究。
CACH信令采用BPTC編碼,如圖2所示,每一行采用(17,12,3)漢明編碼,每列采用簡單的奇偶校驗。
圖2也表明了CACH信令的交織過程。信令信息經(jīng)過漢明行編碼和簡單列奇偶校驗并將校驗位填入最后一行中形成編碼矩陣形式。把編碼矩陣按從上到下從左到右的順序讀出,再按照從左到右的順序?qū)懭雮鬏斁仃囍小C恳恍械拈L度為17位。將矩陣左上編號為序號1,用從上向下、從左到右的方式遞增排序,并排成左上為序號1,從左向右從上到下的方式序號遞增的新序列。
變長BPTC碼每行采用漢明譯碼,而每列可以進行奇偶校驗,檢測譯碼是否成功。
2 一種基于軟輸入軟輸出迭代譯碼的BPTC譯碼方案
2.1 BPTC和變長BPTC軟輸入軟輸出迭代譯碼
2.1.1 BPTC迭代譯碼方案
為了逼近最優(yōu)譯碼引入了迭代譯碼的思想,兩個分量譯碼器采用的是軟輸入軟輸出,接收到的序列中每個比特軟信息在兩個漢明碼譯碼器之間相互交換,迭代更新。BPTC譯碼的譯碼過程如圖3所示。
2.1.2 變長BPTC迭代譯碼方案
在變長BPTC碼中,每一列只采用奇偶校驗并將校驗值放置在最后一行中,奇偶校驗只能檢錯不能糾錯。但是在軟判決中置信度高的比特會影響置信度低的比特,一個似然值低的錯誤比特會被多個似然值高的比特影響。采用這種置信度傳播的思想,在變長BPTC譯碼中每個比特的軟信息在每行的漢明碼和每列的奇偶校驗中進行迭代不斷收斂完成譯碼,由于奇偶校驗也參與到了譯碼中來,使得譯碼的性能得到了提高,變長BPTC軟判決迭代譯碼方案如圖4所示。
2.2 SISO譯碼器
SISO(Soft In Soft Out)譯碼器比硬輸出譯碼器有更少的信息損失和更高的誤碼性能。在迭代譯碼中,一個譯碼器的軟輸出能作為另一個譯碼器的軟輸入,并且兩個譯碼器對接收序列進行迭代處理,直到達到碼的性能界。文中的BPTC譯碼新方案采用在兩個SISO譯碼器間相互交換非本征信息完成迭代譯碼,該譯碼方案中對漢明碼的譯碼方式采用置信度傳播BP(Belief Propagation)算法,也稱和積算法SPA(Sum-Product Algorithm)[4]。在置信度傳播算法中,節(jié)點到節(jié)點的消息是通過Tanner圖傳遞。
2.2.1 Tanner圖
線性分組碼可以采用網(wǎng)格表示,也可以采用Tanner圖表示[5]。Tanner圖表示了碼元與校驗碼元的奇偶校驗和的關(guān)聯(lián)關(guān)系。Tanner圖中有兩類節(jié)點,一類表示碼元比特的頂點稱為變量節(jié)點,另一類表示奇偶校驗和或者約束方程的校驗節(jié)點。以一個(7,4)漢明碼為例,其生成矩陣如圖5所示,Tanner圖如圖6所示,其中圓形表示變量節(jié)點,方形的表示校驗節(jié)點??梢钥闯?,Tanner圖很清楚地表明了節(jié)點間的消息傳遞的路徑。
3 仿真結(jié)果及分析
以BPTC(196,96)為例,數(shù)據(jù)采用BPSK調(diào)制經(jīng)過AWGN信道加噪后進行解調(diào)和譯碼,采用伴隨式譯碼方案和軟判決迭代譯碼方案得出的誤碼率曲線如圖7和圖8所示。由于伴隨式譯碼方案每個漢明碼只能糾正一個錯誤比特,因此當接收矩陣中其中一列或者一行有多于一個的錯誤比特,這種形式的錯誤就會造成錯誤的擴散。而軟判決迭代譯碼方案采用的是每個比特置信度傳播的方式,SISO譯碼器不會對碼字立即作出判決。當有一列或者一行中有多個比特錯誤時,雖然其中一個譯碼器不能正確譯碼,但是在另一個譯碼器中這些錯誤是分布在不同的碼字中的,因此能夠正確譯碼,這樣在行列譯碼器中反復迭代使得每個比特的概率值逐漸收斂,最后輸出譯碼結(jié)果。由圖7和圖8也可以看出采用迭代譯碼的方案在低信噪比和高信噪比時都有明顯的編碼增益。
本文對傳統(tǒng)的譯碼方法進行了改進,提出了利用和積算法并加入迭代譯碼的新譯碼方法,該方法適用于DMR系統(tǒng)的BPTC和變長BPTC。該方法具有性能好和架構(gòu)簡單的優(yōu)點。實驗中還發(fā)現(xiàn),隨著SNR增加,迭代次數(shù)會相應降低。下一步工作的重點是將本文提出的算法在DSP平臺上實現(xiàn),從運算速度和存儲空間上進行進一步的優(yōu)化改進。
參考文獻
[1] 劉輝,謝曉明.基于DMR通信協(xié)議的信道編碼的研究[J].現(xiàn)代電子技術(shù),2009,23(9):37-39.
[2] 代敏.DMR系統(tǒng)的信道編碼研究[D].西安:西安電子科技大學,2008.
[3] PYNDIAH R M. Near-optimum decoding of product codes: block turbo codes[J]. IEEE Transactions on Communications, 1998, 46(8):1003-1010.
[4] KSCHISCHANG F R, FREY B J, LOELIGER H-A. Factor graphs and the Sum-product algorithm[J]. IEEE Transactions on Information Theory, 2001,47(2):498-519.
[5] TANNER R M. A recursive approach to low complexity codes[J]. IEEE Transactions on Information Theory, 1981,27(5):533-547.
[6] MACKAY D J C. Good error-correcting codes based on very sparse matrices[J]. IEEE Transactions on Information Theory, 1999,45(2):399-431.