文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)06-0115-04
移動(dòng)通信與寬帶無線接入技術(shù)的融合成為通信發(fā)展的必然趨勢(shì)。為此,,3GPP啟動(dòng)了通用移動(dòng)通信技術(shù)的長(zhǎng)期演進(jìn)項(xiàng)目,。為了將系統(tǒng)帶寬從5 M提高到20 M,LTE在下行傳輸中采用了正交頻分多址,、上行采用單載波頻分多址的技術(shù)[1],。OFDM技術(shù)實(shí)質(zhì)就是將串行的數(shù)據(jù)映射到并行的信道進(jìn)行傳輸,符號(hào)的延續(xù)時(shí)間由此得以延長(zhǎng),,從而對(duì)時(shí)延擴(kuò)展有更高的包容性,。為了滿足LTE系統(tǒng)對(duì)更大的系統(tǒng)容量的需求,低成本支持更多的天線系統(tǒng)要求,,在信道編碼中采用了咬尾卷積編碼和Turbo編碼[2],。本文詳細(xì)闡述了咬尾卷積編碼的編碼原理,通過Matlab仿真對(duì)咬尾卷積編碼在不同信道環(huán)境下的性能進(jìn)行了探究,重點(diǎn)闡述了一種咬尾卷積編碼的DSP實(shí)現(xiàn)方法,最后,,選取一種可靠的譯碼方式在接收端完成咬尾卷積譯碼。
1 咬尾卷積編碼的實(shí)現(xiàn)原理
該信道編碼的編碼和譯碼復(fù)雜度低,、處理時(shí)延小,,適合小碼塊控制信息和對(duì)時(shí)延敏感的數(shù)據(jù)傳輸。
咬尾卷積是建立在卷積碼編碼器的起始狀態(tài),,不需要全0狀態(tài),,可以是任何其他狀態(tài)。在LTE系統(tǒng)中,,將咬尾卷積編碼的約束長(zhǎng)度設(shè)置為7,,即配置了6個(gè)移位寄存器,,采用速率為1/3進(jìn)行編碼。咬尾卷積編碼的初始比特可以不為零,,但起始狀態(tài)和終止?fàn)顟B(tài)相同,。因此不需要傳輸額外的比特,具有較高的編碼效率,。編碼器的初始狀態(tài)和最終狀態(tài)由數(shù)據(jù)包的最后幾個(gè)比特決定[3],,也就是把一個(gè)數(shù)據(jù)包的最后6 bit用來初始化寄存器狀態(tài)。其編碼原理和實(shí)現(xiàn)框圖如圖1所示,,對(duì)于輸入數(shù)據(jù)流CK,編碼后按3路輸出, 輸出分別為5路數(shù)據(jù)右移,,對(duì)得到的5路數(shù)據(jù)進(jìn)行異或,產(chǎn)生最后的結(jié)果,。
2 咬尾卷積編碼性能測(cè)試
利用QPSK高斯信道,、ETU、EVA,、EPA四種信道對(duì)咬尾卷積編碼的性能進(jìn)行分析,。仿真過程中,選取PBCH的MIB信息進(jìn)行仿真測(cè)試,天線配置為4發(fā)4收,帶寬為5 MB,載波頻率為2 GHz,,得到的仿真結(jié)果如圖2所示,。
通過圖2不難看出,誤碼率為10-4時(shí),,咬尾卷積編碼的編碼增益在7 dB左右,,這一結(jié)果完全可以應(yīng)用在綜合儀表開發(fā)中。
3 咬尾卷積編碼的設(shè)計(jì)與實(shí)現(xiàn)
3.1 DSP處理器
采用了TI公司的C64x系列,,該系列采用了取指令和執(zhí)行指令可以并行運(yùn)行的哈佛結(jié)構(gòu),,程序總線和數(shù)據(jù)總線也是獨(dú)立運(yùn)行的。其中程序總線有256 bit,,內(nèi)存單次操作取8條指令,,實(shí)現(xiàn)了高速運(yùn)行的目的?;贑64芯片的高容量,、運(yùn)行速度快的特征,在綜合測(cè)試儀表的開發(fā)中采用了該芯片[1],。
3.2編碼與內(nèi)存區(qū)設(shè)計(jì)
以TD-LTE為例,,1個(gè)子幀有2個(gè)時(shí)隙,頻域上的最大資源塊數(shù)為110,1個(gè)資源塊的大小為180 kHz,,1個(gè)時(shí)隙有6個(gè)或者7個(gè)OFDM符號(hào)[1],,因此對(duì)寄存器和內(nèi)存的設(shè)計(jì)如表1所示,內(nèi)存設(shè)計(jì)如下。
_Input_Data .uset”d_dest”,5000
_Data_lens .uset”d_dest”,4
_Out_Data .uset”d_dest”,15000
_Out_Data_lens .uset”d_dest”,4
3.3 詳細(xì)設(shè)計(jì)
咬尾卷積的DSP實(shí)現(xiàn)主要包括三個(gè)步驟:取數(shù)據(jù)包的最后6 bit進(jìn)行寄存器初始化;根據(jù)移位寄存器的要求進(jìn)行移位異或操作,,完成編碼,;再對(duì)完成編碼的數(shù)據(jù)進(jìn)行比特字節(jié)化,,為咬尾卷積編碼的速率匹配做準(zhǔn)備。
3.3.1寄存器初始化完成
在進(jìn)行寄存器初始化的實(shí)現(xiàn)中,,要考慮有無剩余比特兩種情況,,計(jì)算出需要偏移地址的數(shù)A7。若有剩余比特,,則取最后一個(gè)半字與剩余比特,,把它們合并存放在一起, 然后進(jìn)行左移得到最后的6 bit,,存于A10的高6位,。左移的位數(shù)便是“剩余比特?cái)?shù)+10”;若沒有剩余比特,,就取最后兩個(gè)半字,,通過左移26位得到后6 bit,存于A10的高6位,。以數(shù)據(jù)流長(zhǎng)度=43為例,,具體實(shí)現(xiàn)如圖3所示。
3.3.2 咬尾卷積編碼實(shí)現(xiàn)
取每一輪參與編碼的那一個(gè)半字,,存于A7的低16位,左移10位,,空出A7左端的6位與尾比特(6 bit)進(jìn)行或操作,完成22 bit的拼接,,存儲(chǔ)于A10把數(shù)據(jù)流的最后6 bit與第一個(gè)半字構(gòu)成22 bit,,形成第一輪參與編碼的數(shù)據(jù)。每一輪參與編碼的22 bit,,是上一輪的最后6 bit與這一輪的那一個(gè)半字,。具體的實(shí)現(xiàn)如圖4所示。
3.3.3 比特字節(jié)化的實(shí)現(xiàn)
比特字節(jié)化,,來為交織操作中的取數(shù)據(jù)做準(zhǔn)備,,取數(shù)據(jù)時(shí)地址的偏移是以字節(jié)為偏移單位進(jìn)行的。環(huán)進(jìn)行字節(jié)化,,直至16 bit字節(jié)化完成,,后6 bit不參與,將參與編碼的比特?cái)?shù)存于B0,,每完成一次編碼,,對(duì)應(yīng)的記錄的寄存器減一。當(dāng)還沒進(jìn)行到最后一部分時(shí),, 就這樣以22 bit為單位進(jìn)行編碼、字節(jié)化,, 第一輪時(shí)是數(shù)據(jù)流的最后6 bit與第一個(gè)半字結(jié)合的22 bit,第二輪是第一輪22 bit的后6 bit與第二個(gè)半字形成的22 bit,。
在比特字節(jié)化時(shí),,最后的那一輪只字節(jié)化剩余比特?cái)?shù)次,比如最后一輪的22 bit,,以數(shù)據(jù)長(zhǎng)度為31為例,,字節(jié)化時(shí)只進(jìn)行11次的字節(jié)化。具體流程如圖5所示,。
編碼后的數(shù)據(jù)存儲(chǔ)如圖6所示,。
3.4 DSP運(yùn)行性能分析
DSP軟件中的實(shí)現(xiàn)代碼要盡量精簡(jiǎn),減少執(zhí)行的“NOP”數(shù)目,合理控制循環(huán)次數(shù),,本文通過對(duì)半字?jǐn)?shù)及字?jǐn)?shù)為單位的控制進(jìn)行地址偏移,,使得運(yùn)算量盡量減少,減少運(yùn)算的周期數(shù)目,。當(dāng)編碼數(shù)據(jù)為4 200時(shí),,運(yùn)行的cycles數(shù)如表2所示。
TMS320C64DSP芯片,處理器的頻率達(dá)到1 GHz,,運(yùn)行一個(gè)cycle的時(shí)間是1 ns,,測(cè)試平臺(tái)上,通過對(duì)GPIO口的控制,,測(cè)量函數(shù)運(yùn)行時(shí)間,,運(yùn)行時(shí)間可以滿足對(duì)實(shí)時(shí)性的要求。
4 咬尾卷積譯碼方式性能測(cè)試
Viterbi譯碼的算法主要有循環(huán)維特比譯碼算法(CVA)[4],、M比特重復(fù)循環(huán)維特比譯碼算法(N+M-CVA),、有界循環(huán)維特比譯碼算法(BDD-CVA)[5]、環(huán)繞維特比譯碼算法(WAVA),、最大似然維特比譯碼算法(ML-VA)[6],其中L+Win-CVA,算法是一種基于循環(huán)Viterbi譯碼算法的改進(jìn),,L3-WAVA算法是將碼塊重復(fù)三次的WAVA算法[7],ML-VA[8]算法是一種犧牲算法復(fù)雜度換取遍歷的算法,,算法復(fù)雜度極大,,本文不作考慮。設(shè)定碼塊大小為200 bit時(shí),,用Matlab仿真各種譯碼算法的誤比特率,。得到的結(jié)果如圖7所示[1]。
從仿真的結(jié)果不難看出,,L3-WAVA算法性能最好,,并且契合了“TD-LTE無線綜合儀表測(cè)試開發(fā)”的性能和運(yùn)算精度的要求,因此選取L3-WAVA算法作為咬尾卷積碼的譯碼算法,。
本文首先從LTE背景分析,,闡述了LTE系統(tǒng)采用咬尾卷積編碼的必要性。根據(jù)咬尾卷積編碼技術(shù)的原理,,模擬驗(yàn)證咬尾卷積編碼在不同信道環(huán)境下的性能,,提出一種DSP的實(shí)現(xiàn)方法,,在TMS320C6000平臺(tái)上實(shí)現(xiàn)并且對(duì)運(yùn)行結(jié)果進(jìn)行性能分析,選取L3-WAVA方法為咬尾卷積譯碼方式進(jìn)行仿真,。該方案已應(yīng)用到LTE-TDD無線綜合測(cè)試儀表的開發(fā)中,。
參考文獻(xiàn)
[1] 陳發(fā)堂,陶根林. LTE系統(tǒng)中咬尾卷積碼的編譯碼算法仿真及性能分析[J].計(jì)算機(jī)應(yīng)用研究,,2010,27(9):
[2] 王曉濤,,錢驊,徐景,等.基于陷阱檢測(cè)的咬尾卷積碼譯碼算法[J].電子與信息學(xué)報(bào),,2011,33(10):2300-2305.
[3] 林丹,,李小文. TD-LTE系統(tǒng)中咬尾卷積碼譯碼器的FPGA實(shí)現(xiàn)[J].電子測(cè)試,2010(3):57-61.
[4] MEHRABIAN M R, MOZAFARI S P, ZOLFAGHARI B. An approach to exploiting proper multiples of the generator polynomial in parallel CRC computation[C].2012 IEEE International Conference on Computer Science and Automation Engineering(CSAE 2012). in Zhangjiajie, China.2012.
[5] SESIA S,, TOUFIK I,,BAKER M. LTE-The UMTS long term evolution: from theory to practice SECOND EDITION[M].2009 John Wiley&Sons,Ltd.ISBN: 978-0-470-69716-0.
[6] 3GPP TS 36.211 v11.4: Evolved Universal Terrestrial Radio Access (E-UTRA); Physical channels and modulation.(Release 11)[S].2013-09.
[7] Wang Jun, Chen Hongyang, Li Shaoqian. Soft-output MMSE V-BLAST receiver with MMSE channel estimation under correlated Rician fading MIMO channels[J]. Wirel. Commun. Mob. Comput., 2011,12(15):1363-1370.
[8] JOHN B. Anderson, MLADIK S M. An optimal circular viterbi decoder for the bounded distance criterion[J]. IEEE Transactions on Communications, 2002,50(11):1736-1742.