高速并行Reed-Solomon編解碼器

發(fā)布時(shí)間:2010-10-6 21:18    發(fā)布者:eetech
關(guān)鍵詞: Reed , Solomon , 編解碼器 , 并行 , 高速
1 引言

Reed-Solomon(簡(jiǎn)稱(chēng)RS)碼是差錯控制領(lǐng)域中一類(lèi)重要的線(xiàn)性分組碼,具有較強的糾正突發(fā)錯誤和隨機錯誤的能力,廣泛應用于各種差錯控制領(lǐng)域。RS解碼器可在FPGA或ASIC上實(shí)現IP核。但目前國內RS編碼速度約為400 Mb/s,糾錯能力為4 bit,仍存在編碼速度低、糾錯能力不完善、系統的吞吐率受限等問(wèn)題。因此提出一種改進(jìn)的IBM算法.進(jìn)一步提高RS編碼器的編碼速度及糾錯能力,擴大應用范圍。這樣RS編解碼器能夠實(shí)現遠距離傳輸信息,太空航天通信的快速存儲及全球定位系統需求。

2 RS編解碼原理

2.1 編碼原理

m=(m0,m1…mk-1)表示GF(28)的k位信息符號序列,該信息矢量多項式:m(x)=m+m1x+…+mk-lxk-1。將左移2t位的信息多項式與生成多項式g(x)相除,得到:p(x)=x2m(x)modg(x),c(x)=x2tm(x)+p(x)。顯然,以矢量表示編碼后的碼字為:C=(p,p,…p,m,m,…m)。編碼的碼字C中,信息位可以清晰地與校驗位區分開(kāi)。因此,RS編碼的實(shí)質(zhì)就是解決以生成多項式g(x)為模的除法問(wèn)題。

2.2 解碼原理

RS解碼算法分時(shí)域解碼算法和頻域解碼算法。這里主要討論時(shí)域解碼算法。時(shí)域解碼是將碼字看成時(shí)間軸上的信號序列,利用碼的代數結構進(jìn)行解碼。常見(jiàn)的IBM算法解碼分為四個(gè)步聚:①由接收的碼字R(x)計算伴隨式S(x);②根據關(guān)鍵方程計算錯誤值多項式w(a)和錯誤位置多項式σ(x);③錢(qián)搜索找到錯誤位置,并計算錯誤值;④糾正錯誤。圖1為RS編解碼系統原理圖,其中虛線(xiàn)框部分是編碼器流程。其余則為解碼流程。

3 實(shí)現RS(204,188)編解碼器

3.1 RS優(yōu)化的編碼方法

傳統的編碼器算法實(shí)現RS(204,188)編碼器,需要16個(gè)有限域乘法器和16個(gè)有限域加法器。根據RS碼型的確定來(lái)固定RS碼的生成多項式,圖2中g(shù)0,g1……g15為常數,RS編碼器邏輯電路的乘法器則變?yōu)槌怠磷兞康男问,利用有限域常數乘法器的特點(diǎn),對編碼器進(jìn)行兩級優(yōu)化,具體操作如下:①)GF(28)域上的RS(204,188)生成多項式為:g(x)=(x+1)(x+a)(x+a2)…(x+a15),其中a,a2…a15為GF(28)的本原元。生成多項式確定后,計算得到生成多項式的16個(gè)系數g0,g1…g15。當有限域乘法器的一個(gè)乘數為常數時(shí),乘數運算時(shí)只需模2運算所需的異或門(mén)而不用與門(mén);②預先計算出現頻率較高的并或運算,使用新元素代替矩陣中重復出現的異或計算,這樣就實(shí)現乘法器結構的第二級優(yōu)化。



利用上述兩種優(yōu)化RS編碼器的乘法器的方法能夠實(shí)現RS(204,188)編碼器,可節省RS(204,188)編碼器資源20%。

3.2 解碼實(shí)現電路

RS(204,188)編碼解碼器的解碼按以下四個(gè)步驟實(shí)現:①從接收到的碼字R(x)計算伴隨式S(x);②利用IBM算法計算錯誤位置多項式σ(x)和錯誤值多項式w(x);③利用錢(qián)搜索算法找出錯誤位置;④利用Fomey算法計算錯誤值,與FIFO控制器所存儲的接收碼字相異或,得到正確的傳輸碼字。圖3給出RS(204,188)編解碼器的解碼電路。



3.3 改進(jìn)的流水線(xiàn)結構

圖4給出了傳統和改進(jìn)的流水線(xiàn)結構對比。傳統的流水線(xiàn)結構各模塊處理周期差距很大,約達8:1比例,造成周期極大浪費。改進(jìn)的流水線(xiàn)結構則采用時(shí)分復用,可在相應的處理周期不變的情況下可將并行處理的數據率提高到原數據率的8倍。



4 FPGA仿真測試

在OuatusⅡ5.O平臺上采用Verilog編寫(xiě)編解碼器代碼,測試步驟為:分析與綜合;生成功能網(wǎng)表;配置輸入信號波形;功能仿真;整體編譯;時(shí)間仿真。

4.1 系統性能測試

(1)資源利用率綜合功能仿真和時(shí)間仿真的編譯報告,系統占用資源詳細情況如表1所示。



(2)解碼數據率解碼數據率=每幀數據的字節數×解碼頻率/系統所需周期。采用Ahera公司的RS解碼器的IP器件,使用CycloneⅡ器件,其解碼數據率為104 Mb/s。由該設計的時(shí)序仿真表明解碼器8路復用后的解碼數據率高達116.65 Mb/s。

(3)糾錯能力及糾錯仿真糾錯能力由碼型、解碼算法、控制信號、時(shí)鐘等因素共同決定,該設計的單路數據輸入解碼器最大糾錯能力為7字節/204字節(每幀數據204字節,糾正隨機錯誤7字節),接近RS碼的糾錯上限8字節/204字節。8位輸入數據發(fā)生錯誤:02H~09H變成了01H,經(jīng)系統糾錯得到正確的輸出波形。

4.2 系統構造

(1)查表法代替復雜的求逆單元為了獲得更高的解碼速率,使用更少的FPGA資源,系統設計使用標準基到復數基的變換與逆變換,用復數基進(jìn)行乘法器設計,除法器設計是把處理數據從標準基轉化為指數冪的表示形式,改用高效查表法代替復雜的求逆單元,將σ(x)的逆單元按照尋址方式轉換為表格形式,在程序中直接調用,簡(jiǎn)化設計,提高了解碼頻率。

(2)并行流水線(xiàn)結構 由于傳統設計是利用SC模塊求解伴隨式,KES模塊求解關(guān)鍵方程,CESS模塊求解錯誤位置和錯誤值,它們之間的處理周期差距很大,造成周期的極大浪費。而采用時(shí)分復用的流水線(xiàn)結構可有效解決這一問(wèn)題,對結構簡(jiǎn)單的模塊進(jìn)行復用,在處理周期基本不變的情況下,從而提高并行處理的解碼數據率。

5 結語(yǔ)

RS編解碼器應用于諸多系統,例如:在數據傳輸鏈路應用中,可在SAN DHB和SAN Target上安裝高速并行RS解碼器,提高遠距離光纖存儲系統的可靠性;將RS糾錯碼應用于突發(fā)錯誤率較高的網(wǎng)絡(luò ),并與高速的RAID的存儲體系相結合,彌補由于使用RS編碼器產(chǎn)生的延遲,從而實(shí)現網(wǎng)絡(luò )存儲系統的安全性和高速性。
本文地址:http://selenalain.com/thread-30498-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页