文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2012)10-0106-03
PCCCTurbo碼又稱為并行級(jí)聯(lián)碼(Parallel Concatenated Convolutional Code),在TD-LTE系統(tǒng)發(fā)送端編碼過(guò)程中引入隨機(jī)交織器,充分考慮Shannon編碼定理而獲得接近理論極限的性能[1]。故在接收端可以采用一種軟輸入軟輸出迭代譯碼算法,充分利用譯碼輸出的軟信息來(lái)逼近最大似然譯碼性能[2]。TD-LTE系統(tǒng)要求高速數(shù)據(jù)業(yè)務(wù),傳輸數(shù)據(jù)業(yè)務(wù)量大,而軟迭代譯碼的計(jì)算復(fù)雜度隨著數(shù)據(jù)量的增加而快速增大。目前Turbo譯碼器中的分量譯碼器的實(shí)現(xiàn)算法有Log-Map算法和Max-Log-Map算法。前者能獲得最好的譯碼性能,但是其實(shí)現(xiàn)復(fù)雜度過(guò)高;后者對(duì)其進(jìn)行改進(jìn),但是實(shí)現(xiàn)復(fù)雜度仍然很高。本文在Max-Log-Map算法的基礎(chǔ)上進(jìn)行改進(jìn),提出一種簡(jiǎn)化的Log-Map算法,該算法在滿足系統(tǒng)性能要求的前提下,大大降低了實(shí)現(xiàn)復(fù)雜度。
TMS320C64x最初主要是為移動(dòng)通信基站的信號(hào)處理而推出的超級(jí)處理芯片,該芯片屬于高速定點(diǎn)DSP,最高時(shí)鐘頻率為1 GHz,處理性能達(dá)8 000 MIPS,比傳統(tǒng)DSPs要快一個(gè)數(shù)量級(jí),因此在測(cè)試儀表的開發(fā)領(lǐng)域有廣闊的應(yīng)用前景[3]。該系列DSP最主要的特點(diǎn)是在體系結(jié)構(gòu)上采用了甚長(zhǎng)指令集VLIW(Very Long Instruction Word),由一個(gè)超長(zhǎng)的機(jī)器指令字來(lái)驅(qū)動(dòng)內(nèi)部的多個(gè)功能單元。由于每條指令的字段之間相互獨(dú)立,故可單周期發(fā)射多條指令,從而實(shí)現(xiàn)更高的指令級(jí)并行效率。該系列DSP芯片的大容量、高運(yùn)算能力等優(yōu)點(diǎn)使其在無(wú)線基站、終端等場(chǎng)合廣泛應(yīng)用,特別是運(yùn)算精度能滿足測(cè)試儀表的開發(fā)條件。所以本文重點(diǎn)研究Turbo譯碼算法在TMS320C64x上的軟件實(shí)現(xiàn)。
1 傳統(tǒng)的Turbo譯碼算法
針對(duì)Turbo譯碼,目前的軟輸入軟輸出迭代譯碼算法都是基于BCJR算法的推導(dǎo)過(guò)程,用于Turbo譯碼的MAP譯碼器就是求解下面的似然信息[4]。
導(dǎo)過(guò)程可以看出,本文所提的簡(jiǎn)化算法的計(jì)算復(fù)雜度性能明顯優(yōu)于Max-Log-Map算法。
3 DSP實(shí)現(xiàn)及測(cè)試性能分析
3.1本文簡(jiǎn)化算法的DSP實(shí)現(xiàn)
輸入到Turbo譯碼模塊的是解子塊交織后的三路數(shù)據(jù),且以軟信息的形式存放在內(nèi)存當(dāng)中(每個(gè)軟信息占據(jù)8 bit的內(nèi)存空間)。具體函數(shù)調(diào)用如表1所示。
(2)迭代譯碼:將組裝得到的rec_s1和初始化為全零的L_a1調(diào)用Log-Map子函數(shù)計(jì)算得到該譯碼器的輸出對(duì)數(shù)似然比L_ma1,并對(duì)其進(jìn)行交織處理得到L_a2,然后將rec_s2和L_a2調(diào)用Log-Map子函數(shù)計(jì)算得到第二個(gè)譯碼器的輸出對(duì)數(shù)似然比L_ma2,再將其進(jìn)行解交織處理得到L_a1。判斷是否達(dá)到總的迭代次數(shù),若未達(dá)到預(yù)設(shè)的迭代次數(shù),則繼續(xù)進(jìn)行該步驟;否則轉(zhuǎn)至(3)。
(3)譯碼判決:將迭代之后的對(duì)數(shù)似然信息進(jìn)行判決,大于0則判為1;小于0則判為0。
3.2 CCS3.3環(huán)境下性能分析
在進(jìn)行DSP軟件設(shè)計(jì)時(shí),需要對(duì)程序進(jìn)行優(yōu)化,盡量減少或者消除程序中的“NOP”指令,特別是循環(huán)體內(nèi)的“NOP”指令。通過(guò)在CCS3.3上進(jìn)行程序的仿真運(yùn)行,從中頻接收數(shù)據(jù),統(tǒng)計(jì)得到各種情況下譯碼過(guò)程的執(zhí)行結(jié)果,如表2所示。
表2僅列舉了幾種典型的數(shù)據(jù)長(zhǎng)度,且不失一般性,總體性能基本不會(huì)受輸入數(shù)據(jù)長(zhǎng)度的約束。通過(guò)分析可以看出,在相同的譯碼輸出長(zhǎng)度的情況下,處理時(shí)間的耗費(fèi)量與迭代次數(shù)是正相關(guān)的,迭代次數(shù)越大,譯碼性能越好,但處理時(shí)延越長(zhǎng);在相同的譯碼迭代次數(shù)的情況下,根據(jù)標(biāo)準(zhǔn)規(guī)定的傳輸塊大小與調(diào)制階數(shù)有關(guān)(本文僅以兩種不同調(diào)制方式下的傳輸塊大小為例),16 QAM調(diào)制方式下的處理時(shí)間耗費(fèi)明顯高于QPSK調(diào)制方式,這是由于16 QAM用于處理大傳輸塊,占用的內(nèi)存空間也相應(yīng)地增加。TMS320C64x芯片的主頻為1 GHz,一個(gè)指令周期耗時(shí)1 ns,故本文提出的譯碼算法DSP實(shí)現(xiàn)可以達(dá)到一定的譯碼速率,且誤比特率相當(dāng)?shù)?,滿足TD-LTE綜合測(cè)試系統(tǒng)的性能要求。
本文從Turbo譯碼理論出發(fā),為適合TD-LTE綜合測(cè)試系統(tǒng)的傳輸數(shù)據(jù)業(yè)務(wù)量大且譯碼時(shí)延特性要求高的特點(diǎn),針對(duì)傳統(tǒng)Turbo譯碼算法實(shí)現(xiàn)復(fù)雜度高的缺陷,提出一種簡(jiǎn)化的Turbo譯碼算法。通過(guò)Matlab鏈路級(jí)仿真比較,所提簡(jiǎn)化Turbo譯碼算法保證了良好的譯碼性能,同時(shí)對(duì)所提簡(jiǎn)化算法在TMS320C64xDSP中進(jìn)行實(shí)現(xiàn)。從譯碼程序運(yùn)行的結(jié)果來(lái)看,該算法具有較低的誤碼率和較高的譯碼運(yùn)行速率,能夠滿足TD-LTE系統(tǒng)的性能需求。由于其實(shí)現(xiàn)具有可行性和高效性,該實(shí)現(xiàn)方案已應(yīng)用于TD-LTE無(wú)線綜合測(cè)試儀器的開發(fā)當(dāng)中,效果良好。
參考文獻(xiàn)
[1] (美)林舒,科斯特洛.差錯(cuò)控制編碼(原書第二版)[M].晏堅(jiān),何元智等,譯.北京:機(jī)械工業(yè)出版社,2004:515- 543.
[2] BERROU C, GLAVIEUX A, THITIMAJSHIMA P. Near shannon limit error-correcting coding and decoding: Turbo code[C]. in Proc. IEEE International Conference Communications, 1993:1064-1070.
[3] Texas Instruments Incorporated.TMS320C6000系列DSP編程工具與指南[M].田黎育,何佩琨,朱夢(mèng)宇,譯.北京:清華大學(xué)出版社,2006:32-50
[4] 陳發(fā)堂,李小文,王丹,等.移動(dòng)通信接收機(jī)設(shè)計(jì)理論與實(shí)現(xiàn)[M].北京:科學(xué)出版社,2011:121-135.
[5] LEE S J, SHANBHAG N R. Area-efficient high-thrughput MAP Decoder Architectures[J]. IEEE Transaction on Very Large Scale Integration(VLSI) Systems,2005,13(8):921-931.
[6] 冉靜, 廖艷, 鄭建宏. Turbo譯碼算法研究及其性能分析[J].重慶郵電學(xué)院學(xué)報(bào),2001,13(3):17-21.
[7] 3GPP TS 36.212 v9.0.0 Evolved Universal Terrestrial Radio Access (E-UTRA) Multiplexing and channel coding (Release 9)[S]. 2009-12:9-18.