陳文強+戴曙光
摘 要:通信傳輸過程中信號干擾衰落現象無可避免,信道編碼技術可以增加編碼增益,提高通信系統傳輸信道容量。極化碼理論上可以達到香農信道容量極限,且具有較低的編譯碼復雜度,因此引入極化碼信道編碼技術。基于Matlab計算機仿真系統搭建衰落信道仿真模型,在接收端進行去干擾處理,通過對比分析誤碼率和信噪比仿真曲線,發現誤碼率能夠降低30%,表明極化碼具有較好的抗衰落性能。
關鍵詞:極化現象;極化編碼;SC譯碼;衰落信道
DOIDOI:10.11907/rjdk.171241
中圖分類號:TP302
文獻標識碼:A 文章編號:1672-7800(2017)007-0023-03
0 引言
信道編碼技術可以增加編碼增益,節省寶貴的功率資源,已經成為現代數字通信系統中必不可少的關鍵技術[1]。極化碼是基于信道極化現象提出的一種新的信道編碼技術,在信息傳輸速率小于信道容量時,可以使信息的差錯概率變得很小[2]。長期以來人們致力于發掘可靠的信道編碼技術,從1950年Hamming的“檢錯碼與糾錯碼”開始,編碼技術水平逐漸提高,Turbo碼[3]和LDPC碼[4]的出現使編譯碼效率達到了一個新高度。但是眾多編碼方案從理論上未被證明可達到香農信道容量極限[5],編譯碼復雜度也較大。而極化碼信道編碼技術理論上可以達到香農信道容量極限,且很大程度上降低了編譯碼復雜度。因此,研究極化碼編譯碼原理和極化碼在衰落信道[6]中的抗干擾性能,基于信道編碼技術構建高質量的通信系統則非常有價值。
1 信道極化
信道極化[7]是從給定的N個獨立的二進制離散無記憶(Binary-Discrete Memoryless Channel,B-DMC)信道W中產生另一組N個信道{W(i)N :1≤i≤N}的一個操作,該過程顯示了極化效應,隨著N值增大,對于指數i,除了一部分被刪除的指數,對稱容量{I(W(i)N)}都無限接近"0"或"1"。由信道結合和信道分裂過程中產生信道極化現象。信道結合將N個B-DMC信道W融合為N維矢量信道WN:χN→yN,其中N=2n,n≥0。由N個信道W合成的信道為WN,WN可以遞歸地由兩個WN/2信道得到,依此類推。信道WN的輸入向量uN1首先轉換為中間變量sN1。轉換公式為:s2i-1=u2i-1⊕u2i,s2i=u2i。其中1≤i≤N/2。為使sN1轉換為vN1=(s1,s2,s3,...,sN),借助RN進行置換操作,vN1則成為兩個獨立信道的輸入。在信道合并認識基礎上研究信道分裂[8],極化碼的信道分裂是把合成的信道WN分裂成一組N個同等的二進制輸入信道W(i)N:χ→yN×χi-1,1≤i≤N。分離信道的轉移概率定義為:
式(1)中,(yN1,ui-11)和ui分別是W(i)N的輸出和輸入。
在這些信道結合和信道分裂的過程中,信道產生了一些特殊性質[9],稱為極化現象。具體表現為一部分信道容量{I(W(i)N)}趨于"1",另一部分信道容量{I(W(i)N)}趨于"0"。如圖1為N=210,刪除率為0.5的信道極化圖形。
2 極化碼編碼
極化編碼是在信道極化現象基礎上構造的一種接近于對稱信道容量的編碼。最主要的思想是構建一個編碼系統,選擇通過信道結合、信道分裂后的信道來發送數據。極化碼是一種線性分組碼,編碼的核心內容是構造生成矩陣GN和選取信息位[10]。
在GN矩陣生成過程中,給出GN的數學定義,對于N≥2有:
式(2)中F=1 01 1,BN=RN(I2RN/2)(I4RN/4)……(IN/2R2)。
這里BN是一個置換運算操作,稱為比特翻轉運算。對于編碼而言,比特翻轉運算可以省略,不改變編碼復雜度。
信息位的選擇對極化碼編碼有著重要影響[11]。挑選對稱容量大的信道作為信息位來傳輸信息,而相對小的作為凍結位。一般情況下,凍結位對于發送和接收端都是已知信息,則可以取為比特"0"。當編碼塊長度達到一定范圍時,可以實現可靠的通信傳輸。
對于極化碼的構造,極化碼編碼塊長度N要求為2的冪次方,即N=2n。對于一個給定的N,按下式對信息比特進行編碼:
式(3)中,uN1傳遞的是信息比特,GN為生成矩陣。
給定一個{1,2,…N} 的子集A,記A的補集為Ac,結合式(3)有:
式(4)中,GN(A)為GN的子矩陣,如果固定A和uAc,而uA作為自由變量,即可得到從uA到xN1的一種編碼。
3 極化碼的SC譯碼
對于帶有參數的(N,K,A,uAc)的GN(A)陪集碼[12],信息向量uN1由隨機部分uA(信息位)和固定部分uAc(凍結位)組合而成。信息向量編碼后得到的χN1經過信道WN輸出得到yN1。譯碼的任務是生成uN1的一個估計值N1。若i∈Ac,則對于接收端而言,發送的ui為已知,結果則直接發送給相應的判決元素;若i∈A,則第i個判決元素要依據已經判決出來的i-11得到[13]。首先定義似然值(LR):
采用一種遞歸的思想來解碼,這種遞歸算法運算復雜度較低,加大了解碼速率[14]。遞歸式如下:
從上式可以看出,LR可以由一個長度為N轉化為兩個長度為N/2的計算,一直遞歸到長度為1時停止,從而簡化了復雜度,降低了硬件要求。當N=1時,直接代入計算LR,公式為:
綜上述,采用這種遞歸算法的復雜度為O(Nlog2N),對極化碼解碼研究有很大貢獻。
4 極化碼衰落信道性能分析
4.1 極化碼衰落信道仿真系統
極化碼衰落信道仿真系統是建立在MATLAB語言基礎上實現的[15],主要概括為5部分:①極化碼編碼前的準備,要定義碼長、碼率和信道的實現等;②編碼過程。編碼過程主要估計信息位集合A和子矩陣GN(A),構建生成矩陣GN;③BPSK調制信號以及加性噪聲的加入,并且加入乘性干擾h因子(h為標準正態隨機分布數,給信號帶來干擾,主要產生正負變換干擾),對應的信道模型為y=hs+n;④解碼過程,即極大似然比計算;⑤仿真結果分析,即通過抽取信息位和計算極化碼編碼誤碼率來探討性能。
編碼準備:在極化碼仿真系統的建立過程中,需要定義碼長和碼率,這是編碼階段生成矩陣GN和信息位選擇的前提條件,因此必須固定。作為一個通信系統搭建信道的條件,極化碼仿真系統的信道噪聲是在二進制對稱信道條件下的加性高斯白噪聲。
編碼過程:按第2章節所述構建生成矩陣GN并選取信息位。
調制過程:系統輸入端輸入的信息是單極性的"0"和"1",但是雙極性的"-1"和"+1"會使信道利用率增加[16],因此采用BPSK調制,主要用來實現系統0→-1,1→1的轉換,同時加入乘性干擾h因子。核心代碼段是:“h=randn(size(encoded_bits)),received_sample=h.*encoded_bits+noise”,造成輸入信號的衰落。
信道模型:y=hs+n。給輸入信號乘以一個h因子(標準正態隨機分布數),隨機數值有正有負,從而對s的符號產生影響,不能判決s的正負性,導致通信系統癱瘓,這就是構建的衰落信道模型。
解碼過程:譯碼即給出對接收的信息集A一個估計A。該仿真系統的譯碼方式是SC譯碼,采用遞歸算法可大大減少計算量。
4.2 極化碼在衰落信道的仿真結果分析
為了分析極化碼在衰落信道的性能,采用將計算機仿真和理論分析相結合的方法進行研究。雖然計算機仿真存在一定誤差,但是通過大量的數據仿真還是可以獲得可信度較高的結果。所以在軟件仿真系統代碼中加入h(標準正態分布隨機數)因子作為乘性干擾得到第一條仿真曲線,在此基礎上,根據輸出信號消除h帶來的正負變換干擾的影響得到第二條仿真曲線。同時,又在不加乘性干擾的情況下直接在高斯白噪聲信道上得到第三條仿真曲線,將三條曲線放在一起作對比分析。如圖2所示是在BPSK調制下,碼率為12,碼長為16,極化碼在衰落信道的仿真曲線。
每次調試運行代碼含有16個信息位,每條曲線程序代碼循環次數為10 000次,得到較為平滑的曲線。對于信道模型,上文已給出數學表達式y=hs+n。對于通信傳輸系統接收端,要對s有一個準確判斷,但隨機數h因子是隨機產生的,有正有負,從而干擾了對s的正確判斷接收。由圖2曲線(in fading without CSI)可以看出,當加入h因子后,相比于高斯白噪聲信道下,系統已經崩潰,失去了傳輸有效信息的作用,誤碼率接近60%,此時系統已失去了使用價值。因此,嘗試消除h帶來的符號判斷問題,即接收端實現y=|h|s+n。由圖2曲線(in fading with CSI)可知,系統得到一定程度恢復,誤碼率減少到接近30%,能夠進行一定的信息傳輸。
5 結語
極化碼編碼的核心在于生成矩陣的構造和信息位的選取,完成從源碼塊到分組碼塊的一個映射,編碼過程方便快捷。SC譯碼采用遞歸算法,各節點的判決值由上一節點直接調用,避免了對各節點判決值的反復計算,很大程度上降低了計算復雜度,加快了譯碼進程。本文主要研究了極化碼在衰落信道的性能,通過構建衰落信道仿真系統,在信號接收端消除乘性干擾。通過研究誤碼率曲線,發現系統傳輸效果有一定程度恢復,能夠進行一定的信息傳輸,可見極化碼的抗衰落性能較好,但信號幅度有所衰減,平均能量被降低,傳輸過程中造成了能量損失。要研發出更好、更實用的極化碼通信系統,還需要更多學者不懈地探索。
參考文獻:
[1] 賀延平.第四代移動通信系統關鍵技術研究[J].電子科技,2011,24(7):160.
[2] M BAKSHI,S JAGGI,M EFFROS.Concatenated polar codes[C].In IEEE International Symposium on Information Theory(ISIT),2011.
[3] 黃偉,徐劍,趙世濤.Turbo碼在短波通信中的應用[J].電子科技,2011,24(9):111.
[4] 肖揚.Turbo與LDPC編解碼及其應用[M].北京:人民郵電出版社,2010.
[5] 樊昌信.通信原理[M].第5版.北京:電子工業出版社,2001.
[6] 吳志忠.移動通信無線電波傳播[M].北京:人民郵電出版社,2002.
[7] ESLAMI A,PISHRO-NIK H.A practical approach to polar codes[J].IEEE International Symposium on Information Theory,2011,42(4):16-20.
[8] 李斌,王學東,王繼偉.極化碼原理及應用[M].通信技術,2012(10):21-23.
[9] ANKAN E.A performance comparison of polar codes and reed—muller codes[J].IEEE Commun.Lett,2008,12(6):447-449.
[10] HOF E,SASON I,SHAMAI S.Polar coding for degraded and non-degraded parallel channels[C].Electrical and Electronics Engineers in Israel (IEEEI),2010 IEEE 26 Convention of.IEEE,2010.
[11] E ARIKAN.Channel polarization:a method for constructing capacity achieving codes for symmetric binary-input memoryless channels[J].IEEE Transactions on Information Theory,2009,55(7):3051-3073.
[12] E ARIKAN.A performance comparison of polar codes and reed-muller codes[J].IEEE Communications Letters,2008,12(6):447-449.
[13] K NIU ,K CHEN.Stack decoding of polar codes[J].Electronics Letters,2012,48(12):695-697.
[14] G D FORNEY JR.Codes on graphs:normal realizations[J].Information Theory IEEE Transactions on,2001,47(2):520-548.
[15] 蘇杰.王琳.趙春雨.規則LDPC碼在瑞利平坦衰落信道下的設計和仿真[J].電訊技術, 2004,44(5):53-56.
[16] 李建東,郭梯云.移動通信[M].第4版.西安:西安電子科技大學出版社,2004.