999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的RS(255,239)譯碼器的設計與實現

2016-09-08 01:35:46胡雪川劉會杰
電子設計工程 2016年1期
關鍵詞:設計

胡雪川,劉會杰

(1.上海微小衛星工程中心 上海 201210;2.上海科技大學 信息學院,上海200031)

基于FPGA的RS(255,239)譯碼器的設計與實現

胡雪川1,2,劉會杰1

(1.上海微小衛星工程中心 上海201210;2.上海科技大學 信息學院,上海200031)

為了解決在RS譯碼中存在的譯碼過程復雜、譯碼速度慢和專用譯碼器價格高等問題,以RS(255,239)碼為例,采用了基于改進的無求逆運算的 Berlekamp-Massey(BM)迭代算法。結合FPGA平臺,利用Xilinx ISE軟件和Verilog硬件描述語言,對譯碼器中各個子模塊進行了設計和仿真。整個譯碼器設計過程采用流水線處理方式。時序仿真結果表明在保證錯誤符號不大于8個的情況下,經過295個固有延遲之后,每個時鐘周期均可連續輸出經校正的碼字,該RS譯碼器的糾錯能力能夠達到預期要求。

RS譯碼器;FPGA;改進型BM算法;流水線

Reed-Solomon(RS)碼是一類具有很強糾錯能力的BCH碼,可以同時糾正突發錯誤和隨機錯誤,目前已經被廣泛應用在各種通信系統中。很多國際標準采用了RS碼,例如在遙測信道編碼中將 RS(255,223)系統碼作為標準使用。

美國的蜂窩數字分組數據系統 (CDPD)中采用了(63,47)RS碼。在數字電視領域中,DVB標準中使用的都是RS(204,188),ATSC標準中使用的是RS(207,187)[1]。

在近十年,國內對糾錯碼的研究也越來越重視,許多行業都根據自身的特點把糾錯碼應用到實際場合中以此來改善其行業系統性能。

文中以光纖通信中采用的RS(255,239)碼為例,詳細分析了基于改進的無求逆運算的 Berlekamp-Massey(BM)迭代算法的 RS譯碼原理,并用 Xilinx公司的可編程邏輯門陣列(FPGA)芯片進行了設計和實現。

1 RS碼結構及其譯碼原理

1.1RS碼的結構

根據CCSDS相關規定,RS(255,239)碼[2]參數如下:

1)碼長:n=255,為 RS(255,239)碼一個碼字所包含的符號個數;

2)信息位:k=239,為 RS(255,239)碼一個碼字信息位的符號個數;

3)校驗位:2t=n-k=16,為RS(255,239)碼一個碼字檢驗位的符號個數;

4)糾錯能力:t=8,為 RS(255,239)碼一個碼字內所能糾正的最大錯誤符號個數;

5)每個符號數:m=8,為RS(255,239)碼一個符號數表示信息位個數;

6)GF(28)域上的生成多項式為F(x)=x8+x7+x2+x+1;

1.2RS碼的譯碼原理

RS譯碼主要分為時域譯碼和頻域譯碼兩種算法,常見的算法有 PGZ算法、歐式算法 (Euclid's Algorithm)和 BM (Berlekamp-Massey)迭代算法[3-5]。

PGZ算法容易理解,實現起來也簡單,但計算量隨著碼長的增加呈指數增長,這要求譯碼器的運算速度很高。所以PGZ算法通常只用在實現較短的RS譯碼中。

BM算法可分為時域算法和頻域算法。時域算法主要利用Forney算法和錯誤位置獲取錯誤圖樣。頻域譯碼則是根據錯誤位置多項式來獲得相應的校驗子序列,然后對所得到的所有校驗子進行傅里葉反變換,從而獲得錯誤圖樣。雖然頻域算法可利用快速傅里葉算法使得譯碼速度大幅度提高,但是實現過程相對比較復雜。

Euclid's算法是通過求解兩個多項式最大公因式,獲得錯誤位置多項式及錯誤值多項式,其它的計算同BM算法。Euclid's算法與BM算法的主要區別在于關鍵方程計算的迭代過程,BM迭代是基于自回歸濾波器綜合原理求最短反饋連接多項式代數迭代過程,Euclid迭代是基于多項式分解原理求兩個多項式的最大公因式的迭代過程,需進行多項式次數的判斷。

在RS譯碼中,求解關鍵方程是最重要的環節。根據以上3種算法的各自特點,結合譯碼器譯碼時延遲小、資源消耗少、電路簡單等設計要求,本文采用改進后無求逆運算的BM迭代時域譯碼算法并以該算法為基礎在FPGA平臺上進行了RS譯碼器的實現。

RS譯碼主要分為5步[3](如圖1所示):

1)根據接收到的碼組計算伴隨式;

2)根據已得到的伴隨式計算關鍵方程得到錯誤位置多項式;

3)根據錯誤位置多項式得到錯誤位置;

4)根據錯誤位置多項式和伴隨式得到錯誤樣值;

5)根據錯誤位置、錯誤樣值和由先入先出緩存延遲輸出的接收碼組進行錯誤校正。

圖1 RS譯碼器的一般框圖Fig.1 General block diagram of RS decoder

將n=255,b0=1代入,則有:

在工程設計中,通常使用流水線結構硬件實現伴隨式的計算,其計算框架如圖2所示。其中,“茚”代表有限域乘法,“茌”代表有限域加法。模塊初始化時,所有的寄存器被置為0。隨著每個時鐘沿的到來,依次將R1,R2,…,R255移入移位寄存器。16個伴隨式在經過 255個時鐘周期之后即可計算出來。如果伴隨式系數都為0,則表明接收到的碼字全部正確,錯誤個數為 0;否則錯誤個數大于0。

圖2 通用伴隨式計算框圖Fig.2 Universal block diagram of syndrome computation

1.2.2改進的BM算法模塊

當2t個伴隨式都求出后,錯誤位置多項式Λ(x)就可以通過改進的BM算法來求解了。

因為最早提出的BM算法需要用到有限域元素求逆運算。這種算法在每次迭代中都需要有限域的除法運算,有限域求逆(除法)運算很復雜,其復雜性使得這種算法不適合高速實現。因此,人們提出無需求逆的BM算法[4-6],改進后的算法過程如下:

1)初始化:Λ(0)(x)=1,T(0)(x)=1,L(0)(x)=0,γ(0)(x)=1,k=0;

2)下面步驟從式(2)到式(6)循環迭代,直到k=2t-1時,循環結束:

當Δ(k-1)=0或者2L(k)>k時,

否則當Δ(k-1)≠0或者2L(k)≤k時,

其中,Λ(k-1)(x)是錯誤位置多項式。

很顯然,式(2)中Δ是Λ(x)與S(x)的卷積和運算。為了實現流水線處理,可以采用有限脈沖響應 (FIR)濾波器技術來實現流水線處理,如圖3所示。初始化時,所有寄存器置0,然后隨著每個時鐘的上升沿到來,依次將S1,S2,…,S2t移入移位寄存器,最終可得到錯誤位置多項式Λ(x)的各個系數。

圖3 FIR濾波器計算ΔFig.3 Computing Δ using FIR filter

1.2.3Chien搜索算法模塊

求解錯誤位置多項式σ(x)的根,本質就是找出接收多項式R(x)中哪幾位出現錯誤。由于用硬件直接解方程比較復雜,人們通常使用Chien搜索算法來搜索錯誤位置,即搜索解空間所有可能發生錯誤的位置來求根。根據有限域性質,當σ(αi)=0時差錯位置為(n-i),即出錯Rn-i;否則σ(αi)≠0,Rn-i正確。

圖4 Chien搜索模塊框架Fig.4 Chien search module frame

具體實現方法是,依次將有限域元素的倒數(即σ(x)的根)α-(n-1),α-(n-2),…α-1,1代入等價的錯誤位置多項式 Λ(x)。若Λ(α-i)=0,則可斷定該位置出現了誤碼[5]。等效的實現框圖如圖4所示。

1.2.4Forney算法模塊

在求出等價的錯誤位置多項式Λ(x)后,可以利用等價的錯誤計算多項式Ω(x)[6-7],即

因為Ω(x)的結果為modx2t,所以的最高次數為2t-1。因此,對于RS(255,239),Ω(x)可表示為:

Ω(x)的系數可分別表示為:

可以看出,兩個多項式的相乘其實質是多項式對應的系數卷積求和。因此式(9)運算也可以用FIR濾波器技術來實現。

在計算錯誤值ei時,還需要計算錯誤位置多項式Λ(x)的導數Λ′(x)。Λ(x)可表示為:

對于RS(255,239)碼而言,Λ(x)=Λ0+Λ1x+Λ2x2+…+Λ8x8。根據有限域的知識,域GF(qm)的特征為q,即域中的任一元素累加q次的和為0。所以,對于RS(255,239)碼而言,錯誤位置多項式Λ(x)的導數Λ′(x)可表示為:

根據式(12)和事先存好求逆查找表,即可求出錯誤樣值。

1.2.5先入先出緩存模塊

先入先出(FIFO,First In First Out)是一種用于存儲、緩沖不同時鐘之間的數據傳輸的電路。RS譯碼器檢錯糾錯需要一定的時間延遲,需要設計 FIFO控制器來實現接收數據的緩存。本文中并未單獨設計FIFO,而是使用了ISE系統庫中的FIFO模塊,固有延遲時間為295個周期。

對于RS(255,239)碼而言,

2 RS譯碼器的FPGA實現與仿真

采用XIlinx公司生產的Virtex4芯片XC4VSX55,在ISE 13.4環境下,結合圖1所示的流程對RS譯碼器進行了設計,設計完成的RS譯碼器模塊截圖如圖5所示。

圖5 RS譯碼器模塊Fig.5 RS decoder module

圖5中,輸入信號為clk,Din[7..0]和sync。輸出信號為Err_Indicator、BLK_STRT_output、BLK_END_output、INFO_END_output和Dout[7..0]。

其中,在輸入信號中,clk為時鐘,Din[7..0]為接收到的并已經編碼好之后的碼組,sync為同步信號,且高脈沖的時候表示譯碼器開始工作。在輸出信號中,Err_Indicator用來指示錯誤位置,BLK_STRT_output為高脈沖時,表示經過糾錯的完整碼組的起始位置,BLK_END_output為高脈沖時,表示經過糾錯的完整碼組的結束位置,INFO_END_output為高脈沖時,表示經過糾錯的完整信息位的結束位置,Dout[7..0]為經過糾錯的完整碼組。

仿真過程中,在事先由MATLAB計算出的一組正確的RS(255,239)碼(設定該碼字的信息位為1到239,則計算可得校驗碼為 37,133,225,126,37,59,132,133,56,168,179,4,9,99,79,148)中輸入錯碼,為體現 RS譯碼器糾錯能力,分別進行兩次測試。

在第一次時序仿真測試中,錯碼為1組連續3個錯碼,2組連續2個錯碼,1個錯碼,將這4組錯碼隨機分布在碼組中(括號內為正確值):1,2,19(3),20(4),37(5),6,7,24(8),41(9),10,11,44(12),29(13),14,15,64(16),17,18,…,238,239,…,79,148

圖6 RS譯碼器糾錯仿真一Fig.6 The first error correction simulation of RS decoder

通過本譯碼器糾錯后仿真結果如圖6(a)、圖6(b)所示。

在第二次時序仿真測試中,錯碼為1組連續8個錯碼,將這組錯碼隨機分布在碼組中 (括號內為正確值):

1,2,3,...,33,34,66(35),53(36),41(37),152(38),119 (39),135(40),85(41),67(42),43,44,...,239,...,79,148

通過本譯碼器糾錯后仿真結果如圖7所示。

圖7 RS譯碼器糾錯仿真二Fig.7 The second error correction simulation of RS decoder

如圖6、圖7所示,錯誤位置Err_Indicator與預期結果一致。此外,RS[8-10]譯碼器將接收碼組中出現的8個隨機錯碼和連續錯碼全部糾正為正確碼字,實現了譯碼糾錯的功能。此外,還可以正確地指示出譯碼后整個碼字的起始、結束位置和信息位結束位置。在保證錯誤符號不大于8個的情況下,每個時鐘周期均可連續輸出經校正的碼字。

3 結束語

文中根據改進的無求逆運算的BM迭代譯碼算法,實現了RS(255,239)譯碼器的設計。在對譯碼器的測試過程中,分別假定出現隨機出現8個誤碼和連續8個誤碼的情況,并用ISim對所設計的譯碼器進行驗證。由時序仿真結果表明,設計的RS(255,239)譯碼器正確有效,該RS譯碼器的糾錯能力能夠達到預期要求。

[1]陸松.基于DVB標準的RS糾錯編解碼器的設計與實現計與實現[D].桂林:桂林電子科技大學,2009.

[2]石俊峰,王宇,孫輝先.符合CCSDS標準的RS(255,223)碼譯碼器的 FPGA實現及其性能測試[J].空間科學學報,2005,25(4):309-314.

[3]You J,Wu S.Design and realization of Reed-Solomon code based on FPGA technique[C]//Mechatronic Science,Electric Engineering and Computer(MEC),2011 International Conference on.IEEE,2011:2086-2089.

[4]王鋒.RS譯碼器算法研究與實現[D].蘇州:蘇州大學,2010.

[5]莫新康,牛強軍,宋家友.基于 FPGA的 RS譯碼器的設計與實現[J].信息安全與通信保密,2010(12):84-85.

[6]劉福奇,劉波.Verilog HDL應用程序設計實例精講[M].北京:電子工業出版社,2009.

[8]王鵬,涂友超,龔克.彈載數據鏈系統實時RS譯碼器設計[J].電訊技術,2015(5):527-532.

[9]任朋利,劉峰華,邵志豪.引信RS422總線全雙工通訊裝定方法[J].電子設計工程,2014(3):66-68.

[10]孟凱.基于FPGA的RS(255,239)編譯碼器[J].電子科技,2014(8):33-35.

Design and implementation of RS(255,239)decoder based on FPGA

HU Xue-chuan1,2,LIU Hui-jie1
(1.Shanghai Engineering Center For Microsatellites,Shanghai 201210,China;2.School of Information Science and Technology,ShanghaiTech University,Shanghai 200031,China)

In order to solve the problem such as the complexity of RS decoding process,low decoding speed,expensive specific RS decoder and so on that exists when the RS code is decoded,the RS(255,239)code is taken as an example,and the RS decoding theory based on the improved non-inversion Berlekamp-Massey(BM)iterative algorithm is introduced. On the FPGA platform,each submodule of the decoder has been designed and simulated by using the Verilog hardware description language and the software of Xilinx ISE 13.4.Pipeline approach is used in the entire decoder design process. Timing simulation results show that if there exists no more than eight errors,after 295 inherent delay,the decoder can output the corrected code word continuously in each clock cycle,and the ability of error correcting of RS decoder meets the expectations.

RS decoder;FPGA;improved BM algorithm;pipeline

TN914

A

1674-6236(2016)01-0099-04

2015-06-14稿件編號:201506141

國防科技創新基金(CXJJ-15S086)

胡雪川(1993—),男,江西吉安人,碩士研究生。研究方向:衛星通信信號處理。

猜你喜歡
設計
二十四節氣在平面廣告設計中的應用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統設計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發生器仿真設計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設計到“設計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 国产无套粉嫩白浆| 亚洲AV无码久久精品色欲| 天堂成人在线视频| 毛片大全免费观看| 国产麻豆精品手机在线观看| 97国产成人无码精品久久久| 久久香蕉国产线看观看式| 午夜国产大片免费观看| 波多野结衣一区二区三区88| 无码免费的亚洲视频| 亚洲欧美一区二区三区蜜芽| 特级精品毛片免费观看| 精品无码国产一区二区三区AV| 国产91全国探花系列在线播放| 亚洲精品天堂自在久久77| av在线手机播放| 色国产视频| 丝袜美女被出水视频一区| 亚洲AV永久无码精品古装片| 国产成人综合在线视频| 鲁鲁鲁爽爽爽在线视频观看| 91精品亚洲| 亚洲无码不卡网| 91免费国产高清观看| aⅴ免费在线观看| 91原创视频在线| 三级毛片在线播放| 自拍偷拍欧美| 五月婷婷欧美| 欧洲极品无码一区二区三区| 亚洲一本大道在线| 狠狠色香婷婷久久亚洲精品| 日韩欧美国产综合| 一本久道久久综合多人| 午夜福利免费视频| 2021国产精品自产拍在线| 视频一本大道香蕉久在线播放| 91精品啪在线观看国产91九色| www.狠狠| 国内精品视频| 人人91人人澡人人妻人人爽| 无码日韩人妻精品久久蜜桃| 国产亚洲精久久久久久久91| 免费观看精品视频999| 国产乱人伦AV在线A| 久久综合九色综合97网| 国产免费高清无需播放器| 亚洲一区毛片| 亚洲第一成年网| 亚洲日韩久久综合中文字幕| 亚洲av成人无码网站在线观看| 欧美视频在线播放观看免费福利资源 | 亚洲无码高清免费视频亚洲| 女人18毛片一级毛片在线 | 福利视频一区| 亚洲成年人片| 国产自在线播放| 中国国语毛片免费观看视频| 国产特一级毛片| 国产人成在线视频| 国产欧美在线观看视频| 欧美日韩理论| 999在线免费视频| 国产人前露出系列视频| 久久大香香蕉国产免费网站| 米奇精品一区二区三区| 国产制服丝袜91在线| 亚洲日韩高清在线亚洲专区| 亚洲第一视频区| 国产无码高清视频不卡| 青青网在线国产| 激情综合激情| 亚洲精品麻豆| 国产欧美综合在线观看第七页| 欧美α片免费观看| 国产精品太粉嫩高中在线观看| 亚洲av色吊丝无码| 91精品人妻一区二区| 国产v精品成人免费视频71pao| 国产99欧美精品久久精品久久| 国产无码网站在线观看| 五月婷婷伊人网|