丘選鋒, 趙宏宇
(西南交通大學(xué)信息編碼與傳輸省重點(diǎn)實驗室,四川 成都 610031)
1993年出現(xiàn)的Turbo碼,以接近香農(nóng)限的性能證明了信道編碼定理的正確性[1]。采用迭代譯碼是Turbo碼優(yōu)異性能的重要原因。但迭代譯碼的時延較大。并行譯碼方案則能夠顯著地降低時延,但交織器的隨機(jī)置換可能引起存儲器的地址爭用問題[2]。對此,提出了并行交織器?,F(xiàn)有的并行交織器主要有:二次置換多項式交織器(QPP)[3],行列 S交織器[4-5]。3GPP則采用在短交織塊時有較好性能的QPP交織器[6]。但QPP交織器的系數(shù)選擇有嚴(yán)格的限制[3]。行列S型交織器則是通過行和列的S交織產(chǎn)生的,對整個交織器,其S值不固定且偏小。對此,文中提出了一種新的并行交織器設(shè)計方案,S值是基于整個交織長度設(shè)定的。
設(shè) X={x1,x2,…,xN}為交織器的輸入比特序列,xi∈{0,1},1≤i≤N。經(jīng)過交織器置換后輸出Y={y1,y2,…,yN}, yi∈{0,1}, 1≤j≤N。Y 包含了 X 的所有元素,但排列順序不同。X與Y之間存在一一對應(yīng)關(guān)系。定義集合ZN={1,2,…,N},則可用一個下標(biāo)映射函數(shù)π()i來定義交織器π()i:,ij→ ,ij∈ZN。
考慮交織器π(),i并行度為M,分塊長W。并行譯碼時,M個外信息被要求同時寫入存儲陣列中,定義函數(shù) ()Mi表示存儲陣列中存儲器的位置, ()Si表示存儲器中的位置,則π(i)=(M(i), S(i)) →{1,2,…,M}×{1,2,…,W}具有以下含義:第i個外信息被寫入到存儲陣列中第 ()Mi個存儲器中 S(i)的位置上,并行無沖突表現(xiàn)為對 ()Mi的限制;
第 j個時序,寫入存儲陣列中的 K個外信息K = j, j + W ,… , j + ( M - 1)W 若滿足:
則存儲器爭用問題可避免。
設(shè)π(i)表示ZN上的一個交織函數(shù),若π(i)滿足:
對 任 意 的 i,j∈ZN且0<|i - j |≤ S , 有|π(i) - π (j) |≥ S[7]。則 π(i)為 S型交織器。參數(shù) S稱為延展因子。對比均勻交織器,由于S參數(shù)約束的引入,S型交織器獲得了更好的性能。S值越大,性能越好, S值上限近似為[8]。
長度為 N的交織器π(i),分 M 塊,每塊長為W=N/M。首先生成一個M×W的矩陣,矩陣的每列元素均為{1,2,…,M}的隨機(jī)排列,表示同一時刻信息映射到存儲陣列中的不同存儲器位置。而存儲器中的具體位置用隨機(jī)方法產(chǎn)生。選擇 S <N/2, 設(shè)NB=2N表示對序列 St(1), St(2),…, St(W)進(jìn)行循環(huán)左移的最大次數(shù),NR=N表示生成數(shù)組M[N]和隨機(jī)序列St(W)的最大次數(shù)。具體生成算法如下:
1)初始化變量Nr=0,Nb=0。
2) Nr=Nr+1,如果Nr=NR,令S=S-1,返回1);如果Nr 3)生成 M 組隨機(jī)排列,第 t組 St的元素為{(t-1)×W+1,(t-1)×W+2,…,(t-1)×W+W}的隨機(jī)排列,初始化nt=1,St[nt]表示第t組隨機(jī)排列St中的第nt個元素,t={1,2,…,M}。 4)當(dāng) i =1,在產(chǎn)生最終交織映射地址 π[1]前,判斷 M[1]的值,假如 M[1]=t,t∈{1,2,…,M},則令π[1]= St[nt],nt=nt+1;當(dāng)i >1時,判斷M[i]的值,假如 M[i]=t,t∈{1,2,…,M},則令 π[i]= St[nt],判斷 π[i]是否滿足以下條件: 若滿足,令i=i+1,nt=nt+1;若不滿足,則交換St[nt]和 St[k],k>nt,若所有的 k=nt+1,nt+2,…,W 都不滿足上述條件,則轉(zhuǎn)到5)。 5) Nb= Nb+1;如果Nb= NB,令Nb=0,返回步驟2);如果Nb ①t[1]~t[W-nt+1]= St[nt]~ St[W]; ②t[W-nt+2]~t[W]= St[1]~ St[nt-1]; ③St[1]~ St[W]=t[1]~t[W]; 且令 i=1,n1~nW=1,返回步驟 4)。 6)重復(fù)以上步驟,直到N個交織輸出都獲得。 在信噪比較大時,誤碼率由最小重量碼字決定。因此可用自由距離來估計和比較不同交織器的性能。在計算不同交織塊長的turbo碼自由距離時, 采用3GPP標(biāo)準(zhǔn)turbo碼,碼率為1/3。對每個交織塊長,各生成100個行列S隨機(jī)交織器,S隨機(jī)交織器和文中建議的交織器。通過約束字碼算法[9]計算使用每一個交織所生成的turbo碼自由距離,然后求出3種類型交織器的平均自由距離和100個交織器中的最大自由距離。結(jié)果列在表1中。從表1中可以看到,使用S型交織器的turbo碼字具有較大的自由距離,其次是采用文中方案交織器的turbo碼。而采用行列S型交織器的turbo碼的自由距離最小。這是因為它的S值偏小。并行度為4時,從表中可以看到文中給出的交織器S值接近 /2N 。 表1 交織器和相應(yīng)的turbo碼自由距離 仿真使用生成多項式為(1,13/15)octal的8狀態(tài)編碼器,碼率1/3;采用BPSK調(diào)制和高斯信道。譯碼用Max-Log-Map算法,迭代次數(shù)為4。仿真對比采用S型、行列S型、QPP和文中方案交織器的turbo碼譯碼性能。仿真結(jié)果如圖1和圖2所示。仿真中使用的3種交織器都是從100個相同類型交織器中選出的具有最大自由距離的交織器。從圖 1和圖 2可以看到S隨機(jī)交織器性能最佳,但它不具備并行特征。其次就是文中建議的交織器,而最佳Ω'參數(shù)的QPP和行列S隨機(jī)交織器性能則相對偏差。 圖1 誤碼率(M=4) 圖2 誤碼率(M=8) S隨機(jī)交織器是一種性能優(yōu)異的交織器,但它不具備無沖突特性。而把S型交織設(shè)計成具有無沖突的特性是一種相對較好和靈活的路線。文中設(shè)計方案延續(xù)了以往的并行S隨機(jī)交織器設(shè)計方法并且針對現(xiàn)有的并行S隨機(jī)交織器S參數(shù)值較小的缺點(diǎn),提出了一種新的并行S隨機(jī)交織器算法。由于S參數(shù)的改進(jìn),使用文中交織器的turbo碼有較大自由距離和較好的誤碼率并且能夠明顯地降低譯碼時延。 [1] 孫麗楠,王學(xué)東.Turbo乘積碼快速編碼 FPGA實現(xiàn)[J].信息安全與通信保密,2007(04):44-46. [2] 黃卉,王輝.高速并行 Turbo譯碼中的交織器技術(shù)研究[J].通信技術(shù),2008,41(06):83-85. [3] RYU J,TAKESHITA O Y.On Quadratic Inverses for Quadratic Permutation Polynomials over Integer Rings[J]. IEEE Trans. Inf. Theory, 2006, 52(03):1255-1257. [4] GAZI O,YILMAZ O.Collision Free Row Column S-random Interleaver[J]. IEEE Commun.lett., 2009,13 (04):257-259. [5] 史堯,李博.Turbo碼并行譯碼中無沖突交織設(shè)計方案[J].通信技術(shù),2010,43(08):137-139. [6] European Telecommunications Standards Institute 2013. LTE; Evolved Universal Terrestrial Radio Access (E-UTRA); Multiplexing and channel coding(3GPP TS 36.212 version 10.6.0 Release 10)[S]. ETSI TS 136 212 v10.7.0(2013-02), Sophia Antipolis Cedex - FRANCE: ETSI 3rd Generation Partnership Project (3GPP), 2013:11-16. [7] 郭璐,薛敏彪,黃鶯,等.Turbo碼中交織器的綜合性能分析與設(shè)計[J].信息安全與保密,2006(09):72-74. [8] DIVSALAR D,POLLARA F.Turbo Codes for PCS Applications[C]//IEEE Int. Conf. on Commun. (ICC’95).Seattle: IEEE Conference Publications, 1995:54-59. [9] GARELLO R, PIERLEONI P,BENEDETTO S. Computing the Free Distance of Turbo Codes and Serially Concatenated Codes with Interleavers: Algorithms and Application[J]. IEEE.J.Select. Areas Commun.,2001,19(05):800-812.2.2 性能驗證
3 仿真結(jié)果及分析
4 結(jié)語