《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > IEEE 802.16e標(biāo)準(zhǔn)中LDPC編碼的實(shí)現(xiàn)與仿真
IEEE 802.16e標(biāo)準(zhǔn)中LDPC編碼的實(shí)現(xiàn)與仿真
2014年電子技術(shù)應(yīng)用第9期
寧 平
上海航天電子技術(shù)研究所,上海201109
摘要: 根據(jù)IEEE802.16e標(biāo)準(zhǔn)中LDPC編碼的定義,提出了一種利用高速狀態(tài)機(jī)來實(shí)現(xiàn)編碼的快速算法。在Quartus II下使用Verilog HDL實(shí)現(xiàn)了該算法并進(jìn)行了時(shí)序仿真。仿真結(jié)果表明,設(shè)計(jì)具有良好的實(shí)時(shí)性,克服了以往設(shè)計(jì)中預(yù)處理復(fù)雜、消耗邏輯資源多的缺點(diǎn)。最后利用MATLAB對(duì)該設(shè)計(jì)與DVB-S2縮短碼的BER性能進(jìn)行了比較,分析了制約DVB-S2縮短碼性能的因素。
中圖分類號(hào): TN919.3+3
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)09-0101-04
The implementation and simulation of IEEE 802.16e LDPC coding
Ning Ping
The Institute of Shanghai Aerospace Electronics Technology,Shanghai 201109,China
Abstract: According to the definition of IEEE802.16e LDPC coding, this paper proposes a high-speed state machine to achieve fast coding algorithm. This algorithm is realized under the Quartus II environment by using Verilog HDL and timing simulation is also made. The results show that the design has a good real-time performance. It overcomes the shortcomings of complex pre-processing and consumption of logic resources. Finally, the BER performances between this design and shortened DVB-S2 codes are compared under MATLAB. The facts which can restrict shortened DVB-S2 code performance are also analyzed.
Key words : LDPC coding;IEEE802.16e standard;base check matrix

    LDPC(Low Density Parity Check Code)碼是一種性能優(yōu)異的線性分組碼,其性能非常接近于Shannon極限且具有很強(qiáng)的糾錯(cuò)能力。但自LDPC碼被發(fā)明以來就存在一個(gè)阻礙其發(fā)展的巨大障礙。眾所周知,一般的線性分組碼是通過其生成矩陣實(shí)現(xiàn)編碼。而LDPC碼的校驗(yàn)矩陣雖然是稀疏的,但生成矩陣卻不是稀疏矩陣。由于LDPC碼的編碼長度都很長,因此復(fù)雜的生成矩陣為編碼帶來了巨大困難。后來,人們利用其校驗(yàn)矩陣的特點(diǎn)實(shí)現(xiàn)了快速編碼。即便如此,當(dāng)碼長很長時(shí)編碼所需的存儲(chǔ)空間仍然非常龐大,學(xué)者們也在不斷探索高性能的編碼方法。

    目前,LDPC碼已開始逐漸應(yīng)用于空間通信、光纖通信、數(shù)字視頻和音頻廣播等領(lǐng)域。LDPC碼的編碼標(biāo)準(zhǔn)主要有:DVB-S(DigitalVideoBroadcasting-Sa-tellite)標(biāo)準(zhǔn)、DVB-S2[1]標(biāo)準(zhǔn)、CCSDS(Consultative Committee for Space Data Systems)標(biāo)準(zhǔn)[2]、GB20600標(biāo)準(zhǔn)[3]、IEEE802.16e標(biāo)準(zhǔn)[4]等。LDPC編碼已經(jīng)在IEEE802.16e標(biāo)準(zhǔn)中作為專用傳輸碼使用。DVB-S2是新一代數(shù)字衛(wèi)星廣播的標(biāo)準(zhǔn),與DVB-S標(biāo)準(zhǔn)相比,其傳輸容量增益可達(dá)30%。CCSDS標(biāo)準(zhǔn)中的LDPC碼包括近地和深空應(yīng)用。GB20600標(biāo)準(zhǔn)中的LDPC碼主要用于數(shù)字電視地面廣播系統(tǒng)。本文主要研究IEEE 802.16e標(biāo)準(zhǔn)中LDPC碼快速編碼的實(shí)現(xiàn)方法,并將其與DVB-S2標(biāo)準(zhǔn)的LDPC縮短碼的性能進(jìn)行比較。

1 IEEE802.16e標(biāo)準(zhǔn)中的LDPC碼校驗(yàn)矩陣的構(gòu)造方式

    IEEE802.16e標(biāo)準(zhǔn)中定義的LDPC碼是一種準(zhǔn)循環(huán)的非規(guī)則LDPC碼,共有4種速率[4]。每一種速率都有相應(yīng)的校驗(yàn)矩陣H。Hb是H的基校驗(yàn)矩陣,Hb經(jīng)過擴(kuò)展后可得到H,Hb的尺寸為mb×nb,具體構(gòu)成見式(1)。nb的長度固定為24,mb的長度根據(jù)碼速率不同而異。Hb1是一個(gè)mb×(nb-mb)矩陣。Hb2是一個(gè)mb×mb矩陣。q稱為擴(kuò)展系數(shù),Hb可通過mb·q×nb·q的擴(kuò)展方式獲得校驗(yàn)矩陣H。

    tx5-gs1.gif

    Hb1中的元素由-1或非負(fù)整數(shù)組成,若為-1,則校驗(yàn)矩陣H相應(yīng)的位置是全0矩陣;若為非負(fù)整數(shù),則校驗(yàn)矩陣H相應(yīng)的位置是單位矩陣E進(jìn)行非負(fù)整數(shù)次右移所得的矩陣。Hb2的第一列中h(1)、h(r)、h(mb)為非負(fù)整數(shù),且h(1)=h(mb)。r的取值范圍為2≤r≤mb-1,其具體值由IEEE802.16e標(biāo)準(zhǔn)指定。Hb2除第一列外,其余部分構(gòu)成準(zhǔn)雙對(duì)角線結(jié)構(gòu),兩條準(zhǔn)對(duì)角線上的元素為0,其他位置為-1。Hb2的元素構(gòu)成見式(2)。

tx5-gs2.gif    

    根據(jù)IEEE802.16e標(biāo)準(zhǔn),基矩陣Hb的擴(kuò)展系數(shù)q共有19種取值,分別對(duì)應(yīng)19種碼長,最小為24,最大為96,具體的擴(kuò)展規(guī)則見參考文獻(xiàn)[4]。設(shè)基校驗(yàn)矩陣中處于位置(i,j)的元素為q(i,j)。以1/2速率的LDPC碼為例,當(dāng)q=96時(shí),1/2速率的LDPC碼的基校驗(yàn)矩陣為式(3),q(i,j)的更新方法見式(4),tx5-gs2-1.gif表示向下取整。

tx5-gs3.gif

tx5-gs4.gif

2 IEEE802.16e標(biāo)準(zhǔn)中LDPC碼的FPGA實(shí)現(xiàn)

2.1 LDPC碼的快速編碼算法

tx5-gs4-1.gif

    tx5-gs5.gif

    將線性方程組式(5)中的各行都加在第一行,可推出:

tx5-gs6-9.gif

2.2 快速編碼算法的FPGA實(shí)現(xiàn)

    以q=24、速率為1/2的LDPC碼為例,其基校驗(yàn)矩陣根據(jù)式(3)、(4)計(jì)算可得到式(10),其中mb=nb-mb=kb=12。

tx5-gs10.gif

    根據(jù)式(6)可推得:

tx5-gs11.gif

    設(shè)輸入序列s的長度為mb·q,每個(gè)時(shí)鐘上升沿輸入的位寬為q,即每次輸入為si。可以定義kb個(gè)寄存器ZH,每個(gè)寄存器的位數(shù)為q位。利用上述寄存器來存儲(chǔ)輸入序列與基矩陣每一列的乘積,這個(gè)乘積在每個(gè)時(shí)鐘周期進(jìn)行更新。在更新時(shí)需計(jì)算當(dāng)前值與乘積值的異或。在校驗(yàn)位計(jì)算中經(jīng)常需要計(jì)算tx5-gs11-1.gif的乘積,tx5-gs11-2.gif表示基校驗(yàn)矩陣Hb1中位于(i,j)位置的元素。由于該元素表示單位矩陣的移位,所以其與輸入數(shù)據(jù)序列sj的乘積等效為輸入數(shù)據(jù)序列的循環(huán)移位。當(dāng)單位矩陣是右移時(shí),乘積等效為輸入序列的循環(huán)右移;當(dāng)單位矩陣是左移時(shí),乘積等效為輸入序列的循環(huán)左移。利用這個(gè)特性可以大大簡化序列與矩陣之間的乘法運(yùn)算。圖1表示編碼的詳細(xì)計(jì)算流程。在序列s12輸入后,每個(gè)ZHi(i=1,2…12)寄存器中就會(huì)得到tx5-gs11-3.gif 

tx5-t1.gif

    將上述編碼方法用HDL在Quartus II中實(shí)現(xiàn),并分別在EP2C70F896C6、EP2S15484C3上實(shí)現(xiàn)綜合和布線。邏輯資源占用情況如表1所示。對(duì)于不同的器件,消耗的邏輯資源各異,同時(shí)布線后邏輯單元的延遲也不盡相同。使用Stratix II系列的器件相比Cyclone II系列的器件的時(shí)鐘頻率提高了約50%??梢灶A(yù)見,如果提升輸入和輸出的位寬,邏輯單元間附加延遲會(huì)導(dǎo)致時(shí)鐘頻率略有降低,但由于并行度的增加,將顯著提升數(shù)據(jù)吞吐速率。

tx5-b1.gif

    在EP2C70F896C6上的時(shí)序仿真如圖2所示。在仿真開始前首先復(fù)位使系統(tǒng)進(jìn)入初始狀態(tài)。工作時(shí)鐘為50 MHz,輸入序列s1=FF0000,s2=s3=…=s11=000000,s12=FFFFFF。輸出的校驗(yàn)碼序列為p1=F87C7B,p2=F0F8F7,…。在原碼輸出與校驗(yàn)位輸出之間有一個(gè)等待周期。與參考文獻(xiàn)[5]相比,考慮到預(yù)處理的時(shí)間以及輸入和輸出均需要大長度高速串/并、并/串轉(zhuǎn)換,實(shí)際的系統(tǒng)性能會(huì)有一定程度下降。與參考文獻(xiàn)[5]、[6]相比,本設(shè)計(jì)利用高速狀態(tài)機(jī)實(shí)現(xiàn),具有實(shí)時(shí)性強(qiáng),不需要進(jìn)行大長度串/并、并/串轉(zhuǎn)換的優(yōu)點(diǎn),而且也不需要對(duì)基矩陣進(jìn)行預(yù)處理和分割,對(duì)輸入/輸出的制約小,具有較高的性能。

tx5-t2.gif

3 IEEE802.16e和DVB-S2標(biāo)準(zhǔn)ldpc碼的性能比較

    本設(shè)計(jì)實(shí)現(xiàn)了q=24下,1/2速率的IEEE802.16e標(biāo)準(zhǔn)的LDPC碼的快速編碼。根據(jù)圖3左圖所示,在q=24時(shí)其HT·H結(jié)果中只有主對(duì)角線上的元素大于1,其他元素均小于等于1。根據(jù)參考文獻(xiàn)[7],本校驗(yàn)矩陣中無4環(huán),具有良好的譯碼性能。DVB-S2標(biāo)準(zhǔn)的LDPC碼分為長碼和短碼兩種,長度分別為64 800 bit和16 200 bit。由于碼長較長,LDPC碼編解碼器實(shí)現(xiàn)具有相當(dāng)難度,因此將本設(shè)計(jì)與DVB-S2標(biāo)準(zhǔn)的LDPC縮短碼比較,縮短方法見參考文獻(xiàn)[8]。由于長度24·q=576的IEEE802.16e標(biāo)準(zhǔn)LDPC碼沒有適當(dāng)?shù)膓1值可使DVB-S2縮短碼的碼長與之相等,取q1=15,速率為1/2,則DVB-S2縮短碼的碼長為n=600。在高斯白噪聲信道中進(jìn)行性能仿真。仿真信道的調(diào)制方式為BPSK,采用BP譯碼算法,最大迭代次數(shù)為500次。對(duì)于200幀隨機(jī)數(shù)據(jù),每幀長度分別為288 bit和300 bit,分別進(jìn)行編碼調(diào)制和接收譯碼。最后的仿真曲線如圖4所示??梢娫诖a長基本相同的條件下,IEEE802.16e標(biāo)準(zhǔn)的LDPC碼較DVB-S2縮短碼具有優(yōu)異的BER性能。圖3右圖是n=600的情況下DVB-S2縮短碼的HT·H數(shù)值分布。由圖中可見有大量4環(huán)位于校驗(yàn)矩陣H中,這也是其BER曲線中存在誤碼平臺(tái)的原因。

tx5-t3.gif

tx5-t4.gif

    本文對(duì)IEEE802.16e標(biāo)準(zhǔn)的LDPC碼的快速編碼算法進(jìn)行了研究,并在FPGA上實(shí)現(xiàn)了q=24、n=576、速率為1/2的LDPC碼快速編碼器。時(shí)序仿真的結(jié)果顯示該編碼器具有良好的實(shí)時(shí)編碼性能,資源占用少,性能優(yōu)良。同時(shí),該編碼器具有良好的可擴(kuò)展性。當(dāng)q不同時(shí),只要增加并行輸入輸出的位寬和內(nèi)部寄存器位數(shù)即可靈活改變碼長。其誤碼率在相同的信噪比下優(yōu)于長度相近的DVB-S2標(biāo)準(zhǔn)的LDPC縮短碼。因此,該編碼器具有良好的實(shí)用價(jià)值。

參考文獻(xiàn)

[1] DVB-S2 standard draft ETSI EN 302 307 V1.1.1[S].2004.

[2] CCSDS131.1-0-2.Low density parity check codes for use in near-earth and deep space applications[S].CCSDS,2007.

[3] 中華人民共和國國家標(biāo)準(zhǔn).數(shù)字電視地面廣播標(biāo)準(zhǔn)(GB20600)[S].2006.

[4] IEEE P802.16e/D8[S].IEEE Standard for Local and Metropo-litan Area Networks Part 16:Air Interface for Fixed and Mobile Broadband Wireless Access Systems,May 2005.

[5] 李超,石磊.基于IEEE802.16e標(biāo)準(zhǔn)的LDPC編碼器設(shè)計(jì)與實(shí)現(xiàn)[J].電子科技,2011,24(6):40-42.

[6] 俞華梁,毛志剛,張函雋.IEEE802.16e標(biāo)準(zhǔn)的LDPC編碼器設(shè)計(jì)及硬件實(shí)現(xiàn)[J].信息技術(shù),2008(4):63-66.

[7] XIAO Y,LEE M H.Low complexity MIMO-LDPC CDMA systems over multipath channels[J].IEICE Trans.,2006,89(5):1713-1717.

[8] 肖揚(yáng).Turbo與LDPC編解碼及其應(yīng)用[M].北京:人民郵電出版社,2010.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。