李霈霈,周志剛,那美麗
(中國科學(xué)院 上海微系統(tǒng)與信息技術(shù)研究所,上海200050)
以太網(wǎng)數(shù)據(jù)轉(zhuǎn)發(fā)約束的高速LDPC 碼設(shè)計(jì)
李霈霈,周志剛,那美麗
(中國科學(xué)院 上海微系統(tǒng)與信息技術(shù)研究所,上海200050)
為了靈活支持多種高速以太網(wǎng)接口,將低密度奇偶校驗(yàn)(LDPC)編碼運(yùn)用在以太網(wǎng)數(shù)據(jù)轉(zhuǎn)發(fā),取消傳統(tǒng)數(shù)據(jù)包解碼,提出了LDPC并行編碼架構(gòu)。在考慮1G到100G以太網(wǎng)物理層編碼碼字長度約束的基礎(chǔ)上,分別設(shè)計(jì)了針對1G、10G、100G接口中最大通道速率的LDPC(192,120),LDPC(594,462),LDPC(1188,990)碼字,實(shí)現(xiàn)了信道編碼處理的低時(shí)延。仿真結(jié)果表明,構(gòu)造的準(zhǔn)循環(huán)LDPC碼誤碼性能優(yōu),系統(tǒng)的處理時(shí)延?。紤]了編碼時(shí)延和譯碼時(shí)延)。LDPC編碼時(shí)延在0.58~1.17 μs之間,譯碼時(shí)延在3.20~4.26 μs之間,可以滿足不同以太網(wǎng)接口的最大通道編譯速率。
以太網(wǎng)接口;數(shù)據(jù)轉(zhuǎn)發(fā);并行編碼架構(gòu);編碼時(shí)延;譯碼時(shí)延
以太網(wǎng)是現(xiàn)有局域網(wǎng)采用的最通用的通信協(xié)議標(biāo)準(zhǔn)。海量數(shù)據(jù)的交互對網(wǎng)絡(luò)帶寬的需求不斷在拓展,以太網(wǎng)的傳送速度也正以10倍速向前發(fā)展,經(jīng)歷了從10 Mbps到100 Mbps 到1 Gbps到10 Gbps到100 Gbps的遞進(jìn)[1]。如此巨大的數(shù)據(jù)傳輸速率用光纜是很容易支持的,但是光纜的可用性是受到限制的,發(fā)展高速率無線通信替代有線解決方案成為了大勢所趨。
糾錯(cuò)碼被用來提高信道傳輸?shù)目煽啃?,因?yàn)樗梢詸z測并糾正信號傳輸過程中引入的錯(cuò)誤。好的糾錯(cuò)碼技術(shù)已成為提供通信系統(tǒng)可靠傳輸?shù)囊环N手段。低密度奇偶校驗(yàn)碼(LDPC)具有優(yōu)異的譯碼性能,將LDPC作為信道糾錯(cuò)碼可以保證通信系統(tǒng)正確的高速通信[2]。
傳統(tǒng)以太網(wǎng)的數(shù)據(jù)傳輸中,以太幀經(jīng)過數(shù)據(jù)包的解碼處理,然后連接到發(fā)送鏈路的糾錯(cuò)碼模塊進(jìn)行信道編碼。
文中提出以太網(wǎng)數(shù)據(jù)轉(zhuǎn)發(fā)約束的LDPC碼字,根據(jù)以太網(wǎng)物理層串行收發(fā)編碼方式,設(shè)計(jì)LDPC信息位與碼長,將以太網(wǎng)接口數(shù)據(jù)包直接傳送給LDPC編碼器,取消MAC解碼,
傳統(tǒng)的編碼框架主要包括以太幀、緩沖器、數(shù)據(jù)包解碼和編碼器部分。以太幀以串行的方式輸入到數(shù)據(jù)包解碼模塊,然后拆分并重新打包輸出到編碼器中進(jìn)行編碼。本文在傳統(tǒng)編碼框架基礎(chǔ)上取消了數(shù)據(jù)包解碼過程,以并行轉(zhuǎn)換的方式將以太網(wǎng)的數(shù)據(jù)包直接并行送入編碼器,不進(jìn)行解析。這將大大降低系統(tǒng)的處理時(shí)延。基于并行架構(gòu)的編碼框架如圖1所示。
圖1 并行架構(gòu)的以太網(wǎng)數(shù)據(jù)傳輸?shù)木幋a框架
針對文中考慮1G-100G以太網(wǎng)接口的最大通道速率傳輸,信道編譯碼字選擇受限于以太網(wǎng)物理層編碼碼字長度。LDPC碼字信息位數(shù)選擇為以太網(wǎng)物理層編碼碼字長度的整數(shù)倍,這可以將以太網(wǎng)數(shù)據(jù)包直接送入編碼器進(jìn)行編碼,免去了以太網(wǎng)數(shù)據(jù)包的解析過程。1 GE物理層采用8B/10B的編碼方式[3],使用單通道結(jié)構(gòu),通道編譯的信息位數(shù)為10 bit,選擇信息位數(shù)為10的倍數(shù)的LDPC碼字;10 GE和100 GE物理層采用64B/66B的編碼方式[4],使用雙通道并行結(jié)構(gòu),每通道編譯33 bit信息位,選擇信息位數(shù)為33的倍數(shù)的LDPC碼字。
以太網(wǎng)數(shù)據(jù)轉(zhuǎn)發(fā)約束的LDPC碼采用準(zhǔn)循環(huán)碼字,QCLDPC碼字可以有效的減小信道誤碼,而且由于其結(jié)構(gòu)的特殊性,使其編譯碼具有復(fù)雜度低、存儲空間少、碼的設(shè)計(jì)靈活和硬件實(shí)現(xiàn)簡單等優(yōu)點(diǎn)[5]。定義QC-LDPC碼的校驗(yàn)矩陣H 由c×t個(gè)循環(huán)子矩陣組成,其中c、t均為正整數(shù),且有c≤t。
Ai,j(1≤i≤c,1≤j≤t)是大小為b×b的循環(huán)子矩陣,且每個(gè)循環(huán)矩陣Ai,j的行(列)重相對其大小b而言都較小。
LDPC碼字信息位長度主要從接口物理層編碼碼字長度考慮。在對應(yīng)關(guān)系上,LDPC碼字信息位長度應(yīng)為接口物理層編碼碼字長度的整數(shù)倍。LDPC碼率主要從滿足通道速率考慮。
表1 數(shù)據(jù)轉(zhuǎn)發(fā)約束的LDPC碼矩陣參數(shù)
要構(gòu)造具有良好的糾錯(cuò)性能的LDPC碼,必須滿足3個(gè)條件,分別是無短環(huán)、無低碼重碼字、碼間最小距離要盡可能大。環(huán)的存在使得迭代過程中的獨(dú)立性假設(shè)不能成立,譯碼的最優(yōu)性能得不到滿足。校驗(yàn)矩陣H中有任何4個(gè)“1”分別在矩形的4個(gè)頂點(diǎn)上,則圍線構(gòu)成了一個(gè)4環(huán)。
為了便于檢驗(yàn)文中所設(shè)計(jì)的LDPC碼字無四環(huán),在高斯信道下,采用BPSK調(diào)制方式,用Matlab軟件對設(shè)計(jì)的LDPC碼字仿真并給出性能曲線。引用文獻(xiàn)[6]中的檢驗(yàn)算法。假設(shè)輔助矩陣O為:O=HTH,當(dāng)且僅當(dāng)輔助矩陣O中除對角線元素外輸出項(xiàng)值均為1時(shí),校驗(yàn)矩陣H沒有四環(huán)。
圖2 3種設(shè)計(jì)的碼字輔助矩陣O元素值分布
3種設(shè)計(jì)的LDPC碼字的輔助矩陣元素值分析如圖2。Matlab仿真結(jié)果表明,矩陣O的非對角線均為1元素,QCLDPC的校驗(yàn)矩陣H中無四環(huán)存在。這證明了構(gòu)造的LDPC碼字為好碼,并為其實(shí)現(xiàn)良好的誤碼性能提供了理論基礎(chǔ)。
對于高速以太網(wǎng)接口下設(shè)計(jì)的LDPC碼字,其基礎(chǔ)校驗(yàn)矩陣的結(jié)構(gòu)形式如式(2)。首先將校驗(yàn)矩陣變換為H=[HsHp],Hs和Hp分別對應(yīng)編碼序列的信息位和校驗(yàn)位部分[7]。
定義編碼后的碼字矢量x=(s,p)。碼字x滿足:
編碼運(yùn)算在二元域中,可以得到
代入式(2),可得
式中:V為設(shè)計(jì)調(diào)蓄容量,m3;ri為降雨強(qiáng)度曲線上對應(yīng)降雨歷時(shí)ti的降雨強(qiáng)度,mm/h;rc為調(diào)蓄池出流過流能力值對應(yīng)的降雨強(qiáng)度,mm /h;ti為任意降雨歷時(shí),s;α為徑流系數(shù),hm2;A為流域面積,hm2.
整個(gè)編碼過程分為兩個(gè)子過程:乘法過程和前向迭代過程。
設(shè)向量vT=Hs×sT,vT可以通過Hs與(s1,s2,…,sm)T相乘得到,這個(gè)過程稱為乘法過程[8]。
Hp是H矩陣變換中下三角矩陣,在計(jì)算pT時(shí),比較直接的方法是先求矩陣Hp的逆矩陣,然后計(jì)算等式。然而,矩陣的逆是一個(gè)復(fù)雜的運(yùn)算,求逆的過程可能破壞了矩陣的稀疏性,那么得到的計(jì)算復(fù)雜度將和碼長的二次方成正比。在此,較好的解決方法是利用Hp的下三角特性,采用前向迭代的方法。等式的計(jì)算只需要異或操作就可以實(shí)現(xiàn),如下式
圖3 編碼整體框架圖
在整體框架上[9],信息序列首先進(jìn)行串并轉(zhuǎn)換,然后送入相應(yīng)編碼器中,編碼模塊基于校驗(yàn)矩陣的編碼算法,已知信息序列求得碼字的校驗(yàn)部分,然后將信息序列和校驗(yàn)比特合并得到全部碼字。最后,并串轉(zhuǎn)換恢復(fù)成編碼碼字?jǐn)?shù)據(jù)流。
表2 編碼碼字的計(jì)算時(shí)鐘周期及時(shí)延
10 G以太網(wǎng)接口下,QC-LDPC編碼器的時(shí)延為0.71 μs,這也與許多商用LDPC碼字IP的編碼時(shí)延相當(dāng)[10]。
部分并行的譯碼器結(jié)構(gòu)可以實(shí)現(xiàn)很高的數(shù)據(jù)吞吐率,在高速傳輸?shù)南到y(tǒng)中我們給出以下譯碼結(jié)構(gòu)。VNU代表Log-BP算法中變量節(jié)點(diǎn)處理單元,CNU代表校驗(yàn)節(jié)點(diǎn)處理單元。
圖4 部分并行的LDPC譯碼框架
如圖4譯碼整體框架[11-13],硬件譯碼器由數(shù)據(jù)輸入緩沖模塊、變量節(jié)點(diǎn)處理模塊、校驗(yàn)節(jié)點(diǎn)處理模塊和判決結(jié)果輸出緩沖模塊4個(gè)模塊共同組成。以碼字(192,120)為例,校驗(yàn)矩陣是由3×8個(gè)子矩陣組成,每個(gè)子矩陣均為循環(huán)陣,變量節(jié)點(diǎn)VNU N=8,校驗(yàn)節(jié)點(diǎn)CNU M=3。
譯碼器設(shè)計(jì)的時(shí)延主要來自于VNU和CNU單元[14]。分析評估最大時(shí)延的公式如下,CNU運(yùn)算一次需要m個(gè)時(shí)鐘周期,VNU運(yùn)算一次需要n個(gè)時(shí)鐘周期,那么并行迭代一次所需要總的時(shí)鐘周期為m+n。下表給出了20次迭代的情況下,根據(jù)子矩陣劃分的大小,使用功能時(shí)鐘500 MHz時(shí)對應(yīng)的譯碼處理時(shí)間。
在500 MHz功能時(shí)鐘下,譯碼器的最大延遲為4.46μs,文中的設(shè)計(jì)在時(shí)延較小的情況下獲得了較大的譯碼吞吐量。
文中在Matlab環(huán)境下對表1中設(shè)計(jì)的LDPC碼字進(jìn)行了仿真。信道選擇為AWGN信道,調(diào)制方式為BPSK,得到的誤碼率曲線如圖5所示。
表3 并行譯碼器的處理時(shí)延
圖5 誤碼率曲線
圖5表明3種碼字的誤碼率均可以在信噪比小于8 dB時(shí)達(dá)到10-6。碼長較長的碼字編碼增益更大。在誤碼率為10-6時(shí),LDPC III碼字的增益比LDPC II提高0.3 dB,比LDPC I的增益提高0.5 dB。因此,良好的糾錯(cuò)性能使得設(shè)計(jì)的碼字可以運(yùn)用在高速通信系統(tǒng)中。
圖6 LDPC I和PEG誤碼率比較
為了進(jìn)一步比較碼字性能,將3種LDPC碼字誤碼率和PEG法構(gòu)造的碼字誤碼率比較。PEG法是隨機(jī)構(gòu)造的碼一種。PEG(Progressive Edge-Growth)方法在構(gòu)造上使變量節(jié)點(diǎn)的局部環(huán)長最大。在二分圖上,前i-1個(gè)變量節(jié)點(diǎn)的邊已經(jīng)構(gòu)造出來,在構(gòu)造下一個(gè)變量節(jié)點(diǎn)的邊時(shí),每次向二分圖上添加一條邊,新添加的邊使得經(jīng)過第i個(gè)變量節(jié)點(diǎn)的最小環(huán)長最大[15-17]。
圖7 LDPC II和PEG誤碼率比較
圖8 LDPC III和PEG誤碼率比較
由圖6,7和8看出,在相同碼率,相同對數(shù)似然比BP算法,相同迭代次數(shù)時(shí),QC-LDPC碼字的錯(cuò)誤平層遠(yuǎn)低于PEG-LDPC碼,該特性可以滿足高速通信系統(tǒng)中低錯(cuò)誤平層的要求,實(shí)現(xiàn)以太網(wǎng)接口的長距離傳輸。
文中在考慮1G-100G以太網(wǎng)物理層編碼碼字長度的基礎(chǔ)上,設(shè)計(jì)了針對最大速率的3種以太網(wǎng)數(shù)據(jù)轉(zhuǎn)發(fā)約束的QC-LDPC碼字,實(shí)現(xiàn)了接口信道編碼處理的低時(shí)延。仿真結(jié)果表明,3種LDPC碼字編碼增益較高,且低于PEG-LDPC碼的錯(cuò)誤平層。編碼以及并行譯碼框架的分析,編碼時(shí)延在0.58~1.17 μs之間,譯碼時(shí)延在3.20~4.26 μs之間,可以滿足不同以太網(wǎng)接口的最大通道編譯速率。
[1]王小軍.100G以太網(wǎng)技術(shù)概述 [J].江蘇廣播電視大學(xué)學(xué)報(bào),2010,5(21):61-64.
[2]高明.LDPC編碼調(diào)制研究[D].杭州:浙江大學(xué),2008.
[3]李玉偉,潘明海.8B/10B編碼對高速傳輸?shù)挠绊懛治鯷J].信息安全與通信保密,2011(3):41-43.
[4]Roy R,Hajduczenia M,Kramer G,et al.10G-EPON efficiency[C]//Proceedings of the 3rd international conference onAdvancednetworksandtelecommunicationsystems. IEEE Press,2009:16-18.
[5]Li Z,Chen L,Zeng L,Lin S.Efficient Encoding of Quasi-CyclicLow-DensityParity-CheckCodes[J].IEEE Transactions on Communications,2006,54(1):71-81.
[6]Xiao Y,Lee M H.Low complexity MIMO-LDPC CDMA systems over multipath channels[J].IEICE Transactions on Communications,2006,89(5):1713-1717.
[7]Sun X R,Zeng Z,Yang Z.A novel low complexity LDPC encoder based on optimized RU algorithm with backtracking [C]//Multimedia Technology(ICMT),2010 International Conference on.IEEE,2010:1-4.
[8]范志明.基于LDPC的編碼調(diào)制理論及其硬件設(shè)計(jì)的研究[D].北京郵電大學(xué),2014.
[9]莊夢溪.高速LDPC碼編譯碼器的研究與實(shí)現(xiàn)[D].西安電子科技大學(xué),2012.
[10]802.11n/802.11ac LDPC Decoder RTL Data sheet,2009-11 Blue Rum Consulting Limited,2011.
[11]Mankar M V,Patil A,Asutkar G M.Single mode quasicyclic LDPC decoder using modified belief propagation[C]// Communications and Signal Processing(ICCSP),2014 International Conference on.IEEE,2014:862-866.
[12]Liu K,Lin S,Abdel-Ghaffar K.A Revolving Iterative Algorithm for Decoding Algebraic Cyclic and Quasi-Cyclic LDPC Codes[J].Communications,IEEE Transactions on,2013,61(12):4816-4827.
[13]Park Y S,Blaauw D,Sylvester D,et al.Low-Power High-Throughput LDPC Decoder Using Non-Refresh Embedded DRAM[J].IEEE Journal of Solid-State Circuits,2014,49 (3):783-794.
[14]朱嘉.LDPC碼的實(shí)現(xiàn)及其應(yīng)用[D].上海交通大學(xué),2007.
[15]Yang X,Wang L,Li Y.Performance of Q-ary PCGC based on PEG algorithm[C]//Intelligent Signal Processing and Communication Systems,2007.ISPACS 2007.International Symposium on.IEEE,2007:1-4.
[16]戚磊,韓喆,陳雙,等.S7-1200以太網(wǎng)通信的真空造浪測控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)儀表與自動(dòng)化裝置,2016(3):31-34.
[17]趙中玉,劉文莉.基于以太網(wǎng)的發(fā)電機(jī)組測試負(fù)載系統(tǒng)設(shè)計(jì)[J].工業(yè)儀表與自動(dòng)化裝置,2016(5):64-67.
High speed LDPC code design for ethernet data transmission
LI Pei-pei,ZHOU Zhi-gang,NA Mei-li
(Shanghai Institute of Microsystem and Information Technology,Chinese Academy of Sciences,Shanghai 200050,China)
This paper presented interface-aware Low Density Parity Check(LDPC)codes in parallel encoding framework to support high-speed Ethernet data transmission and cancel the packets decoding process.Considering constraints of encoded codeword length of 1G to 100G Ethernet physical layer,LDPC(192,120),LDPC(594,462),LDPC(1188,990)codes aiming the maximum channel rate for 1G,10G and 100G Ethernet interface were designed to reach low latency in channel coding process.The simulation results claimed that LDPC codes have excellent performance and minimum processing delay in system,taking encoding delay and decoding delay into consideration.The encoding delay of 0.58~1.17 μs and the decoding delay of 3.20~4.26 μs could meet the maximum code rate for different channels in Ethernet interfaces.
Ethernet interface;data transmission;parallel encoding framework;encoding delay;decoding delay
TN911.22
A
1674-6236(2016)22-0001-04
2016-04-06稿件編號:201604052
國家高技術(shù)研究發(fā)展計(jì)劃(863計(jì)劃)(SS2015AA011307);上海市自然科學(xué)基金(15ZR1447600)
李霈霈(1991—),女,安徽馬鞍山人,碩士研究生。研究方向:毫米波高速通信中LDPC編譯碼技術(shù)。使通信系統(tǒng)具有更小時(shí)延(考慮編碼時(shí)延和譯碼時(shí)延)。