以文本方式查看主題 - 曙海教育集團(tuán)論壇 (http://www.hufushizhe.com/bbs/index.asp) -- DSP6000系統(tǒng)開發(fā) (http://www.hufushizhe.com/bbs/list.asp?boardid=29) ---- TMS320C6000系列DSP的維特比譯碼程序優(yōu)化設(shè)計 (http://www.hufushizhe.com/bbs/dispbbs.asp?boardid=29&id=1619) |
-- 作者:wangxinxin -- 發(fā)布時間:2010-11-22 13:51:46 -- TMS320C6000系列DSP的維特比譯碼程序優(yōu)化設(shè)計 卷積碼因為其編碼器簡單、編碼增益高以及具有很強(qiáng)的糾正隨機(jī)錯誤的能力,在通信系統(tǒng)中得到了廣泛的應(yīng)用。基于最大似然準(zhǔn)則的維特比算法(VA)是在加性高斯白噪聲(AWGN)信道下性能最佳的卷積碼譯碼算法,也是常用的一種算法[1~2]. 一般來說,實(shí)現(xiàn)軟判決維特比譯碼可以有三種方案供選擇:專用集成電路(ASIC)芯片、可編程邏輯陣列(FPGA)芯片以及數(shù)字信號處理器(DSP)芯片。參考文獻(xiàn)[3]對這三種方案的優(yōu)劣做了詳細(xì)的比較。使用DSP芯片實(shí)現(xiàn)譯碼是最為靈活的一種方案,但速度也是最慢的,因為整個譯碼過程都是由軟件來實(shí)現(xiàn)的。 在近年來興起的軟件無線電技術(shù)中,要求采用可編程能力強(qiáng)的的器件(DSP、CPU等)代替專用的數(shù)字電路。對信道編解碼而言,這樣做的優(yōu)點(diǎn)在于只需要在程序上加以少量改動,就可以適應(yīng)不同的編碼速率以及各種通信系統(tǒng)所要求的不同的編解碼方法。然而速度的瓶頸限制了DSP譯碼在實(shí)時系統(tǒng)中的應(yīng)用,因此提高DSP的譯碼速度對于軟件無線電有著重要的意義。本文的目的就是通過對譯碼程序結(jié)構(gòu)優(yōu)化,來提高DSP芯片執(zhí)行VA算法的速度。 1 維特比譯碼器 首先,需要定義兩個將在本文中用到的術(shù)語[2]: 輸入幀——每次輸入譯碼器的比特; 輸出幀——對應(yīng)一個輸入幀,譯碼器輸出的比特。 圖1所示是卷積碼譯碼器(VA算法)的一種典型結(jié)構(gòu)。 以(2,1,7)卷積碼為例(輸入幀含2比特,輸出幀為1比特),來說明譯碼器的三個主要部分。 1.1 支路度量計算單元(BMG) 計算當(dāng)前輸入幀對應(yīng)的128條支路的路徑度量值,并將其存入支路度量存儲單元(BMM)。 1.2 加比選單元(ACS) 將支路度量值與相連的前面的路徑度量值相加得到延伸后的新路徑的度量值;比較連接在同一個狀態(tài)上的兩條新路徑的度量值;選擇其中度量值較小的那條路徑(幸存路徑),并將它的度量值存儲到新路徑度量存儲器(SM)中,幸存路徑值(對應(yīng)編碼狀態(tài)的輸入比特)存儲到路徑存儲器(PM)中。 |