《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信与网络 > 设计应用 > 应用于10 G EPON系统的RS(255,223)码译码器设计
应用于10 G EPON系统的RS(255,223)码译码器设计
来源:电子技术应用2010年第9期
郭志勇,杨一波,李广军
电子科技大学 通信与信息工程学院,四川 成都611731
摘要: 介绍一款应用于10 G EPON系统中的RS(255,223)码译码器。采用ME算法设计了一种新的脉动结构电路求解关键方程,从而获得较低的处理延时并使用较少资源。仿真以及综合结果表明,结合并行处理方法,译码器能够完成10 G EPON系统数据的实时译码功能,最大数据吞吐率大于16 Gb/s。
中圖分類號: TN492
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2010)09-0058-03
A VLSI design of RS(255,223) code decoder used in 10 G EPON system
GUO Zhi Yong,YANG Yi Bo,LI Guang Jun
Institute of Communication and Information Engineering,University of Electronic Science and Technology of China, Chengdu 611731,China
Abstract: A VLSI design of RS(255,223) decoder used in 10 G EPON system is introduced. The decoder uses a novel systolic iteration circuit to solve the key equation with shorter iteration delay and fewer resources. The simulation and synthesis result shows that, combining with parallel processing, the proposed decoder could successfully perform the real-time decoding in 10 G EPON system, which throughput is bigger than 16 Gb/s.
Key words : reed-solomon;decoder;ME algorithm;KES;systolic structure

    近年來,基于802.3ah協(xié)議的無源以太網(wǎng)的光接入網(wǎng)EPON(Ethernet based Passive Optical Network)系統(tǒng)在接入網(wǎng)中得到了很多應(yīng)用。在此基礎(chǔ)上的能夠提供上下行均為10 Gb/s接入速率的基于802.3av的10 G EPON標(biāo)準(zhǔn)[1]也于2009年9月正式發(fā)布。與802.3ah協(xié)議中不同的是,802.3av協(xié)議采用了糾錯性能更佳的Reed-Solomon(255,223)碼作為信道碼,以保證物理層與數(shù)據(jù)鏈路層接口數(shù)據(jù)誤碼率低于10-12。
    RS譯碼器的設(shè)計因關(guān)鍵方程求解KES(Key Equation Solution)電路所采用算法不同而分為兩種,分別是基于BM(Berlekamp-Massey)算法以及ME(Modified Euclidean)算法[2]。由于BM算法電路帶有反饋,電路速度難以通過流水等方式得到進(jìn)一步提升獲得更大數(shù)據(jù)吞吐率,因此現(xiàn)有研究集中于使用ME算法、采用脈動結(jié)構(gòu)電路的流水線實現(xiàn)方案[3]。傳統(tǒng)的脈動結(jié)構(gòu)KES電路[4]實現(xiàn)RS(255,223)譯碼求解關(guān)鍵方程需要32級電路、32個數(shù)據(jù)處理周期。譯碼器的其余模塊則是采用串行工作方式,需要255個周期的處理時間。由于10 G EPON系統(tǒng)中要求每一級電路處理一個編碼分組的時間不超過31個周期,因此已有的譯碼器設(shè)計方法不能達(dá)到要求。
    本文簡要介紹了Reed-Solomon碼的一般譯碼方法,結(jié)合802.3av協(xié)議,提出了一種應(yīng)用于10 G EPON系統(tǒng)的譯碼器電路設(shè)計方案及采用ME算法的一種優(yōu)化的KES電路設(shè)計。
1 REED-SOLOMON碼的一般譯碼方法
    由于Reed-Solomon碼擅長糾正突發(fā)錯誤,因此適用于光纖通信環(huán)境。802.3av協(xié)議規(guī)定的FEC信道糾錯碼RS(255,223)碼為基于GF(28)有限域的多進(jìn)制BCH碼,最多能夠糾正16個錯誤符號。
    RS碼為分組碼,其譯碼算法主要由三部分構(gòu)成。由接收碼字乘以校驗矩陣得到其伴隨多項式;由伴隨多項式求得其錯誤向量值;將接收向量與錯誤向量相減,得到最后的譯碼輸出。
    伴隨式求解式為:
   
  
2 應(yīng)用于10 G EPON系統(tǒng)的RS(255,223)碼譯碼器設(shè)計
    802.3av協(xié)議中FEC(前向糾錯)子層所規(guī)定的譯碼流程為:譯碼器將接收到的數(shù)據(jù)去除相應(yīng)同步頭比特后送入譯碼器處理;譯碼器核心電路按照常規(guī)方式進(jìn)行譯碼;譯碼器輸出的數(shù)據(jù)再按照協(xié)議規(guī)定方式進(jìn)行重新分組并且恢復(fù)其同步頭比特得到最后的輸出。
    本文所設(shè)計的RS(255,223)譯碼器實現(xiàn)框圖如圖1所示。

    輸入同步(IS)模塊完成協(xié)議規(guī)定的數(shù)據(jù)重組功能。伴隨式計算(SC)模塊采取了9倍并行計算,按照公式1完成伴隨式計算,將伴隨式系數(shù)并行輸出到KES模塊,同時輸出計算得到伴隨多項式階數(shù)。關(guān)鍵方程求解(KES)模塊采用ME算法求解關(guān)鍵方程并并行輸出錯誤位置多項式以及錯誤特征多項式的系數(shù)。錢搜索(CS)與錯誤糾正(EE)模塊完成公式(4)與公式(5)的運(yùn)算。由于本文設(shè)計的RS譯碼器需要在31個周期內(nèi)在255個符號上搜索并糾正錯誤,因此,本文所設(shè)計的錢搜索模塊以及錯誤糾正模塊均為文獻(xiàn)[4]電路基礎(chǔ)上所設(shè)計并行處理能力的9倍。輸出同步(OS)模塊負(fù)責(zé)將EE模塊送入的糾正后的碼字恢復(fù)成802.3av協(xié)議所規(guī)定的66 bit數(shù)據(jù)進(jìn)行最后輸出。延時緩沖器(DF)模塊完成譯碼過程中的數(shù)據(jù)延遲功能,控制模塊(CTL)則提供相應(yīng)的控制信號。
3 利用ME(Modified Euclidean)算法求解關(guān)鍵方程
    RS譯碼的關(guān)鍵在于求解關(guān)鍵方程,公式(2)可以重寫為:

4 簡化的關(guān)鍵方程求解(KES)模塊設(shè)計
      已有參考文獻(xiàn)[2]、[3]、[4]中的脈動實現(xiàn)方案,均需要32級迭代能夠完成31階(32個系數(shù))的伴隨多項式的關(guān)鍵方程求解。但是802.3av協(xié)議中所規(guī)定的每一個編碼分組只使用了31個周期數(shù)據(jù)來表示。因此,要求設(shè)計電路的每一級處理一個編碼分組的時間不能超過31個周期。所以必須將原有的KES電路做修改優(yōu)化,以求縮減數(shù)據(jù)表示周期以及電路處理周期。
    觀察ME算法后能夠發(fā)現(xiàn),ME算法首次迭代時算法行為固定(l恒等于1),且多項式R(x)首相系數(shù)?琢恒為1,其余項系數(shù)恒為0。此時,脈動電路的第一級實際上不用完成任何的有限域運(yùn)算,實現(xiàn)電路可以通過對時序的控制將Q(x)多項式相應(yīng)項系數(shù)直接輸出得到首級電路的各多項式輸出。在此種條件下,本文設(shè)計的RS譯碼器KES模塊將ME算法的第一、二級迭代算法整合到一級模塊中實現(xiàn),滿足了31級迭代要求,也節(jié)省了電路資源。本文所設(shè)計的KES電路結(jié)構(gòu)圖如圖2所示。

    根據(jù)公式(8)~(12),ME算法中多項式的每一級迭代計算均需要在得到當(dāng)前輸入多項式的階數(shù)后才能確定當(dāng)前迭代行為。但是在脈動結(jié)構(gòu)中的處理過程必須保持連續(xù),因此,使用階數(shù)預(yù)測的方式來獲取多項式階數(shù)。具體預(yù)測的方式如下:(1)首級迭代模塊的時序與行為固定為deg(S)=31時的時序與行為。(2)其余模塊的R(x)多項式與Q(x)多項式首系數(shù)均不為0時,認(rèn)為當(dāng)前輸入的多項式階數(shù)預(yù)測正確,按照ME算法進(jìn)行迭代處理,計算后所得到多項式的階數(shù)則根據(jù)當(dāng)前的運(yùn)算行為進(jìn)行預(yù)測,其輸出相應(yīng)減1或不變。(3)其余迭代模塊輸入的R(x)或Q(x)多項式首系數(shù)為0時,不進(jìn)行迭代操作,只將相應(yīng)多項式系數(shù)提前一周期輸出,并修正相應(yīng)多項式階數(shù)后輸出至下一級模塊。本文所設(shè)計KES模塊的單級迭代電路示意圖如圖3所示。

5 綜合驗證與結(jié)論
  采用SMIC 0.13 μm CMOS工藝及SYNOPSYS Design Compiler 2006工具對本文設(shè)計的RS譯碼器進(jìn)行了綜合驗證。綜合驗證結(jié)果表明,本文所設(shè)計的RS(255,223)碼譯碼器共使用了57 293個門單元,在最差情況下具有180 MHz的最大工作頻率,功耗為251.3 mW,能夠提供超過16.8 Gb/s的數(shù)據(jù)吞吐率,足以實現(xiàn)10 G EPON系統(tǒng)實時糾錯功能。此外,本文所提出的KES模塊設(shè)計方案在降低了處理延時的基礎(chǔ)上也節(jié)約了硬件資源,在相同綜合環(huán)境和約束條件下,使用了42 563個門單元,與未做優(yōu)化的KES電路模塊相比節(jié)約了7%的硬件資源。
參考文獻(xiàn)
[1] IEEE 802.3 Ethernet in the First Mile Study Group. P802.3av(D3.0) Draft Part 3:Carrier sense multiple access  with collision detection(CSMA/CD) access method and physical layer specifications-amendment:Physical Layer Specifications and Management Parameters for 10 Gb/s Passive Optical Networks[OL].http://standards.ieee.org/index.html,2009.
[2] DILIP V.S,NARESH R.S.High-speed architectures for  reed-solomon decoders[J].IEEE Trans on VLSI Systems,2001,9(5):641-655.
[3] HOWARD M.S,TRUONG T.K,LESLIE J.D,et al.A VLSI  design of a pipeline reed-solomon decoder[J].IEEE Trans  on Computers,1985,34(5):393-403.
[4] HANHO L.High-speed VLSI architecture for parallel reedsolomon decoder[J].IEEE Trans on very large scale integra tion system,2003,11(2):288-294.
[5] FRANK E.Supplement to comment #842[OL].http://www.ieee802.org/3/av/public/2008_03/3av_0803_effenberger_3.pdf,2008.
[6] 向征,劉興釗.RS(255,223)編譯碼器的設(shè)計與FPGA實現(xiàn)[J].電路及應(yīng)用,2006,11:17-31.
[7] 王新梅,肖國鎮(zhèn).糾錯碼-原理與方法[M].西安:西安電子科技大學(xué)出版社,2001.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。

相關(guān)內(nèi)容