解析并行RS解碼器的特點(diǎn)
出處:z1y2u3 發(fā)布于:2011-09-01 22:50:50
1 引言
Reed-Solomon(簡(jiǎn)稱RS)碼是差錯(cuò)控制領(lǐng)域中一類重要的線性分組碼,具有較強(qiáng)的糾正突發(fā)錯(cuò)誤和隨機(jī)錯(cuò)誤的能力,廣泛應(yīng)用于各種差錯(cuò)控制領(lǐng)域。RS解碼器可在FPGA或ASIC上實(shí)現(xiàn)IP核。FPGA(Field-Programmable Gate Array),即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。ASIC是Application Specific Integrated Circuit的英文縮寫,在集成電路界被認(rèn)為是一種為專門目的而設(shè)計(jì)的集成電路。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。但目前國(guó)內(nèi)RS編碼速度約為400 Mb/s,糾錯(cuò)能力為4 bit,仍存在編碼速度低、糾錯(cuò)能力不完善、系統(tǒng)的吞吐率受限等問(wèn)題。
2 RS編解碼原理
2.1 編碼原理
編解碼器(codec)指的是一個(gè)能夠?qū)σ粋€(gè)信號(hào)或者一個(gè)數(shù)據(jù)流進(jìn)行變換的設(shè)備或者程序。這里指的變換既包括將信號(hào)或者數(shù)據(jù)流進(jìn)行編碼(通常是為了傳輸、存儲(chǔ)或者加密)或者提取得到一個(gè)編碼流的操作,也包括為了觀察或者處理從這個(gè)編碼流中恢復(fù)適合觀察或操作的形式的操作。編解碼器經(jīng)常用在視頻會(huì)議和流媒體等應(yīng)用中。
m=(m0,m1…mk-1)表示GF(28)的k位信息符號(hào)序列,該信息矢量多項(xiàng)式:m(x)=m+m1x+…+mk-lxk-1.將左移2t位的信息多項(xiàng)式與生成多項(xiàng)式g(x)相除,得到:p(x)=x2m(x)modg(x),c(x)=x2tm(x)+p(x)。顯然,以矢量表示編碼后的碼字為:C=(p,p,…p,m,m,…m)。編碼的碼字C中,信息位可以清晰地與校驗(yàn)位區(qū)分開(kāi)。因此,RS編碼的實(shí)質(zhì)就是解決以生成多項(xiàng)式g(x)為模的除法問(wèn)題。
2.2 解碼原理
RS解碼算法分時(shí)域解碼算法和頻域解碼算法。這里主要討論時(shí)域解碼算法。時(shí)域解碼是將碼字看成時(shí)間軸上的信號(hào)序列,利用碼的代數(shù)結(jié)構(gòu)進(jìn)行解碼。常見(jiàn)的IBM算法解碼分為四個(gè)步聚:①由接收的碼字R(x)計(jì)算伴隨式S(x);②根據(jù)關(guān)鍵方程計(jì)算錯(cuò)誤值多項(xiàng)式w(a)和錯(cuò)誤位置多項(xiàng)式σ(x);③錢搜索找到錯(cuò)誤位置,并計(jì)算錯(cuò)誤值;④糾正錯(cuò)誤。圖1為RS編解碼系統(tǒng)原理圖,其中虛線框部分是編碼器流程。其余則為解碼流程。
3 實(shí)現(xiàn)RS(204,188)編解碼器
3.1 RS優(yōu)化的編碼方法
傳統(tǒng)的編碼器算法實(shí)現(xiàn)RS(204,188)編碼器,需要16個(gè)有限域乘法器和16個(gè)有限域加法器。根據(jù)RS碼型的確定來(lái)固定RS碼的生成多項(xiàng)式,圖2中g(shù)0,g1……g15為常數(shù),RS編碼器邏輯電路的乘法器則變?yōu)槌?shù)×變量的形式,利用有限域常數(shù)乘法器的特點(diǎn),對(duì)編碼器進(jìn)行兩級(jí)優(yōu)化,具體操作如下:①)GF(28)域上的RS(204,188)生成多項(xiàng)式為:g(x)=(x+1)(x+a)(x+a2)…(x+a15),其中a,a2…a15為GF(28)的本原元。生成多項(xiàng)式確定后,計(jì)算得到生成多項(xiàng)式的16個(gè)系數(shù)g0,g1…g15.當(dāng)有限域乘法器的一個(gè)乘數(shù)為常數(shù)時(shí),乘數(shù)運(yùn)算時(shí)只需模2運(yùn)算所需的異或門而不用與門;②預(yù)先計(jì)算出現(xiàn)頻率較高的并或運(yùn)算,使用新元素代替矩陣中重復(fù)出現(xiàn)的異或計(jì)算,這樣就實(shí)現(xiàn)乘法器結(jié)構(gòu)的第二級(jí)優(yōu)化。

利用上述兩種優(yōu)化RS編碼器的乘法器的方法能夠?qū)崿F(xiàn)RS(204,188)編碼器,可節(jié)省RS(204,188)編碼器資源20%.
3.2 解碼實(shí)現(xiàn)電路
RS(204,188)編碼解碼器的解碼按以下四個(gè)步驟實(shí)現(xiàn):①?gòu)慕邮盏降拇a字R(x)計(jì)算伴隨式S(x);②利用IBM算法計(jì)算錯(cuò)誤位置多項(xiàng)式σ(x)和錯(cuò)誤值多項(xiàng)式w(x);③利用錢搜索算法找出錯(cuò)誤位置;④利用Fomey算法計(jì)算錯(cuò)誤值,與FIFO控制器所存儲(chǔ)的接收碼字相異或,得到正確的傳輸碼字。圖3給出RS(204,188)編解碼器的解碼電路。

3.3 改進(jìn)的流水線結(jié)構(gòu)
圖4給出了傳統(tǒng)和改進(jìn)的流水線結(jié)構(gòu)對(duì)比。傳統(tǒng)的流水線結(jié)構(gòu)各模塊處理周期差距很大,約達(dá)8:1比例,造成周期極大浪費(fèi)。改進(jìn)的流水線結(jié)構(gòu)則采用時(shí)分復(fù)用,可在相應(yīng)的處理周期不變的情況下可將并行處理的數(shù)據(jù)率提高到原數(shù)據(jù)率的8倍。

4 FPGA仿真測(cè)試
在OuatusⅡ5.O平臺(tái)上采用Verilog編寫編解碼器代碼,Verilog HDL是一種硬件描述語(yǔ)言(HDL:Hardware Discription Language),是一種以文本形式來(lái)描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的語(yǔ)言,用它可以表示邏輯電路圖、邏輯表達(dá)式,還可以表示數(shù)字邏輯系統(tǒng)所完成的邏輯功能。 Verilog HDL和VHDL是目前世界上的兩種硬件描述語(yǔ)言,都是在20世紀(jì)80年代中期開(kāi)發(fā)出來(lái)的。前者由Gateway Design Automation公司(該公司于1989年被Cadence公司收購(gòu))開(kāi)發(fā)。兩種HDL均為IEEE標(biāo)準(zhǔn)。測(cè)試步驟為:分析與綜合;生成功能網(wǎng)表;配置輸入信號(hào)波形;功能仿真;整體編譯;時(shí)間仿真。FPGA仿真,由線路板、FPGA芯片和電纜接口構(gòu)成,其特征在于所述的FPGA芯片和電纜接口設(shè)置有所述的線路板上,所述的阻抗匹配器連接設(shè)置有存儲(chǔ)器,所述的存儲(chǔ)器與所述的FPGA芯片相連接,電子信號(hào)由電纜接口連接所述的線路板內(nèi),經(jīng)存儲(chǔ)器緩存后,傳至所述的FPGA芯片。
4.1 系統(tǒng)性能測(cè)試
?。?)資源利用率綜合功能仿真和時(shí)間仿真的編譯,系統(tǒng)占用資源詳細(xì)情況如表1所示。

?。?)解碼數(shù)據(jù)率解碼數(shù)據(jù)率=每幀數(shù)據(jù)的字節(jié)數(shù)×解碼頻率/系統(tǒng)所需周期。采用Ahera公司的RS解碼器的IP器件,使用CycloneⅡ器件,其解碼數(shù)據(jù)率為104 Mb/s.由該設(shè)計(jì)的時(shí)序仿真表明解碼器8路復(fù)用后的解碼數(shù)據(jù)率高達(dá)116.65 Mb/s.
?。?)糾錯(cuò)能力及糾錯(cuò)仿真糾錯(cuò)能力由碼型、解碼算法、控制信號(hào)、時(shí)鐘等因素共同決定,該設(shè)計(jì)的單路數(shù)據(jù)輸入解碼器糾錯(cuò)能力為7字節(jié)/204字節(jié),接近RS碼的糾錯(cuò)上限8字節(jié)/204字節(jié)。8位輸入數(shù)據(jù)發(fā)生錯(cuò)誤:02H~09H變成了01H,經(jīng)系統(tǒng)糾錯(cuò)得到正確的輸出波形。
4.2 系統(tǒng)構(gòu)造
?。?)查表法代替復(fù)雜的求逆單元為了獲得更高的解碼速率,使用更少的FPGA資源,系統(tǒng)設(shè)計(jì)使用標(biāo)準(zhǔn)基到復(fù)數(shù)基的變換與逆變換,用復(fù)數(shù)基進(jìn)行乘法器設(shè)計(jì),除法器設(shè)計(jì)是把處理數(shù)據(jù)從標(biāo)準(zhǔn)基轉(zhuǎn)化為指數(shù)冪的表示形式,改用高效查表法代替復(fù)雜的求逆單元,將σ(x)的逆單元按照尋址方式轉(zhuǎn)換為表格形式,在程序中直接調(diào)用,簡(jiǎn)化設(shè)計(jì),提高了解碼頻率。
?。?)并行流水線結(jié)構(gòu) 由于傳統(tǒng)設(shè)計(jì)是利用SC模塊求解伴隨式,KES模塊求解關(guān)鍵方程,CESS模塊求解錯(cuò)誤位置和錯(cuò)誤值,它們之間的處理周期差距很大,造成周期的極大浪費(fèi)。
5 結(jié)語(yǔ)
RS編解碼器應(yīng)用于諸多系統(tǒng),例如:在數(shù)據(jù)傳輸鏈路應(yīng)用中,可在SAN DHB和SAN Target上安裝高速并行RS解碼器,提高遠(yuǎn)距離光纖存儲(chǔ)系統(tǒng)的可靠性;將RS糾錯(cuò)碼應(yīng)用于突發(fā)錯(cuò)誤率較高的網(wǎng)絡(luò),并與高速的RAID的存儲(chǔ)體系相結(jié)合,彌補(bǔ)由于使用RS編碼器產(chǎn)生的延遲,從而實(shí)現(xiàn)網(wǎng)絡(luò)存儲(chǔ)系統(tǒng)的安全性和高速性。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應(yīng)用開(kāi)發(fā)實(shí)踐指南2026/1/6 10:40:19
- 嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設(shè)計(jì)實(shí)踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開(kāi)啟異核通信新時(shí)代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎(chǔ)知識(shí)2025/7/14 16:59:04
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對(duì)系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測(cè)試方法
- PCB電磁兼容(EMC)設(shè)計(jì)與干擾抑制核心實(shí)操規(guī)范
- 用于相位噪聲測(cè)量的低通濾波器設(shè)計(jì)與本振凈化技術(shù)
- MOSFET在高頻開(kāi)關(guān)中的EMI問(wèn)題
- 電源IC在便攜式設(shè)備中的設(shè)計(jì)要點(diǎn)
- 連接器結(jié)構(gòu)設(shè)計(jì)常見(jiàn)問(wèn)題分析









