LTE標(biāo)準(zhǔn)下Turbo碼編譯碼器的集成設(shè)計(jì)
為節(jié)省硬件資源,本文設(shè)計(jì)的Turbo碼譯碼器采用子譯碼器單核復(fù)用的結(jié)構(gòu)模式。當(dāng)子譯碼器模塊作為子譯碼器1時(shí),信息比特順序?qū)懭氪鎯?chǔ)器后順序讀出到子譯碼器中,L_a2以交織地址寫(xiě)入存儲(chǔ)器,順序地址讀出作為子譯碼器1的先驗(yàn)信息,同時(shí)校驗(yàn)位選擇yp1,子譯碼器1根據(jù)3個(gè)輸入進(jìn)行SISO(軟輸入軟輸出)譯碼運(yùn)算,得到新的L_a2及L_e;此后子譯碼器作為子譯碼器2,以交織地址將ys從存儲(chǔ)器中讀出,L_a2以順序地址寫(xiě)入存儲(chǔ)器,交織地址讀出作為子譯碼器2的先驗(yàn)信息,同時(shí)校驗(yàn)位選擇yp2,子譯碼器2根據(jù)3個(gè)輸入進(jìn)行SISO(軟輸入軟輸出)譯碼運(yùn)算,得到新的L_a2及L_e,完成一次迭代。在滿足迭代停止準(zhǔn)則以后,將L_e解交織后進(jìn)行硬判決,得到譯碼序列。
設(shè)計(jì)中,子譯碼器采用復(fù)雜度與性能折中的Max-Log-MAP譯碼算法。根據(jù)輸入的信息位、校驗(yàn)位及先驗(yàn)概率信息,在時(shí)序控制模塊的管理下,分別進(jìn)行分支轉(zhuǎn)移度量、前向狀態(tài)度量、后向狀態(tài)度量和對(duì)數(shù)似然比的計(jì)算及存儲(chǔ),以備下次譯碼運(yùn)算調(diào)用。
依據(jù)初始化分支轉(zhuǎn)移度量值,由(13,15)RSC的籬笆圖,找出當(dāng)前時(shí)刻前向狀態(tài)度量與前一時(shí)刻前向狀態(tài)度量的對(duì)應(yīng)關(guān)系[7],計(jì)算當(dāng)前時(shí)刻的前向狀態(tài)度量。依次遞推,為防止數(shù)據(jù)溢出范圍,每次迭代對(duì)其進(jìn)行歸一化處理,得到實(shí)現(xiàn)框圖如圖5所示。后向狀態(tài)度量與前向狀態(tài)度量具有相似的運(yùn)算結(jié)構(gòu),只是逆向遞推而已。
由對(duì)數(shù)似然比的定義,將得到的分支轉(zhuǎn)移度量、前向狀態(tài)度量和后向狀態(tài)度量代入運(yùn)算公式[8],對(duì)3種輸入?yún)⒘窟M(jìn)行組合運(yùn)算,然后取出“1”路徑8種狀態(tài)中的最小值和“0”路徑8種狀態(tài)的最小值,做差即得到Max-Log-MAP算法中的對(duì)數(shù)似然比。迭代數(shù)次后進(jìn)行輔助硬判決,解交織輸出即為傳回信宿的譯碼序列。
3 系統(tǒng)實(shí)現(xiàn)與仿真結(jié)果分析
在Quartus Ⅱ開(kāi)發(fā)工具上,以Stratix III 系列的EP3-SL150F1152C2為配置平臺(tái),用Verilog HDL語(yǔ)言對(duì)上述各功能模塊進(jìn)行編程建模,調(diào)試統(tǒng)一后編譯綜合,得到編譯碼器主要硬件資源占用情況如表1所示。
建立波形文件,分別對(duì)Turbo碼進(jìn)行時(shí)序仿真,得到信息幀長(zhǎng)分別配置為128、512時(shí),Turbo碼編碼器的仿真波形如圖6(a)、圖6(b)所示。''
圖6中,每幀碼字序列的結(jié)尾,都有12個(gè)系統(tǒng)尾比特,以使編碼器寄存器回歸全零狀態(tài)。經(jīng)多次驗(yàn)證,與Matlab仿真數(shù)據(jù)進(jìn)行對(duì)比,結(jié)果正確。
將編碼碼字量化后存儲(chǔ)于ROM中,提供給譯碼器進(jìn)行時(shí)序仿真,得到信息幀長(zhǎng)分別配置為128、512(碼字序列長(zhǎng)度分別為396、1 548)時(shí),Turbo碼譯碼器的仿真波形如圖7(a)、圖7(b)所示。
圖7中,譯碼器首先根據(jù)幀長(zhǎng)設(shè)置初始化交織圖樣,然后對(duì)系統(tǒng)碼字解復(fù)接,得到信息序列(ys)、校驗(yàn)位1(yp1)及校驗(yàn)位2(yp2),與外信息(L_all)一起輸入子譯碼器進(jìn)行SISO譯碼運(yùn)算,迭代6次以后判決得到譯碼結(jié)果(decoderout)。
設(shè)置不同的信息幀長(zhǎng),經(jīng)多次仿真驗(yàn)證,均能正確實(shí)現(xiàn)編譯碼功能。將程序下載配置到EP3SL150F1152C2中,利用VC軟件編寫(xiě)測(cè)試窗口,進(jìn)行測(cè)試。結(jié)果顯示,本設(shè)計(jì)可以利用外圍鍵盤(pán)電路自行輸入幀長(zhǎng),進(jìn)行交織運(yùn)算,得到交織圖樣,并能正確實(shí)現(xiàn)Turbo編譯碼功能,達(dá)到了設(shè)計(jì)要求。
本設(shè)計(jì)以LTE為應(yīng)用背景,實(shí)現(xiàn)了一種可根據(jù)信道環(huán)境現(xiàn)場(chǎng)配置幀長(zhǎng)的Turbo編譯碼的硬件方案。將QPP交織算法集成于FPGA內(nèi)部,充分利用其時(shí)鐘頻率高、速度快的優(yōu)勢(shì),減小了外圍接口電路消耗。在系統(tǒng)初始化時(shí)進(jìn)行交織運(yùn)算,先于Turbo編譯碼進(jìn)程開(kāi)始,兩者分時(shí)工作,協(xié)調(diào)統(tǒng)一,不會(huì)帶來(lái)額外的時(shí)延。所實(shí)現(xiàn)的Turbo碼編譯碼器是一種比較理想的通用型方案,為LTE標(biāo)準(zhǔn)下Turbo編解碼專(zhuān)用集成芯片的開(kāi)發(fā)與推廣提供了參考。
評(píng)論