• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于BM算法的RS(18,10)譯碼的軟件實現(xiàn)和性能分析

      2010-08-06 09:28:02王景煜景曉軍
      通信技術(shù) 2010年4期
      關(guān)鍵詞:碼字譯碼運算

      王景煜, 景曉軍

      (北京郵電大學(xué) 信息與通信工程學(xué)院,北京 100876)

      0 引言

      RS(Reed-Solomon)碼是一類具有優(yōu)良性能的極大距離糾錯碼,RS碼廣泛地應(yīng)用在衛(wèi)星通信領(lǐng)域和地面無線移動通信領(lǐng)域。本文設(shè)計了RS(18,10),RS(18,10)是RS(255,247)的縮短碼,和RS(255,247)相比糾錯能力更強。本文在對譯碼原理研究基礎(chǔ)上,提出了一種RS(18,10)譯碼器的matlab解決方案。RS譯碼仿真程序為以后的算法驗證和硬件設(shè)計調(diào)試中起著至關(guān)重要的作用。

      1 譯碼原理

      RS譯碼方法很多,根據(jù)關(guān)鍵方程的不同,可分為:BM迭代算法和Euclid迭代算法。還有人提出軟入軟出[1]的迭代譯碼算法。本文主要研究BM迭代算法硬判譯碼。

      RS(18,10)是 RS(255,247)的縮短碼,所在的有限域是GF(2^8)。每個碼字有8個信息位,進行一次編碼需要10個碼字,生成8個碼子的冗余信息。這18個碼字中任意四個碼字發(fā)生錯誤均可以糾錯[2]。該碼的本原多項式為:

      該碼的生成多項式為:

      1.1 伴隨式的計算

      設(shè)R(x)是接收多項式,因為是RS(18,10),所以一次編碼完成會產(chǎn)生18個碼字,可以表示為:

      譯碼算法首先計算伴隨多項式iS,i=1,2,3…8,如果伴隨多項式的值為 0,則證明傳輸沒有發(fā)生錯誤,如果有任何一位不為0,則在傳輸中發(fā)生錯誤了。

      伴隨多項式為:

      式(2)可以寫為 :

      這樣根據(jù)式(3)就可以用硬件設(shè)計電路設(shè)計 8條同時處理的電路,這樣在18個處理時鐘就可以計算出8個伴隨值了。相應(yīng)的在進行matlab設(shè)計rs_bansui.m模塊的時候,只要在m函數(shù)里做一個18次的循環(huán)就可以計算出伴隨式。

      1.2 求解錯位位置多項式

      錯誤位置多項式可以表示為:

      求解關(guān)鍵方程是RS碼解碼器設(shè)計實現(xiàn)中最復(fù)雜的一個模塊(rs_bm.m)。在此用BM算法迭代求解。迭代算法就是首先選擇一組或者兩組合理的初始值0()xσ,然后進行第一次迭代運算求解出1()xσ,簡言之用0()xσ表示1()xσ。這樣一直迭代下去,最終迭代出的各個系數(shù)。

      迭代過程步驟:

      ① 初始化合理值,令:② 計算jd,如果jd為0,則:

      如果jd不為0,則找出j之前某一行i,i行在j行之前的i-D(i)最大,且,然后按照:計算出()x;

      ③ 計算1jd+,然后重復(fù)步驟②,迭代進行8次,即可求解出錯誤位置多項式的系數(shù)。

      1.3 錢搜索法求解錯誤位置

      1.4 計算錯誤值

      譯碼算法的最后一個步驟就是計算錯誤值,在1.3中我們已經(jīng)求出在 R(x)的那些位置發(fā)生了錯誤,現(xiàn)在我們只需求出對應(yīng)位置上的錯誤值就可以了。還是假設(shè)發(fā)生了v個錯誤,根據(jù)式子:

      可以求出第j個錯誤值。其中的:

      求出錯誤值jw之后,然后根據(jù)1.3步驟中記錄的第j個錯誤的位置和相應(yīng)位置的接收值進行有限域的加法就可以恢復(fù)出正確值。

      2 譯碼基本模塊的matlab實現(xiàn)和及其性能分析

      RS碼的運算全部都是在有限域內(nèi)進行的,所以進行有限域的基本運算的設(shè)計是非常要的[3]。只要這些基本模塊編寫完成之后,按照上述的步驟即可進行譯碼軟件代碼的編寫。

      2.1 有限域加法器

      rs_add.m模塊:y=rs_add(a,b)入口參數(shù)a,b均為模255的十進制數(shù),進入函數(shù)后先進行十進制到二進制的轉(zhuǎn)換,然后按比特異或,將結(jié)果進行二進制到十進制的轉(zhuǎn)換并賦值給y。

      2.2 有限域乘法器

      rs_multi.m模塊:y=rs_multi(a,b) 口參數(shù)a,b均為模255的十進制數(shù),進入函數(shù)后先進行十進制到二進制的轉(zhuǎn)換,然后按比特進行GF(2^8)域RS(18,10)的簡化的運算。這樣硬件處理在一個運算周期就可以完成乘法。

      2.3 求逆器

      rs_invers.m模塊:求逆運算比較復(fù)雜,為了加速譯碼速度,考慮到該有限域的元素數(shù)目總數(shù)不多,采用查找表法。在硬件實現(xiàn)時做一個rom的查找表即可。

      2.4 性能仿真

      圖1是對RS(18,10)碼在AWGN信道下的性能仿真,調(diào)制方式為bpsk,發(fā)送端和接收端對數(shù)據(jù)采用8倍過采樣根升余弦滾降濾波進行成形濾波,假設(shè)接收端理想同步。‘*’為沒有加RS碼的性能曲線圖,‘o’為加了RS碼的性能曲線。橫軸為Eb/N0(單位為dB),縱軸為誤比特率。

      圖1 性能曲線

      3 結(jié)語

      本文對RS(18,10)的譯碼算法進行了分析,并給出了進行 matlab軟件實現(xiàn)的方法,其中算法考慮到硬件算法的設(shè)計,設(shè)計了很多基本運算的m函數(shù)和算法各個模塊的m函數(shù),這些都給算法驗證和硬件設(shè)計提供了參考和指導(dǎo)。并且對該RS碼進行了在AWGN信道下的性能仿真,可以看出,在Eb/N0比較小的時候RS碼的作用不是很顯著,但是隨著Eb/N0的提高,RS(18,10)可以顯著的提高誤比特率,在誤比特率為10-3的時候有3 dB的增益。

      [1] 李國靜,鄒永忠,李道本.一種適用于RS的低復(fù)雜度軟入軟出譯碼方法[C]//第十二屆全國青年通信學(xué)術(shù)會議.北京:北方工業(yè)大學(xué),2007.

      [2] [美] Schwarts M. Mobile Wireless Communications[M].許希斌,李云洲譯.北京:電子工業(yè)出版社,2006:120-130.

      [3] [美] Proakis J P, Salehi M, Bauch G. Contemporary Communication Systems Using MATLAB and Simulink[M].劉樹棠譯.第2版.北京:電子工業(yè)出版社,2005:285-296.

      猜你喜歡
      碼字譯碼運算
      重視運算與推理,解決數(shù)列求和題
      基于校正搜索寬度的極化碼譯碼算法研究
      有趣的運算
      放 下
      揚子江詩刊(2018年1期)2018-11-13 12:23:04
      數(shù)據(jù)鏈系統(tǒng)中軟擴頻碼的優(yōu)選及應(yīng)用
      放下
      揚子江(2018年1期)2018-01-26 02:04:06
      “整式的乘法與因式分解”知識歸納
      撥云去“誤”學(xué)乘除運算
      從霍爾的編碼譯碼理論看彈幕的譯碼
      新聞傳播(2016年3期)2016-07-12 12:55:27
      LDPC 碼改進高速譯碼算法
      遙測遙控(2015年2期)2015-04-23 08:15:19
      霞浦县| 中阳县| 康乐县| 安远县| 汉沽区| 郯城县| 英吉沙县| 东海县| 资源县| 黄龙县| 威海市| 湘潭市| 托里县| 铜梁县| 海淀区| 阜城县| 北流市| 栖霞市| 玉树县| 红原县| 乌海市| 漯河市| 张家口市| 宁晋县| 镇安县| 自贡市| 兴山县| 甘谷县| 金门县| 孝昌县| 太保市| 施秉县| 五指山市| 桐城市| 调兵山市| 衡阳县| 通江县| 屯门区| 天津市| 那坡县| 湖南省|