摘 要:為了分析高斯白噪信道中線性分組碼的譯碼性能,提出了采用低信噪比時(shí)數(shù)值仿真和高信噪比時(shí)理論估算相結(jié)合的方法來計(jì)算誤碼率,從而快速準(zhǔn)確地獲取整個(gè)信噪比范圍內(nèi)的譯碼性能曲線。試驗(yàn)結(jié)果表明,該方法得到的誤碼率與實(shí)際誤碼率一致。
關(guān)鍵詞:線性分組碼;BCH;譯碼性能;誤碼率
中圖分類號(hào):TN919.3 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004373X(2008)0303102
Fast Analysis of Algorithm Performance for Decoding Linear Block Codes
HUANG Long,XU Xiaoyong,SUN Guangfu
(Satellite Navigation RD Center,School of Electronic Science and Engineering,National University.of Defense Technology,Changsha,410073,China)
Abstract:In order to analyze the decoding performance of linear block codes,a new method is proposed in this paper.The decoding performance plot can be gotten quickly and precisely within a wide SNR range by using computer emulation when SNR is low and theoretical estimation when SNR is high.Simulation results show advantage of the proposed method over conventional methods is much faster speed with little difference of the real decoding performance.
Keywords:linear block codes;BCH;decoding performance;error rate
1 引 言
衡量一種糾錯(cuò)碼譯碼方法性能好壞的主要標(biāo)準(zhǔn)是其誤碼率指標(biāo)。而要評(píng)估該譯碼方法在指定誤碼率下所需的輸入信噪比,就需要獲取較寬信噪比范圍內(nèi)的誤碼率曲線。目前對(duì)誤碼率的評(píng)估均是通過計(jì)算機(jī)數(shù)值仿真得出,由蒙特卡羅仿真原理,通常需要測(cè)得100個(gè)誤碼才能確保統(tǒng)計(jì)得到的誤碼率有足夠好的置信度。比如某應(yīng)用系統(tǒng)要求誤碼率指標(biāo)低于10-5,則仿真樣本至少為107,如此大量的數(shù)據(jù)仿真耗費(fèi)的計(jì)算機(jī)資源和計(jì)算時(shí)間是相當(dāng)驚人的,甚至是不可實(shí)現(xiàn)的。
然而,高信噪比條件下的高斯白噪信道中,信道傳輸出現(xiàn)大量錯(cuò)誤的概率是非常小的,因此可以只考慮在每個(gè)碼字中出現(xiàn)很少幾位錯(cuò)誤的情況,而忽略發(fā)生概率極小的出現(xiàn)多位錯(cuò)誤的情況。基于這種認(rèn)識(shí),本文提出了一種數(shù)值仿真和理論估算相結(jié)合的方法:在信噪比低于閾值時(shí),用傳統(tǒng)的數(shù)值仿真技術(shù)得出其誤碼率;當(dāng)信噪比高于閾值時(shí),用理論估算得出其誤碼率,把兩段誤碼率曲線拼接起來即可得到整個(gè)信噪比范圍內(nèi)的誤碼率曲線。采用該方法可以在普通的計(jì)算機(jī)配置和可接受的仿真時(shí)間內(nèi),準(zhǔn)確地獲取整個(gè)信噪比范圍的誤碼率曲線。
2 線性分組碼的硬譯碼性能分析
2.1 譯碼方法
線性分組碼是目前研究最多也是應(yīng)用最廣的一種糾錯(cuò)碼,因此本文以線性分組碼的硬譯碼性能為研究對(duì)象進(jìn)行討論。
在以下討論中,約定以C表示發(fā)送碼字,E表示高斯白噪信道產(chǎn)生的錯(cuò)誤圖樣,E′表示譯碼器得出的錯(cuò)誤圖樣,R表示接收矢量的硬判決結(jié)果,S表示接收矢量的伴隨式,表示譯碼結(jié)果,H表示線性分組碼的一致校驗(yàn)矩陣。
對(duì)線性分組碼的硬譯碼分以下幾步完成[1]:
(1) 對(duì)接收信號(hào)進(jìn)行硬判決,R=C+E;
若ri<0,則Ri=1;若ri≥0,則Ri=0
(2) 由R得到接收矢量的伴隨式,S=R#8226;HT=(C+E)#8226;HT=E#8226;HT;
(3) 根據(jù)伴隨式S確定錯(cuò)誤圖樣E′;
(4) 得出譯碼結(jié)果,=R+E′=C+E+E′。
2.2 理論分析
對(duì)于最多可糾正t位錯(cuò)的(n,k,t)線性分組碼,由糾錯(cuò)碼理論可知,其一致校驗(yàn)矩陣H中任意2t列均線性無關(guān)[1],即:
其中,hip,hjq,(1≤ip≤n,1≤jq≤n)是H矩陣的列向量,且hip≠hjq。
假設(shè)對(duì)發(fā)送碼字C,信道產(chǎn)生的錯(cuò)誤圖樣E的重量W(E)=t+1時(shí), 則接收矢量R的伴隨式為:
由式(1)得:
即S不可能寫成H中任何t-1個(gè)列向量之和,這說明譯碼器得到的錯(cuò)誤圖樣E′的重量W(E′)>t-1。又因?yàn)?n,k,t)線性分組碼錯(cuò)誤圖樣的重量W(E′)≤t,由此得到W(E′)=t。因此,式(2)可寫為:
即該接收矢量的伴隨式S既可以用H中的t+1個(gè)列向量來表示,也可以用H中的t個(gè)列向量來表示。
只要式(4)中第二個(gè)等號(hào)兩邊的2t+1項(xiàng)有一項(xiàng)相同,則余下2t-1項(xiàng)線性相關(guān),這與(n,k,t)碼H矩陣任意2t列均線性無關(guān)矛盾。因此式(4)中所有2t+1項(xiàng)均不相同,即譯碼器得出的錯(cuò)誤圖樣E′與信道本身產(chǎn)生的錯(cuò)誤圖樣E在非零碼元位置上完全不重合。因此糾錯(cuò)譯碼將在硬判決t+1位誤碼的基礎(chǔ)上,再增加t位誤碼,導(dǎo)致該碼字最終結(jié)果有2t+1位發(fā)生誤碼。
2.3 誤碼率估計(jì)
在分析誤碼性能時(shí),假設(shè)發(fā)送端發(fā)送全零碼字而不失一般性。經(jīng)過加性高斯白噪信道傳輸,接收信號(hào)的每一位都服從均值為A(信號(hào)幅度)方差為σ2(噪聲功率)的正態(tài)分布,由此得接收矢量R每一位發(fā)生錯(cuò)誤的概率[3]:
其中信噪比SNR=A2/(2σ2)。
由2.2節(jié)的分析可知,當(dāng)信道傳輸出現(xiàn)t位以內(nèi)的錯(cuò)誤時(shí),(n,k,t)線性分組碼可以完全糾正傳輸錯(cuò)誤,誤碼為0。當(dāng)信道傳輸出現(xiàn)t+1位錯(cuò)誤時(shí),糾錯(cuò)譯碼后共有2t+1位誤碼。忽略信道傳輸出現(xiàn)大于t+1位錯(cuò)誤的情況,得到對(duì)(n,k,t)線性分組碼在高信噪比時(shí)的誤碼率估計(jì)[2]:
若假設(shè)由伴隨式S確定的錯(cuò)誤圖樣E′最大限度地不同于實(shí)際傳輸錯(cuò)誤圖樣E,則誤碼率的上限可以由下式表示:
因此由式(6)得到的誤碼率估計(jì)與實(shí)際誤碼率相對(duì)誤差的上限為:
由式(8)得出最大相對(duì)估計(jì)誤差與信噪比的關(guān)系如圖1所示。
圖1 誤碼率估計(jì)相對(duì)誤差與信噪比的關(guān)系
圖1畫出了BCH(15,11,1),BCH(15,7,2)和BCH(31,16,3)三種線性分組碼的誤碼率估計(jì)相對(duì)誤差與信噪比的關(guān)系。可以看出,當(dāng)信噪比為6 dB時(shí),最大相對(duì)誤差約10-2,并且相對(duì)誤差隨信噪比增大而迅速減小。這說明當(dāng)信噪比大于6 dB時(shí),式(6)的估計(jì)可以得到與實(shí)際誤碼率幾乎一致的結(jié)果,因此將BCH碼的信噪比閾值定為6 dB。
2.4 仿真結(jié)果
最終的試驗(yàn)驗(yàn)證以BCH(15,11,1)碼的硬譯碼誤碼率計(jì)算為例,在Matlab平臺(tái)上進(jìn)行仿真。
圖2 BCH(15,11,1)碼實(shí)際硬譯碼與
理論估算誤碼率性能比較
由圖 2可知,當(dāng)信噪比大于6 dB時(shí),實(shí)際誤碼率與估計(jì)誤碼率的差別已經(jīng)非常小,從而驗(yàn)證了上述理論推導(dǎo)的結(jié)論。由圖2還可以看出,對(duì)應(yīng)于仿真時(shí)間約9 h,只能得到7 dB以內(nèi)的有效誤碼率曲線(仿真點(diǎn)數(shù)107,有效誤碼率為10-5量級(jí))。若要得到更高信噪比下的誤碼性能,必須使仿真點(diǎn)數(shù)按指數(shù)增長(zhǎng),從而使得仿真時(shí)間迅速增加以致不可接受。
利用本文提出的方法可以很方便地得到BCH(15,11,1)碼譯碼算法在整個(gè)信噪比范圍內(nèi)的誤碼率性能曲線。由圖 2的理論估算曲線可知,信噪比為6 dB時(shí),誤碼率約10-4,因此仿真點(diǎn)數(shù)取106。此時(shí)在同樣的計(jì)算機(jī)配置下,只需大約80 min,大大節(jié)約了仿真時(shí)間。最后結(jié)果如圖3所示。
圖3 BCH(15,11,1)碼的誤碼率性能曲線
通過以上分析,得到譯碼算法的快速性能分析步驟如下:
(1) 由式(8)得到數(shù)值仿真和理論估算的信噪比閾值。
(2) 由式(6)計(jì)算信噪比閾值處的誤碼率,由此得到所需的仿真點(diǎn)數(shù)。
(3) 分別做計(jì)算機(jī)數(shù)值仿真和誤碼率理論估算。信噪比低于閾值部分誤碼率取自仿真數(shù)據(jù),信噪比高于閾值部分誤碼率取自理論計(jì)算數(shù)據(jù),將兩部分誤碼率拼接起來即可得到整個(gè)信噪比范圍內(nèi)的誤碼率曲線。
3 結(jié) 語
本文提出的低信噪比下進(jìn)行數(shù)值仿真與高信噪比下進(jìn)行理論估算相結(jié)合的方法來獲取較寬信噪比范圍內(nèi)的糾錯(cuò)碼誤碼性能,可以大大節(jié)省仿真時(shí)間,并且有很高的準(zhǔn)確度。通過仿真試驗(yàn),證實(shí)了該方法對(duì)線性分組碼是可行和有效的。并且在可以比較方便地估計(jì)出高信噪比條件下誤碼率時(shí),該方法也可以推廣到其他糾錯(cuò)碼的硬譯碼以及軟譯碼中。
參考文獻(xiàn)
[1]王新梅,肖國鎮(zhèn).糾錯(cuò)碼——原理與方法(修訂版)[M].西安:西安電子科技大學(xué)出版社,2001,
[2]張力軍,張宗橙,鄭寶玉.數(shù)字通信[M].4版.北京:電子工業(yè)出版社,2003.
[3]David Chase.A Class of Algorithms for Decoding Block Codes with Channel Measurement Information[J].IEEE Trans.on Information Theory,1972,IT—18(1):170—182.
作者簡(jiǎn)介 黃 龍 男,1982年出生,國防科技大學(xué)電子科學(xué)與工程學(xué)院碩士生。研究方向?yàn)樾腔鶎?dǎo)航與定位技術(shù)。
許曉勇 男,1977年出生,國防科技大學(xué)電子科學(xué)與工程學(xué)院博士生。研究方向?yàn)樾腔鶎?dǎo)航與定位技術(shù)。
孫廣富 男,1970年出生,國防科技大學(xué)電子科學(xué)與工程學(xué)院副教授。研究方向?yàn)樾腔鶎?dǎo)航與定位技術(shù)。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。