《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 微波|射頻 > 設(shè)計應(yīng)用 > 吉比特里所碼和卷積碼級聯(lián)譯碼器設(shè)計
吉比特里所碼和卷積碼級聯(lián)譯碼器設(shè)計
2014年電子技術(shù)應(yīng)用第9期
陳 珍1,高 波2
1.南京大學(xué) 金陵學(xué)院,江蘇 南京210000; 2.清華大學(xué) 電子工程系,北京100084
摘要: 針對60-GHz無線個域網(wǎng),提出了一種吉比特里所碼和卷積碼級聯(lián)譯碼器架構(gòu)。在推薦級聯(lián)架構(gòu)中,里所碼和卷積碼分別作為外碼和內(nèi)碼,通過交織器級聯(lián)。采用基于Viterbi算法的8路并行卷積譯碼結(jié)構(gòu)和基于RiBM算法的里所碼譯碼結(jié)構(gòu),實現(xiàn)了超高速級聯(lián)譯碼器。在TSMC 0.13 μm CMOS工藝下,該譯碼器以0.135 nJ/bit和5.19 mm2的能耗資源開銷實現(xiàn)了高達(dá)2 Gb/s的吞吐率。
中圖分類號: TN393
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2014)09-0048-03
Multi-gigabit concatenated Reed-Solomon and convolution codes decoder
Chen Zhen1,Gao Bo2
1.Jinling College,Nanjing University,Nanjing 210000,China;2.Department of Electronic Engineering,Tsinghua University,Beijing 100084,China
Abstract: In this paper, a multi-gigabit concatenated Reed-Solomon(RS) and convolution codes(CC) decoder architecture is proposed for the 60-GHz wireless personal-area network(WPAN). In the proposed architecture, the RS and CC codes are used as outer and inner codes, which are concatenated by interleaver. This paper designs the ultra-high-speed concatenated decoder via adopting a Viterbi-based parallel-8 CC decoding structure and an RiBM-based RS decoding structure. In TSMC 0.13 ?滋m CMOS technology, the decoder achieves up to 2 Gb/s throughput with the overhead of 0.135 nJ/bit and 5.19 mm2.
Key words : Reed-Solomon codes(RS);convolution codes(CC);concatenated decoder architecture;60-GHz wireless personal-area network(WPAN);high throughput

    憑借著高端7 GHz無需授權(quán)頻譜資源,60-GHz無線個域網(wǎng)已經(jīng)成為了短距離吉比特?zé)o線傳輸?shù)闹匾鉀Q方案[1]。而由于超高的頻點,相位噪聲和功放非線性等射頻非理想因素嚴(yán)重影響著60-GHz無線個域網(wǎng)的系統(tǒng)性能。參考文獻(xiàn)[2]中指出,在考慮射頻非理想因素影響下,里所碼[3]RS(Reed-Solomon codes)和卷積碼[4]CC(convolution codes)級聯(lián)碼可以取得比低密度奇偶校驗碼LDPC(Low-Density Parity-Check)編碼更為魯棒的譯碼性能。因此,針對60-GHz無線個域網(wǎng)系統(tǒng),本文提出了一種吉比特低復(fù)雜度RS-CC級聯(lián)譯碼器架構(gòu)。

1 RS-CC級聯(lián)碼

    根據(jù)IEEE 802.15.3c標(biāo)準(zhǔn)[5],本文設(shè)計了吉比特RS-CC級聯(lián)編碼模式,如圖1所示。作為RS(255,239)截斷碼,RS(224,208)又為級聯(lián)碼外碼,每個塊包含208個8-bit輸入符號。經(jīng)過RS編碼,RS編碼器每個塊輸出224個8-bit符號。通過32×32交織器,RS編碼結(jié)果串/并轉(zhuǎn)換后進(jìn)行卷積碼編碼。本文采用CC(3,1,7)編碼器為級聯(lián)碼內(nèi)碼。卷積碼的約束長度為7,生成多項式為(1338,1718,1658),基本碼率為1/3。為了獲得高吞吐率,使用8路CC獨立編碼。經(jīng)過IEEE 802.15.3c標(biāo)準(zhǔn)制定的打孔刪除操作,產(chǎn)生1/3、1/2、4/7、 2/3、4/5 5種內(nèi)碼碼率。最終數(shù)據(jù)經(jīng)并/串轉(zhuǎn)換,輸出編碼結(jié)果。

jcdl7-t1.gif

2 吉比特RS-CC級聯(lián)譯碼器設(shè)計

    吉比特RS-CC級聯(lián)譯碼器由8個獨立CC(3,1,7)譯碼器、32×32解交織、RS(224,208)譯碼器等模塊組成,如圖2所示。輸入的譯碼數(shù)據(jù)經(jīng)串/并轉(zhuǎn)換后分別輸入對應(yīng)的8個獨立CC(3,1,7)譯碼器。CC(3,1,7)譯碼器的譯碼輸出經(jīng)過并/串轉(zhuǎn)換后進(jìn)行32×32解交織;解交織后數(shù)據(jù)輸入到RS(224,208)譯碼器,最終獲得級聯(lián)碼譯碼結(jié)果。

jcdl7-t2.gif

2.1 基于Viterbi譯碼算法的CC(3,1,7)譯碼器

    Viterbi譯碼算法是1967年由Viterbi提出的一種最大概率譯碼算法[6]。作為CC的最優(yōu)譯碼算法,Viterbi譯碼算法被廣泛應(yīng)用于2G、3G以及衛(wèi)星通信等多種通信系統(tǒng)中[4]。基于RS-CC級聯(lián)碼結(jié)構(gòu),本文給出了基于Viterbi算法的CC(3,1,7)譯碼器設(shè)計,整體結(jié)構(gòu)如圖3所示。因為使用8路CC獨立編碼,所以8個相同的CC譯碼器獨立譯碼。

jcdl7-t3.gif

     接收到的譯碼輸入數(shù)據(jù)采用3比特軟判決譯碼輸入,相對于硬判決可以獲得大約2 dB的信道編碼增益。根據(jù)IEEE 802.15.3c標(biāo)準(zhǔn)[5],解除刪余單元對于卷積碼打孔刪除位置進(jìn)行填充補(bǔ)償,補(bǔ)償后數(shù)據(jù)被輸入到分支度量單元。分支度量單元計算當(dāng)前輸入的判決信息與期望信息的歐氏距離。分支度量值越小,表示相似度越高,否則,反之。

    加比選模塊對狀態(tài)路徑度量的每個狀態(tài)可能的輸入路徑度量進(jìn)行累積加法計算(即:加),然后比較各個數(shù)值大?。矗罕龋袥Q選擇出最小路徑度量(即:選),更新路徑度量寄存器數(shù)據(jù)[4],如圖4所示。對于一個約束長度為7的Viterbi譯碼器,每一步譯碼需要處理64個加比選運(yùn)算。加比選運(yùn)算本身要求下一次加法運(yùn)算必須是在上一步的狀態(tài)度量選擇運(yùn)算之后,如果直接插入流水線,會導(dǎo)致整體無法同時運(yùn)算,因此并沒有提高吞吐速度。為了提高吞吐率,采用了64個加比選運(yùn)算單元全并行地譯碼。

jcdl7-t4.gif

    對于CC(3,1,7)譯碼器,其幸存路徑管理單元需采用One-pointer回溯算法或者K-pointer回溯算法[4]實現(xiàn)譯碼輸出。與One-pointer回溯算法相比,K-pointer回溯算法只需要單一運(yùn)行時鐘,因此其在譯碼器實現(xiàn)中更為普遍采納。本文使用2-pointer回溯算法,回溯譯碼長度定為64。由于采用并行獨立的卷積碼編碼,因而圖3中各路的回溯譯碼獨立并行執(zhí)行。

2.2 基于RiBM算法的RS(224,208)譯碼器

    RS碼是一種特殊的BCH碼,所以RS碼的譯碼方案也可以從BCH碼的譯碼方案推算得到。本文采用的是改進(jìn)的無逆RiBM算法[4],屬于時域譯碼的一種。RS譯碼器由伴隨式計算單元、關(guān)鍵方程求解單元、計算誤碼位置的Chien搜索、求解誤碼位置差值Forney算法組成,整體結(jié)構(gòu)框圖如圖5所示。

jcdl7-t5.gif

jcdl7-gs1.gif

jcdl7-gs2.gif

    對jcdl7-gs3.gif求逆運(yùn)算是高復(fù)雜度運(yùn)算。因為GF(2t)域取值范圍有限,在實現(xiàn)中預(yù)設(shè)一個GF(2t)元素的逆值表,采用查表法的方法來直接獲得逆值。

3 實現(xiàn)與分析

    基于Verilog HDL語言,本文完成了RS(224,208)-CC(3,1,7)級聯(lián)譯碼器的實現(xiàn),并對在CC碼率為1/3、1/2、4/7、2/3、4/5 5種情況下分別進(jìn)行ModelSim RTL級仿真驗證,誤碼率BER(Bit Error Rate)與MATLAB級聯(lián)譯碼函數(shù)性能基本相同。其中在CC為1/3、1/2碼率下的RS-CC級聯(lián)譯碼性能比較如圖6所示。

jcdl7-t6.gif

    本設(shè)計在Xilinx Virtex-6 FPGA平臺上實現(xiàn), 最高工作時鐘為200 MHz,級聯(lián)譯碼器靜吞吐率達(dá)到1.6 Gb/s。然后,采用TSMC 0.13 μm CMOS工藝,供電電壓為1.2 V,本文完成了級聯(lián)譯碼器的ASIC設(shè)計。DC compiler門級綜合工具給出了芯片的綜合報告,如表1所示。該譯碼器的邏輯面積為5.19 mm2,芯片工作時鐘為250 MHz,譯碼器最大吞吐速率為2 Gb/s,功耗為271 mW。本設(shè)計滿足60 GHz無線個域網(wǎng)標(biāo)準(zhǔn)[5]的吉比特吞吐率指標(biāo)要求,在高速前向糾錯編譯碼領(lǐng)域有著廣闊的應(yīng)用前景。

jcdl7-b1.gif

參考文獻(xiàn)

[1] Zhang Xin,Lu Liru,F(xiàn)UNADA R,et al.Physical layer design and performance analysis on multi-Gbps millimeter-wave WLAN system[C].IEEE Int.Conf.on Comm.Syst.,2010:92-96.

[2] Gao Bo,Xiao Zhenyu,Zhang Changming,et al.Performance comparison of channel coding for 60 GHz SC-PHY and a  multigigabit Viterbi decoder[C].IEEE Int.Conf.on Comp. Problem-Solving,2011:714-718.

[3] 殷愛菡,劉方仁,陳燕燕.基于FPGA的高速RS譯碼器設(shè)計[J].電子技術(shù)應(yīng)用,2010,36(11):66-68.

[4] BLACK P J,MENG T H.A 1-Gb/s,four-state,sliding block viterbi decoder[J].IEEE J.Solid-State Circuits,1997,32(6):797-805.

[5] IEEE 802.15.3c:Wireless medium access Control(MAC) and physical layer(PHY) specifications for high rate wireless personal area networks(WPANs)[S].2009.

[6] 陶杰,王欣,張?zhí)燧x.基于VHDL語言的卷積碼和Viterbi譯碼的實現(xiàn)[J].微型機(jī)與應(yīng)用,2012,31(16):3-5.

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