Turbo簡(jiǎn)化譯碼算法的FPGA設(shè)計(jì)與實(shí)現(xiàn)
3.4 8狀態(tài)值最小值運(yùn)算單元
由MAX-LOG-MAP算法可知,在進(jìn)行前后向遞推歸一化處理和計(jì)算譯碼軟輸出時(shí),均需要計(jì)算每一時(shí)刻8個(gè)狀態(tài)的最小值。為了減小計(jì)算延時(shí),采用了8狀態(tài)值并行比較的結(jié)構(gòu),與串行的8狀態(tài)值比較結(jié)構(gòu)相比較,要少4級(jí)延時(shí)。實(shí)現(xiàn)結(jié)構(gòu)如圖4所示。
4 仿真結(jié)果
按照以上所分析的簡(jiǎn)化譯碼算法、FPGA實(shí)現(xiàn)的相關(guān)參數(shù)和結(jié)構(gòu),整個(gè)譯碼采用Verilog HDL語(yǔ)言編程,以Xilinx ISE 7.1i、Modelsim SE 6.0為開(kāi)發(fā)環(huán)境,選定Virtex4芯片xc4vlx40-12ff668進(jìn)行設(shè)計(jì)與實(shí)現(xiàn)。整個(gè)譯碼器占用邏輯資源如表1所示。
MAX-LOG-MAP譯碼算法,幀長(zhǎng)為128,迭代4次的情況下,MATLAB浮點(diǎn)算法和FPGA定點(diǎn)實(shí)現(xiàn)的譯碼性能比較如圖5所示。
由MAX-LOG-MAP算法的MATLAB浮點(diǎn)與FPGA定點(diǎn)的性能比較仿真結(jié)果可知,采用F(9,3)的定點(diǎn)量化標(biāo)準(zhǔn),F(xiàn)PGA定點(diǎn)實(shí)現(xiàn)譯碼性能和理論的浮點(diǎn)仿真性能基本相近,并具有較好的譯碼性能。
綜上所述,在短幀情況下,MAX-LOG-MAP算法具有較好的譯碼性能,相對(duì)于MAP,LOG-MAP算法具有最低的硬件實(shí)現(xiàn)復(fù)雜度,并且Turbo碼譯碼延時(shí)也較小。所以,在特定的短幀通信系統(tǒng)中,如果采用Turbo碼作為信道編碼方案,MAX-LOG-MAP譯碼算法是硬件實(shí)現(xiàn)的最佳選擇。
評(píng)論