徐光憲 韓詩棋(遼寧工程技術大學電子與信息工程學院 遼寧 葫蘆島 125105)
2000年,香港中文大學Ahlswede 等提出了網絡編碼[1]的概念。它是從有限網絡上被提出的,中繼上的節點可以采取編碼的方法處理消息。通過NC能大幅度地增加網絡的魯棒性、吞吐量,平衡網絡負載,減小誤碼率,由此NC被大量用于通信傳輸的每個方面。但是節點之間容易存在干擾,影響信息的傳遞,不能直接在具有廣播傳輸性質的無線信道中應用。因此,Zhang等提出了物理層網絡編碼[2]。其基本思想是利用電磁波的疊加特性,充分利用節點之間的干擾,使之變成算法的一部分。
Turbo乘積碼[3]的概念是1954年被提出的,它是由多種子碼構成的一種特殊的碼。被看作是一類級聯碼,其中分組碼要與分組交織器串行在一起。因為Turbo碼的迭代思想,TPC碼將其引入到乘積碼內,因此有著很強的糾錯能力及較低的錯誤平層。TPC碼有著不錯的譯碼能力,在硬件實現上也較其他碼容易。在發現隨機錯誤、突發錯誤后能夠快速地校正,它的代碼結構也不復雜,由簡單的分組碼組成,并且編碼效率高,迭代時延小。當誤碼率一樣時,TPC碼與低密度奇偶校驗碼相比,性能僅差1.1 dB[4]。大量研究證明,TPC碼不僅可以阻擋衰落,在抗干擾方面也有不錯的表現。在靠近信道容量時,還能夠保持高的碼率,并保持優良的性能。TPC碼的子碼構造簡單,容易實現,尤其當通過并行譯碼算法進行譯碼時,可以提升吞吐量,并實現更高的傳輸效率,非常適用于性能要求較高的通信系統,具有很好的應用前景[5-7]。
物理層網絡編碼(PNC)是將廣播時出現的干擾運用起來,以提升信息在信道中傳遞的效率。經過中繼R后,使信號在調制以及解調后、再通過PNC的映射,無線通道中疊加的信號就能夠變成對應的數字的比特流異或。文獻[8]講述了物理層網絡編碼的進展,描述了如今物理層網絡編碼的理論和應用,以及與之結合的新技術和新趨勢,并對理論做出進一步的改進。文獻[9]設計了一種結合RA碼的物理層網絡編碼,避免解出不相關的信息。實驗證明,所提方法可以有效地減小誤碼率,還不會增加復雜度。在文獻[10]中,通過將物理層網絡編碼與Polar碼相結合,避免了在使用LDPC碼與Turbo碼時解碼復雜度高的情況,并與LDPC碼、CC碼進行性能的對比,所提方案降低了系統的復雜度以及信息交換的時間。文獻[11]提出一種PNC-LDPC-BICM-ID相融合的方法,把PNC、低密度奇偶校驗碼和比特交織的調制技術融合在一起,并在中繼處通過雙重迭代來解碼。此方法能夠在已有方案的基礎上,使信息在傳遞時的誤碼率變得更低。
上述研究都能夠使系統的誤碼率降低,并提高系統的穩定性及魯棒性,但在很大程度上加大了實現的復雜性。本文引入了TPC碼作為信道編碼,利用TPC碼編譯碼簡單的優勢,降低系統的復雜度。文獻[12]將LDPC碼和Turbo碼放在一起進行比對,可以觀察到,在低碼率時,Turbo碼的性能比LDPC碼要好,但高碼率時,Turbo碼的表現卻不如LDPC碼,說明Turbo碼隨著碼率的變大而能力下降。TPC碼在碼率較高時依然能維持良好的特性,改善了Turbo碼在碼率較高時性能會下降的缺點。因此提出了將TPC碼與PNC進行結合的方法。
如圖1所示,是最普遍的網絡編碼的系統模型。由相互獨立的信源端點A、B以及中繼點R構成。兩個節點間需要相互通信,但是由于A、B之間沒有直接連接的通路或者兩者之間距離較遠,因此需要借助R節點來交換信息。

圖1 網絡編碼系統模型
通信過程有兩個。在第一個過程中,信息的傳送者A點和B點同時傳遞自身的信息UA和UB給中繼R。假設這個模型是完全同步的,有相同的信號發射功率,并且多址信道服從高斯分布N(0,σR2),則中繼的輸出可表示為YR=XA+XB+NR,其中XA和XB分別是信源A、B點所發送的信息UA和UB經由信道的編碼、調制后的信號,NR為高斯白噪聲。第二個過程,發送過來的信息到R點,通過一系列處理后,被廣播到A、B兩個信宿。首先,R節點將多址信道傳送過來的信號YR進行PNC映射,得到序列CA⊕CB,對此序列進行軟解碼,得到UA⊕UB。再對UR=UA⊕UB進行信道編碼和調制,將完成后的信號XR廣播給信源端點A、B。將XR解調解碼后,A、B將自己原本的信息與之異或,得到對方傳遞的信息。
圖2是中繼信道中由TPC碼和PNC進行結合的系統結構圖。與傳統的網絡編碼方法的差別在于增加了TPC信道編碼。將乘積碼引入了TPC碼的編碼中,乘積碼需要把編碼信息以矩陣的形式表達。第一步先對矩陣每行中的子碼進行編碼,然后在編碼完成之后對矩陣中每列的子碼繼續進行編碼對于一個二維乘積碼來說,令子碼分別為C1(n1,k1,δ1)和C2(n2,k2,δ2),因而TPC編碼可描述為:
P=C1?C2
(1)
① 將k1×k2個信息比特放入k1行k2列的矩陣中。
② 通過子碼C2的規則對k1行實行編碼。
③ 通過子碼C1的規則對n2列實行編碼,獲取有關的矩陣C1?C2。
其中::n代表碼字的長,k代表信息組的位長,δ代表最小漢明距離。碼率為R=R1×R2(Ri=ki/ni是分組碼Ci的碼率)。

圖2 TPC碼與物理層網絡編碼的聯合設計
如圖3所示,TPC碼僅通過簡單的行/列交織器就能得到和卷積Turbo碼使用隨機交織器時差不多相同的性能,不僅簡化了交織器的結構,更減小了系統的操作難度。

圖3 TPC碼的編碼器
多址接入階段:令UA和UB表示信源節點A、B分別要發送的數據信息。對信息序列UA和UB進行碼率相同的TPC編碼后,分別得到對應節點發TPC碼序列CA和CB。設Γ代表編碼映射函數,Γ-1代表譯碼映射函數,因為系統中采用的是相同的信道編碼和譯碼。即CA=Γ(UA),CB=Γ(UB),同樣的有UA=Γ-1(CA),UB=Γ-1(CB)。由于TPC碼是線性碼,所以有:
Γ(UA⊕UB)=Γ(UA)⊕Γ(UB)
經過調制后,將兩個碼字序列分別調制為XA和XB,對應規則為:XA=2CA-1,XB=2CB-1。將調制后的信號經高斯通道一起送往R點,假定R對信號的接收是同步的,則有:YR=XA+XB+NR,其中NR是噪聲項,N(0,σR2),YR為多址接入信道的輸出。
廣播階段:中繼R先對信道輸出信息YR實行PNC映射,得出A、B點發送的信息的異或值CA⊕CB。中繼映射方案如表1所示。

表1 中繼映射方案
表1中為BPSK調制下的中繼映射方法。從表中能夠看出,該方法能夠得出A、B點所發出信息的異或值。討論R點發送到TPC解碼器的軟信息的表達式。R點接收信號的表達式為YR=XA+XB+NR,觀察表1,可看出中繼接收的信息有三種情況:0、-2、2。對應概率如下:
(2)
軟解碼利用對數似然比函數(LLR),即:

(3)
根據表1分析可將上式轉化為:

(4)
對于高斯信道,輸入為x時,輸出信號Y概率為:
(5)
根據對數域軟信息的定義,可得:
(6)
下一步,將得到的軟信息LLR序列傳遞給TPC解碼器中。經chase譯碼后得到UA⊕UB,對該值進行與MAC階段相同的TPC編碼,得到TPC網絡編碼,再通過BPSK調制,經由高斯信道廣播到A、B點。
最后,目標點A、B分別與發送過來的廣播信息進行相關計算,得到所需信息。以目標端點A為例,發送到A點的信號為YA=XR+NA,其中,XR代表R點發出的無線電信號,NA為廣播過程中A接收到的消息的高斯白噪聲(WGN)。對接收的信號異或得到CR⊕CA=(CA⊕CB)⊕CA=CB,就能得到所需的信息。B點也如此,即可結束信源A和B相互的信息傳遞。
圖4為聯合編碼方法和傳統方式編碼方法性能的比較。挑選一樣的擴展漢明碼,當作TPC信道碼的子碼。chase算法譯碼迭代次數設為4次。如圖4所示,在相同的傳輸信道信噪比下,相對于傳統的非協作編碼方式,TPC碼與PNC相結合,將會產生更小的誤比特率。可以看出,與傳統編碼方式相比,聯合信道編碼技術的性能隨著信噪比的增加而有了明顯的改善,在BER為10-4時,有了大于0.5 dB的性能增益。實驗證明,聯合信道編碼可以有效地減小系統的誤比特率。

圖4 聯合編碼系統和傳統方式編碼系統性能
圖5為碼率為2/3情況下的TPC碼、LDPC碼與Turbo碼的性能仿真,選擇的TPC碼為擴展漢明碼,兩個同為(64,57)。碼長為 1 024 bit,解碼方法是Chase 譯碼,最不可靠位是4,而選擇的 LDPC 碼的碼長是1 536 bit,通過BP(Belief Propagation)譯碼來解碼,解碼的最大迭代次數為20。Turbo碼的碼長1 024 bit,采取MAP譯碼的方法,迭代數為8次。從仿真結果可以看出,在此碼率下,LDPC碼比Turbo碼具有更好的性能,TPC碼的性能略高于LDPC碼。說明在碼率較高的時候,TPC碼的性能并沒有下降,改善了Turbo碼在高碼率時性能會下降的不足。

圖5 LDPC碼、Turbo碼與TPC碼性能比較
本文在雙向中繼信道的條件下,采取了TPC碼與物理層網絡編碼的相結合的方法,相比于其他的信道編碼,TPC碼有著更加簡單的編譯碼結構,在一定條件下,既能獲得與LDPC碼相近的性能,還在很大程度上減小了系統編譯碼算法的復雜程度。通過MATLAB仿真圖來看,與傳統的非協作編碼方式相比,聯合信道編碼技術可以減小信息傳遞過程中的誤碼率,提升系統的傳輸性能。在高碼率情況下,仍然有著良好的性能,適用于高碼率的通信環境中。
[1] Ahlswede R,Cai N,Li S Y,et al.Network information flow[J].IEEE Transacions on Information Theory,2000,46(4):1204- 1216.
[2] Zhang S,Liew S C,Lam P.Hot topic: Physical-layer network coding[C]// Proceedings of the 12th Annual International Conference on Mobile Computing and Networking, MOBICOM 2006, Los Angeles, CA, USA, September 23- 29, 2006:358- 365.
[3] 劉東華,向良軍.信道編碼與MATLAB仿真[M].北京:電子工業出版社,2014.
[4] 魏宇星,李紹勝.深空通信信道編碼方式研究[EB/OL]. [2014- 07- 25].http://www.paper.edu.cn/html/relea-sepaper/2014/07/321/.
[5] 郭立浩,蔣培文,鄭雪峰,等.TPC編碼在高碼率數傳中的應用[J].飛行器測控學報,2010,29(5):51- 55.
[6] 安翠珍.光線通信系統中Turbo乘積碼的研究[D].哈爾濱:哈爾濱工業大學,2005.
[7] 朱小輝,熊省軍,謝哲,等.TPC碼在水聲中繼節點中的應用研究[J].聲學與電子工程,2017(2):1- 4.
[8] 趙明峰,周亞建,原泉,等.物理層網絡編碼研究進展[J].計算機應用,2011,31(8):2015- 2020.
[9] Zhang S,Liew S C.Channel coding and decoding in a relay system operated with physical layer network coding[J].IEEE Journal on Selected Areas in Communications,2009,27(5):789- 796.
[10] 樊婷婷,楊維,許昌龍.雙向中繼信道中Polar碼與物理層網絡編碼的聯合設計[J].哈爾濱工業大學學報,2016,48(5):134- 139.
[11] 袁全盛, 王長龍, 胡永江. 基于LDPC-BICM-ID的物理層網絡編碼聯合設計[J].軍械工程學院學報, 2015(3):52- 57.
[12] 李蓉.物理層網絡編碼與信道編碼的聯合設計[D].南京:南京郵電大學,2011.