文獻標識碼: A
文章編號: 0258-7998(2014)09-0048-03
憑借著高端7 GHz無需授權(quán)頻譜資源,,60-GHz無線個域網(wǎng)已經(jīng)成為了短距離吉比特無線傳輸?shù)闹匾鉀Q方案[1]。而由于超高的頻點,,相位噪聲和功放非線性等射頻非理想因素嚴重影響著60-GHz無線個域網(wǎng)的系統(tǒng)性能,。參考文獻[2]中指出,在考慮射頻非理想因素影響下,,里所碼[3]RS(Reed-Solomon codes)和卷積碼[4]CC(convolution codes)級聯(lián)碼可以取得比低密度奇偶校驗碼LDPC(Low-Density Parity-Check)編碼更為魯棒的譯碼性能。因此,,針對60-GHz無線個域網(wǎng)系統(tǒng),,本文提出了一種吉比特低復雜度RS-CC級聯(lián)譯碼器架構(gòu)。
1 RS-CC級聯(lián)碼
根據(jù)IEEE 802.15.3c標準[5],,本文設計了吉比特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)換后進行卷積碼編碼。本文采用CC(3,1,,7)編碼器為級聯(lián)碼內(nèi)碼,。卷積碼的約束長度為7,生成多項式為(1338,,1718,,1658),基本碼率為1/3,。為了獲得高吞吐率,,使用8路CC獨立編碼。經(jīng)過IEEE 802.15.3c標準制定的打孔刪除操作,,產(chǎn)生1/3,、1/2、4/7,、 2/3,、4/5 5種內(nèi)碼碼率。最終數(shù)據(jù)經(jīng)并/串轉(zhuǎn)換,,輸出編碼結(jié)果,。
2 吉比特RS-CC級聯(lián)譯碼器設計
吉比特RS-CC級聯(lián)譯碼器由8個獨立CC(3,1,,7)譯碼器,、32×32解交織、RS(224,,208)譯碼器等模塊組成,,如圖2所示。輸入的譯碼數(shù)據(jù)經(jīng)串/并轉(zhuǎn)換后分別輸入對應的8個獨立CC(3,,1,,7)譯碼器。CC(3,,1,,7)譯碼器的譯碼輸出經(jīng)過并/串轉(zhuǎn)換后進行32×32解交織;解交織后數(shù)據(jù)輸入到RS(224,208)譯碼器,,最終獲得級聯(lián)碼譯碼結(jié)果,。
2.1 基于Viterbi譯碼算法的CC(3,1,,7)譯碼器
Viterbi譯碼算法是1967年由Viterbi提出的一種最大概率譯碼算法[6],。作為CC的最優(yōu)譯碼算法,Viterbi譯碼算法被廣泛應用于2G,、3G以及衛(wèi)星通信等多種通信系統(tǒng)中[4],?;赗S-CC級聯(lián)碼結(jié)構(gòu),本文給出了基于Viterbi算法的CC(3,1,7)譯碼器設計,,整體結(jié)構(gòu)如圖3所示,。因為使用8路CC獨立編碼,所以8個相同的CC譯碼器獨立譯碼,。
接收到的譯碼輸入數(shù)據(jù)采用3比特軟判決譯碼輸入,,相對于硬判決可以獲得大約2 dB的信道編碼增益。根據(jù)IEEE 802.15.3c標準[5],,解除刪余單元對于卷積碼打孔刪除位置進行填充補償,,補償后數(shù)據(jù)被輸入到分支度量單元。分支度量單元計算當前輸入的判決信息與期望信息的歐氏距離,。分支度量值越小,,表示相似度越高,否則,,反之,。
加比選模塊對狀態(tài)路徑度量的每個狀態(tài)可能的輸入路徑度量進行累積加法計算(即:加),然后比較各個數(shù)值大?。矗罕龋?,判決選擇出最小路徑度量(即:選),更新路徑度量寄存器數(shù)據(jù)[4],,如圖4所示,。對于一個約束長度為7的Viterbi譯碼器,每一步譯碼需要處理64個加比選運算,。加比選運算本身要求下一次加法運算必須是在上一步的狀態(tài)度量選擇運算之后,,如果直接插入流水線,會導致整體無法同時運算,,因此并沒有提高吞吐速度,。為了提高吞吐率,采用了64個加比選運算單元全并行地譯碼,。
對于CC(3,1,,7)譯碼器,,其幸存路徑管理單元需采用One-pointer回溯算法或者K-pointer回溯算法[4]實現(xiàn)譯碼輸出。與One-pointer回溯算法相比,,K-pointer回溯算法只需要單一運行時鐘,,因此其在譯碼器實現(xiàn)中更為普遍采納。本文使用2-pointer回溯算法,,回溯譯碼長度定為64,。由于采用并行獨立的卷積碼編碼,,因而圖3中各路的回溯譯碼獨立并行執(zhí)行。
2.2 基于RiBM算法的RS(224,,208)譯碼器
RS碼是一種特殊的BCH碼,,所以RS碼的譯碼方案也可以從BCH碼的譯碼方案推算得到。本文采用的是改進的無逆RiBM算法[4],,屬于時域譯碼的一種,。RS譯碼器由伴隨式計算單元、關(guān)鍵方程求解單元,、計算誤碼位置的Chien搜索,、求解誤碼位置差值Forney算法組成,整體結(jié)構(gòu)框圖如圖5所示,。
對求逆運算是高復雜度運算,。因為GF(2t)域取值范圍有限,在實現(xiàn)中預設一個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種情況下分別進行ModelSim RTL級仿真驗證,誤碼率BER(Bit Error Rate)與MATLAB級聯(lián)譯碼函數(shù)性能基本相同,。其中在CC為1/3,、1/2碼率下的RS-CC級聯(lián)譯碼性能比較如圖6所示。
本設計在Xilinx Virtex-6 FPGA平臺上實現(xiàn),, 最高工作時鐘為200 MHz,,級聯(lián)譯碼器靜吞吐率達到1.6 Gb/s。然后,,采用TSMC 0.13 μm CMOS工藝,,供電電壓為1.2 V,本文完成了級聯(lián)譯碼器的ASIC設計,。DC compiler門級綜合工具給出了芯片的綜合報告,,如表1所示。該譯碼器的邏輯面積為5.19 mm2,,芯片工作時鐘為250 MHz,,譯碼器最大吞吐速率為2 Gb/s,,功耗為271 mW。本設計滿足60 GHz無線個域網(wǎng)標準[5]的吉比特吞吐率指標要求,,在高速前向糾錯編譯碼領域有著廣闊的應用前景,。
參考文獻
[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譯碼器設計[J].電子技術(shù)應用,,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].微型機與應用,,2012,,31(16):3-5.