封芳安 仰楓帆
(南京航空航天大學 南京 210016)
戈帕(Goppa)在1970 年巧妙地構造了一類線性分組碼——Goppa 碼[1~2]。作為交替碼的子類,現研究已經證明,存在某些好的Goppa 碼,性能能達到Gilbert-Varshamov 界[3]。因為Goppa 碼具有不錯的特性,其性質和構造方法以及譯碼方法一直被眾多學者深入的研究。如,McElice 公鑰體制中采用了Goppa碼。因此,對Goppa 碼研究是十分重要的。為應對信道信號衰落問題,分集技術中的編碼協作技術十分有效[4~6]。像LDPC 碼[7]、Turbo 碼[8]、Polar碼[9]等已經被應用于協作通信系統中,然而基于Goppa 碼的協作通信還沒有好好的被研究[10]。本文提出了一種分布式Goppa 碼中繼編碼協作方案,在中繼處提出一種信息選擇的方式,在目的節點構造一個優化的聯合碼。針對該聯合碼的特性,提出了兩種聯合譯碼算法。為Goppa 碼的協作通信系統的應用做出了探索性的研究。仿真結果表明,我們所提出的分布式Goppa 碼中繼編碼協作方案的具有良好的系統性能。
設L={α0,α1,…,αn-1}是一個由n 個不同元素的組成的集合,其中αi?Ω=GF(qm)(q 是質數或質數的冪,m 是正整數),令g(z)?Ω[z]是次數為r的首一多項式(0≤r≤n)且對于所有取自集合L 中的元素都有g(αi)≠0。那么Goppa 碼Γ(L,g(z))是在GF(q)上的所有滿足式()的矢量c=(c0,c1,…,cn-1)的集合。
多項式g(z) 被稱為Goppa 多項式[11]。Goppa碼的校驗矩陣H如下:
Goppa 碼碼長n 為集合L 中元素的數目,信息位k 滿足k≥n-mr,最小距離d 滿足d≥r+1。Goppa碼作為GRS碼的一個子類。Goppa的譯碼[12~14]可以應用BCH碼、RS碼的譯碼方式。
圖1展示了分布式Goppa碼中繼協作方案的模型。單中繼協作模型包含源節點S、中繼節點R 以及目的節點D。中繼節點采用半雙工傳輸模式,所有節點均使用單個天線發送和接收信號。由源節點生成的序列m 需要兩個時隙和兩組不同的Goppa 碼在信道上傳輸。Goppa 碼C1(N,K1,d1)和C2(N,K2,d2)(K2≤K1)分別用在源節點和中繼節點。

圖1 分布式Goppa中繼協作方案系統模型
在時隙1,信息序列m 進入系統Goppa 編碼器C1(N,K1,d1)得到碼序列c1。經過BPSK調制后,源節點向中繼節點和目的節點廣播發送調制信號xS。中繼節點和目的節點分別收到信號ySR和ySD。
其中h是信道衰落系數,n是加性高斯白噪聲。
在時隙2,解調信號ySR得到序列r1,然后將序列r1送入Goppa 譯碼器,通過歐幾里得譯碼算法得到估計信息序列m1。在中繼處從序列m1里挑選K2位信息符號作為第二組Goppa 碼的信息序列m2。序列通過系統Goppa編碼器C2(N,K2,d2)得到碼序列c2。在BPSK 調制之后,中繼節點廣播給目的節點發送調制信號xR。目的節點將從兩路接收到的信號串聯得到聯合信號y=[ySD,yRD]。將聯合信號y解調后得到的聯合估計碼序列[r1,r2]進行聯合譯碼,最終得到估計信息序列。
中繼處的信息選擇是在目的節點構建聯合碼的關鍵。不同的信息選擇模式會導致目的節點處的聯合碼結構不同,從而影響編碼協作方案的整體性能。假設聯合碼的最小漢明距離為d3,我們希望最小距離d3盡可能的大,然而可能存在多種選擇方式使得最小距離一樣大。在這種情況下,提出一種確定選擇方式的標準。我們采用使得具有最小重量為d3的碼字c 的數目盡可能小的選擇模式。通過該方法選擇的聯合碼相對于最小距離相同的其他聯合碼具有更好的碼重分布。具體步驟如下:
1)我們考慮只有一位是非零的,其余位置都是0 的消息序列,對其進行編碼,找到碼字重量等于最小距離的碼字,并將這些對應的非0 位置存儲在集合τ中。從恢復K1個消息比特中挑選K2位信息,為了增加目的節點聯合碼的最小距離,則必須選擇集合τ中元素的對應位置。因此,K2個位置中有τ位已經被確定,其余的位置再隨機選擇。把所有的選擇模式都記錄在集合B中。
2)將生成的碼字重量為d1的所有消息序列存儲在集合A 中。所有這些序列都通過集合B 中的挑選方式挑選后對其進行編碼,將兩段碼字聯合后,確定聯合碼字的碼重d=d1的碼字數量v。尋找碼重為d1最小碼字數量v 對應的挑選方式,如果只有一種挑選方式滿足,即為優化的選擇模式。如果最小數量v 對應的挑選方式有多種,則通過這些挑選方式挑選后,編碼確定聯合碼碼字重量d=d1+1的碼字重量v,尋找碼重為d1最小碼字數量v 對應的挑選方式,如果還有多種選擇模式,增大碼字重量d,重復上述步驟,繼續篩選直到剩下最佳的選擇模式。
聯合譯碼是分布式編碼協作系統的關鍵。基于提出的分布式Goppa 編碼協作方案,提出了兩種聯合譯碼算法,具體細節如下。
并行聯合譯碼如圖2 所示。Goppa1和Goppa2譯碼器分別對解調序列r1和r2進行譯碼得到估計信息序列和。由于C2(N,K2,d2)相對于C1(N,K1,d1)有更多的校驗位以及更大的最小距離,在相同條件下,C2的誤碼率性能更加優秀,因此將序列按之前的選擇方式替換,最終輸出序列。

圖2 并行聯合譯碼方案
串行聯合譯碼如圖3 所示。通過Goppa2譯碼器對解調序列r2進行譯碼得到估計信息序列。由于使用系統碼,解調序列r1由信息序列m1和奇偶校驗序列p1組成,將序列中的K2個元素按先前的選擇方式替換,獲得序列。該序列送入Goppa1譯碼器進行譯碼得到最終估計信息序列。

圖3 串行聯合譯碼方案
基于本文提出的分布式Goppa 碼中繼協作系統,我們采用兩組參數分別為Goppa1(31,21,5)和Goppa2(31,16,7)的碼。它們的集合L都是取自GF(25)中的所有非零元素。g1(z)=z2+z+1 和g2(z)=z3+z+1 分別為它們的Goppa 多項式,該多項式系數同樣取自于GF(25)。在仿真中,均采用BPSK 的調制方式以及歐幾里得迭代譯碼算法,在高斯信道和瑞利快衰落信道傳輸106幀數據。設γS,D,γS,R,γR,D分別為源到目的節點的信噪比,源到中繼節點的信噪比和中繼到目的節點的信噪比。因為中繼節點相對于源節點更靠近目的節點,假設γR,D=γS,D+2dB,和在理想狀態(γS,R=∞)下傳輸。
基于上述信息選擇方案,最佳選擇方式的{2,4,5,7,9,10,11,12,13,14,15,16,18,19,20,21},假設隨機選擇方式是挑選前K2位,均采用串行譯碼算法。由圖4 和圖5 可知,我們所提出的中繼信息選擇方案無論在高斯信道下還是在瑞利快衰落信道下,誤碼率性能明顯優于隨機的信息選擇方式。在高斯信道下,在誤碼率等于10-5時,大約有0.7dB的性能提升;在瑞利快衰落信道下,誤碼率為2×10-5,約有1.7dB的性能提升。

圖4 AWGN信道下不同選擇方式的性能比較

圖5 瑞利快衰落信道下不同選擇方式的性能比較
圖6展示了所提出的分布式Goppa碼協作方案采用不同譯碼算法在AWGN 信道下的仿真曲線。從仿真曲線中可以看出,本文提出的Goppa 碼中繼協作系統明顯優于非協作系統,并且所提出的串行譯碼算法優于并行譯碼算法。在誤碼率為10-5時,串行譯碼算法對于并行譯碼算法約有0.7dB 的性能增益。

圖6 AWGN信道下不同譯碼算法的性能比較
圖7展示了所提出的分布式Goppa碼協作方案采用不同譯碼算法在快衰落信道下的仿真曲線。

圖7 瑞利快衰落信道下不同選擇方式的性能比較
從仿真曲線中可以看出,本文提出的Goppa 碼中繼協作系統明顯優于非協作系統,并且所提出的串行譯碼算法優于并行譯碼算法。在誤碼率為2×10-5時,串行譯碼算法對于并行譯碼算法約有1.8dB的性能增益。
基于對Goppa 碼和協作通信的研究,本文提出了一種分布式Goppa 編碼協作系統,在該系統上提出了中繼信息選擇方法,來使得目的節點獲得優化的聯合碼。基于聯合碼的特性,提出了并行聯合譯碼和串行聯合譯碼算法。通過在AWGN 信道和瑞利信道的仿真,中繼處的適當的信息選擇方法對于隨機選擇更具優勢,此外,串行譯碼算法比并行譯碼算法的性能更好,與非協作方案的比較表明所提出的分布式Goppa 編碼方案是有效的。在未來的工作,我們致力尋找性能更好的Goppa 碼和降低中繼信息選擇算法的復雜度。