《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 100G以太網中高位寬并行CRC的簡化方法
100G以太網中高位寬并行CRC的簡化方法
2016年微型機與應用第07期
李傳輝,劉純武,黃芝平
(國防科學技術大學 機電工程與自動化學院,湖南 長沙 410073)
摘要: 在100G以太網媒體接入控制器(Media Access Control,MAC)的設計中,需要采用高位寬的并行數據來降低對時鐘的要求。在使用并行循環冗余校驗(Cyclical Redundancy Check,CRC)時會有一個問題,即需要計算CRC的數據域長度不一定是數據通道位寬的整數倍,導致最后一組數據無法使用數據通道的位寬對其進行CRC計算。為了解決這個問題,本文提出了在幀前填充0的處理方法。仿真和測試結果都驗證了該方法的可行性。該處理方法也能應用到其他的通信系統中。
Abstract:
Key words :

  李傳輝,劉純武,黃芝平

 ?。▏揽茖W技術大學 機電工程與自動化學院,湖南 長沙 410073)

  摘要:在100G以太網媒體接入控制器(Media Access Control,MAC)的設計中,需要采用高位寬的并行數據來降低對時鐘的要求。在使用并行循環冗余校驗(Cyclical Redundancy Check,CRC)時會有一個問題,即需要計算CRC的數據域長度不一定是數據通道位寬的整數倍,導致最后一組數據無法使用數據通道的位寬對其進行CRC計算。為了解決這個問題,本文提出了在幀前填充0的處理方法。仿真和測試結果都驗證了該方法的可行性。該處理方法也能應用到其他的通信系統中。

  關鍵詞:100G以太網;并行CRC;高位寬

0引言

  IEEE在2010年發布了40/100G以太網標準[1],其中MAC層仍然沿用以前的規定未作大的改變,只是100 Gb/s的高速率使得無法沿用以前的方法完成CRC值的計算,為此,本文提出了一種簡單有效的解決方法。

1循環冗余校驗

  在數字通信系統中,為了確保接收到的數據與發送端的數據一致,需要引入差錯控制機制。循環冗余校驗碼由于其誤碼監測能力強,抗干擾能力優異,被廣泛應用于線路檢錯。循環冗余檢驗是一種系統的縮短循環碼,它采用多項式編碼方法[2]。設被檢驗的信息碼有n位,信息系列M={mn-1 mn-2…m0},用多項式M(x)可表示為:

  M(x) = mn-1 xn-1 + mn-2 xn-2 + … + m1x1 +m0x0(1)

  發送方和接收方使用同一個生成多項式G(x),其是一個k階的二進制多項式,而且G(x)的首位和最后一位的系數都必須是1,其通用表達式為:

  G(x)=xk+gk-1xk-1+gk-2xk-2+…+g1x+1(2)

  CRC的計算規則為發送方以xk·M(x)除以生成多項式G(x),將得到的余數R(x)作為校驗值,這里的計算規則都是使用二進制運算規則,R(x)可表示為:

  R(x)=CRC(M(x))= xk·M(x)mod G(x)(3)

  發送方將CRC值隨數據一起發送給接收方,接收方對接收到的數據進行CRC值的計算,并將它與發送方的CRC值進行比較。如果數據傳輸過程中沒有錯誤,兩者的校驗值就會是一致的,相反如果得到的校驗值不一致,就可以判斷出數據在傳輸過程中發生了錯誤,這時接收方就可以丟棄當前數據或要求發送方重傳數據。CRC校驗可以百分百地檢測出所有的奇數個的隨機錯誤和長度小于等于k的突發錯誤。

2100G以太網的CRC設計

001.jpg

  在以太網通信中,CRC校驗具有重要作用。依據IEEE802.3以太網的幀格式(如圖1所示),CRC計算的數據區域包括目的地址、原地址、長度/類型和負載數據圖1以太網幀格式區域。得到的CRC值作為幀校驗序列(Frame Check Sequence,FCS)填充在數據幀尾。其中規定了以太網幀FCS字段的生成算法為CRC32,其生成的多項式表達式為:

  G(x)=x32+x26+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1(4)

  在吉比特以上速率的通信系統中,傳統的串行CRC校驗方法已無法滿足要求,所以現在有很多新型并行CRC計算方法[35]。因此在100G以太網中,其CRC也必須采用并行方法,CRC計算的并行位寬就是數據通道的位寬。提高數據位寬可以降低系統的時鐘頻率,但另一方面隨著并行數據位寬的增加會使得CRC電路的延遲時間增加,影響系統的時序性能。經過綜合考慮本文中設計的數據并行位寬為320。

  使用320位的高并行位寬會使得數據的處理變得復雜。比如在MAC層的發送方,上層客戶每個時鐘就會有一組320位40 B的數據送給MAC處理,CRC模塊就會使用320位的并行算法對其計算。當前的CRC值只與上一次數據得到的CRC值及當前的數據有關,CRC值初始化為全0,如圖2所示。

002.jpg

  問題是數據并不一定是40 B的整數倍關系,最后一組數據可能結束于任意位置,如圖3所示。

  在10G以太網中,數據位寬為64 bit,在參考文獻[6]中對這種情況的處理方法為同時設計從8 bit到64 bit的CRC生成模塊,根據有效字節數選擇使用其中一個。這一方法無疑會占用大量資源,而且利用率低。在100G以太網中數據位寬如果按320設計,需要多達40個不同的CRC模塊,加上一個40路的多選一電路,這樣的電路在資源使用和時序性能方面都是很糟糕的。所以這一方法無法用于100G以太網中。文獻[7]中提到了一種級聯結構可以計算任意字節的CRC,但此結構有個很明顯的缺點,即級聯越大,電路延遲線性增加,320位就需要級聯40次,這樣的電路無法滿足時序要求。文獻[2]中利用了CRC校驗具有的Magic Number特性,在數據幀后面添加0,使得可以只用一個64 bit的CRC模塊完成接收方的CRC校驗,但無法在數據發送方完成CRC值的計算。

3幀前補0的并行CRC

  上節提到的10G以太網CRC的處理方法都無法直接應用于100G以太網中。下面說明本文提出的方法:幀前補0后再進行CRC計算。

  假設原始序列M有n位數據,n不是320位的整數倍。i是一個小于320的整數,且i+n為320的整數倍,在M前增加i個0構造為新序列M′:

  M′(x)=0·xi+n-1+…+0·xn+M(x)=0+M(x)=M(x)(5)

  可以看出新序列在數值上與原來的序列值是一樣的。這個很好理解,就像在十進制中在最前面添加任意位數的0并不會改變這個數的數值一樣,當然這在二進制數當中同樣適用。新序列的數據長度成為了320的整數倍。

  由CRC的計算公式(3)來看,CRC的結果只與序列的數值有關,所以用新序列計算CRC會得到與用原始數列同樣的結果。所以依據此原理,只需要設計一個320位的并行CRC模塊,計算時使用新的序列送給CRC模塊,這個方法可以計算任意字節數據幀的CRC值。

  假設有一幀數據負載字節長度為len,加上目的地址、源地址和數據/類型字段的長度14 B,則該幀需要參與CRC計算的數據總長為L=len+14。令n=ceil(L/40),ceil函數得到的是大于等于L/40的最小整數。令rem=mod(L,40)為L/40的余數,表示最后一組數據中有效數據的字節數,對應的com=40-rem表示無效的字節數,V=8*com則表示無效的比特數,也就是需要在幀前添加的0的比特個數。

  在客戶端向MAC發送數據時,每個時鐘MAC層會收到一組數據Cur_data_in[319:0],設計一組初始化為全0的寄存器Last_data_in[319:0]用來保存上一時鐘的數據。根據V值的大小將Cur_data_in和Last_data_in組合成一組新的數據Data_to_crc[319:0],其組合關系為:

  Data_to_crc[319:0]=Last_data_in[V-1:0]&Cur_data_in[319:V](6)

  “&”表示并置連接,處理過程如圖4所示。新的序列就是送給CRC模塊的數據,從圖中可以看到在原始數據的前面添加了V個比特0。每組數據都可以使用320位的并行CRC進行處理,而且最后得到的結果與使用原始數據一樣。

  

003.jpg

  4測試及分析

  使用硬件描述語言VHDL實現上述的處理過程,并將程序下載到FPGA中進行測試,綜合出來的結果表明該方法在面積使用和運行速度方面的效果都很好。測試時客戶端給出了一些不同長度的以太網幀,使用Quartus II中的SignalTap工具對數據流進行采樣。圖5是rem值為18的一幀數據的第一組數據,可以看到data_to_crc在cur_data_in前面添加了22個比特0,這是符合設計預期結果的。圖6所示是該幀數據的最后一組數據,根據rem值,cur_data_in只有18 B的有效數據,所以data_to_crc也只取了其中的18 B有效數據,在CC處結束,此時的CRC值就是最終的FCS值為83ACF5C1。

  為了驗證該值的正確性,使用8位并行CRC算法計算該幀的CRC值,在ModelSim平臺下進行了仿真。結果如圖7所示,可以看到計算完CC后CRC值為83ACF5C1,與前面的結果一致,說明了該方法得到的結果是正確的。

004.jpg

5結束語

  由于100G以太網中會使用很高的并行數據位寬,但是數據幀中需要進行CRC計算的數據長度不一定是位寬的整數倍,本文針對這個問題提出了一種新的處理方法,并且通過了測試。該方法簡單有效,能夠克服傳統方法的缺陷,在性能上有很大的提升。雖然本文是以100G以太網的CRC32作說明,該方法也能很容易地應用于其他的高速通信系統。

參考文獻

  [1] IEEE. IEEE Std. 802.3ba[S]. 2010.

 ?。?] 彭建輝. 10G以太網接口并行CRC校驗的一種簡化算法[J].微計算機信息,2006,22(20):213215.

 ?。?] STAVINOV E.A practical parallel CRC generation method [J]. Circuit Cellar, 2010(234):3845.

 ?。?] 畢占坤,張羿猛,黃芝平,等.基于邏輯設計的高速CRC并行算法研究及其FPGA實現[J]. 儀器儀表學報, 2007,28(12):22442249.

  [5] KENNEDY C E, MOZAFFARIKERMANI M.Generalized parallel CRC computation on FPGA[C]. Canadian Conference on Electrical and Computer Engineering (CCECE), 2015:107113.

 ?。?] 張友亮,劉志軍,馬成海,等. 萬兆以太網MAC層控制器的FPGA設計與實現[J].  計算機工程與應用, 2012,48(6):7779.

  [7] 劉昭,蘇厲,金德鵬,等.10G以太網系統中的并行CRC編解碼器的設計[J]. 電子技術應用, 2004,30(4):4750.


此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          国产精品视频在线观看| 久久aⅴ国产欧美74aaa| 欧美日韩八区| 一区二区三区四区五区在线| 美腿丝袜亚洲色图| 久久久午夜电影| 欧美ed2k| 亚洲欧美日韩视频二区| 国产模特精品视频久久久久| 欧美电影在线观看完整版| 国产视频一区在线观看一区免费| 欧美美女视频| 国产精品久久久久av| 国产精品一区二区欧美| 亚洲黄色影院| 欧美成人激情在线| 国产欧美视频在线观看| 欧美日韩另类一区| 亚洲在线成人精品| 久久久久99| 亚洲婷婷综合色高清在线| 欧美电影免费观看高清| 久久精品一级爱片| 欧美日韩性视频在线| 国产精品综合| 欧美日韩成人一区二区| 欧美一区二区三区视频免费| 91久久视频| 乱码第一页成人| 国产日韩精品久久久| 欧美在线啊v一区| 欧美激情第五页| 免费在线日韩av| 日韩午夜在线观看视频| 久久成人精品一区二区三区| 欧美日韩裸体免费视频| 欧美激情一区二区三级高清视频| 国产综合亚洲精品一区二| 国产一区二区三区高清播放| 亚洲精品国精品久久99热一| 亚洲第一区在线| 国产精品乱子久久久久| 欧美一区激情视频在线观看| 亚洲美女视频网| 久久成人这里只有精品| 国语自产精品视频在线看一大j8| 欧美一区二区三区男人的天堂| 亚洲欧洲日韩女同| 亚洲免费av观看| 欧美无砖砖区免费| 国产精品成人在线观看| 亚洲欧美综合一区| 久久精品中文字幕一区| 亚洲成人在线网| 久久午夜色播影院免费高清| 亚洲私人黄色宅男| 国产精品v亚洲精品v日韩精品| 麻豆精品在线观看| 欧美国产日本韩| 欧美日韩妖精视频| 国产精品免费一区二区三区观看| 狠狠色2019综合网| 一区在线电影| 国内精品免费在线观看| 国产精品一卡二| 亚洲大胆人体在线| 久久国产一二区| 欧美日韩国产免费观看| 亚洲伊人色欲综合网| 欧美激情视频一区二区三区在线播放| 亚洲日韩视频| 一区二区三区蜜桃网| 久久久精品免费视频| 欧美久久久久| 一本色道久久88精品综合| 欧美日韩一区二区精品| 欧美激情中文字幕一区二区| 亚洲精品久久久久中文字幕欢迎你| 久久久99免费视频| 欧美日韩调教| 日韩小视频在线观看| 黄色工厂这里只有精品| 一区二区国产在线观看| 国产精品老牛| 久久视频精品在线| 国产专区精品视频| 一区二区三区日韩欧美| 欧美www视频| 亚洲国产成人av好男人在线观看| 日韩一区二区免费高清| 最新亚洲激情| 欧美午夜精品久久久久久人妖| 亚洲激情自拍| 亚洲视频国产视频| 久久aⅴ国产紧身牛仔裤| 国产日韩一区| 欧美一区2区视频在线观看| 欧美va天堂| 欧美在线观看视频| 亚洲国产一区二区三区在线播| 欧美三区在线视频| 欧美国产日韩在线| 亚洲激情电影中文字幕| 久久久亚洲国产天美传媒修理工| 91久久在线视频| 国产一区二区视频在线观看| 国产精品a久久久久久| 你懂的国产精品| 亚洲欧美视频| 欧美日韩久久| 国产久一道中文一区| 欧美国产三区| 久久久综合精品| 久久久久久999| 亚洲天堂网在线观看| 久久国产精品亚洲77777| 久久大逼视频| 午夜精品网站| 久久久久成人精品| 国产精品理论片在线观看| 国产精品卡一卡二| 国产视频观看一区| 宅男噜噜噜66国产日韩在线观看| 国产尤物精品| 久久香蕉精品| 美女露胸一区二区三区| 亚洲色图综合久久| 在线观看的日韩av| 欧美在线高清视频| 亚洲国产岛国毛片在线| 欧美一区网站| 欧美日本网站| 欧美在线播放一区| 国产综合第一页| 午夜久久久久久久久久一区二区| 欧美大片在线观看| 欧美人成免费网站| 99v久久综合狠狠综合久久| 日韩写真视频在线观看| 亚洲美女av在线播放| 国产欧美一区二区精品婷婷| 影视先锋久久| 一区二区三区精品| 欧美午夜一区二区福利视频| 一区二区不卡在线视频 午夜欧美不卡在| 亚洲国产一区在线| 亚洲欧美激情一区二区| 亚洲欧美日韩系列| 亚洲最快最全在线视频| 99国产精品久久久久久久久久| 亚洲欧洲在线视频| 国产精品日韩欧美大师| 欧美亚洲成人网| 亚洲欧美日韩一区在线观看| 国产中文一区二区三区| 国产麻豆9l精品三级站| 欧美三区在线观看| 欧美激情aaaa| 老司机精品导航| 在线欧美小视频| 午夜欧美精品久久久久久久| 欧美深夜福利| 美女诱惑黄网站一区| 狂野欧美激情性xxxx| 久久久综合免费视频| 国产精品免费电影| 欧美精品一区二区三区蜜桃| 欧美日韩午夜精品| 狠狠v欧美v日韩v亚洲ⅴ| 在线看无码的免费网站| 亚洲愉拍自拍另类高清精品| 欧美日韩一区二区三区视频| 亚洲精品一区二区三区不| 亚洲国产欧美日韩| 国产亚洲一级高清| 久久久久久久高潮| 欧美激情一二区| 亚洲影院色在线观看免费| 久久只精品国产| 一二三四社区欧美黄| 久久久久久久性| 99视频精品在线| 亚洲国产日韩欧美在线动漫| 欧美在线播放一区| 欧美怡红院视频一区二区三区| 久久久高清一区二区三区| 欧美一区不卡| 国产精品成人一区二区艾草| 久久国产精品网站| 久久激情五月婷婷| 亚洲自拍都市欧美小说| 日韩一级片网址| 国产精品久久91| 国产欧美日本一区二区三区| 欧美成人午夜激情视频| 欧美日韩国产影院| 国产精品电影网站| 一本在线高清不卡dvd| 国产一二精品视频| 亚洲香蕉在线观看| 亚洲欧美日韩一区二区三区在线| 欧美插天视频在线播放| 欧美午夜大胆人体| 亚洲尤物在线视频观看| 一区视频在线| 亚洲一区二区三区久久| 欧美成人日韩| 99re亚洲国产精品| 国产午夜精品美女视频明星a级| 欧美激情亚洲精品| 欧美成年人在线观看| 欧美日韩成人一区| 亚洲影院色无极综合| 欧美大片一区二区三区| 亚洲国产欧美在线| 国产精品久久午夜夜伦鲁鲁| 久久国产视频网站| 欧美另类专区| 亚洲美女av黄| 亚洲一区二区三区中文字幕| 亚洲精品国产系列| 国产欧美日韩三区| 欧美日韩国内自拍| 欧美日一区二区在线观看| 午夜精品久久久久久久蜜桃app| 激情久久久久久久| 亚洲欧洲视频在线| 亚洲国产日韩欧美在线图片| 亚洲国产婷婷香蕉久久久久久| 99re成人精品视频| 99v久久综合狠狠综合久久| 久久久噜噜噜久久人人看| 最新日韩在线| 欧美日韩一级片在线观看| 精品99视频| 欧美a一区二区| 国产精品无码专区在线观看| 可以看av的网站久久看| 亚洲精品一区二区三区四区高清| 亚洲系列中文字幕| 欧美一级夜夜爽| 久久精品成人一区二区三区| 一区二区欧美日韩视频| 国产一区二区精品在线观看| 新67194成人永久网站| 精品99一区二区三区| 欧美激情一区在线| 亚洲国产天堂久久综合| 新67194成人永久网站| 亚洲风情亚aⅴ在线发布| 国内久久视频| 国产欧美一区二区白浆黑人| 91久久久精品| 久久婷婷久久| 久久成人精品无人区| 一区二区三区在线观看国产| 亚洲开发第一视频在线播放| 国产精品美女久久久久久2018| 国产精品v一区二区三区| 久久黄色小说| 中文成人激情娱乐网| 亚洲一区二区三区高清不卡| 欧美日韩一区在线播放| 亚洲精品小视频在线观看| 麻豆成人91精品二区三区| 午夜精品影院在线观看| 免费不卡欧美自拍视频| 欧美一级视频一区二区| 亚洲成人在线观看视频| 亚洲一区二区黄色| 香蕉久久夜色精品国产| 午夜视频在线观看一区二区| 欧美日韩国产美女| 国产日韩一区二区三区在线播放| 欧美日本精品| 欧美人与性动交a欧美精品| 久久视频一区| 亚洲欧洲日韩女同| 国产精品久久毛片a| 可以看av的网站久久看| 精品二区视频| 欧美日韩精品综合| 狠狠色狠狠色综合| 欧美激情视频在线播放| 欧美视频福利| 国产精品永久免费在线| 欧美日本亚洲视频| 久久午夜电影网| 国产午夜精品全部视频播放| 在线观看一区欧美| 国产欧美一区二区三区久久人妖| 亚洲一区亚洲二区| 亚洲国产精品悠悠久久琪琪| 国产深夜精品福利| 美女脱光内衣内裤视频久久影院| 亚洲日本视频| 国产女精品视频网站免费| 国产精品免费一区二区三区观看| 国产精品白丝av嫩草影院| 久久久久久国产精品mv| 欧美 亚欧 日韩视频在线| 欧美视频日韩| 一区二区毛片| 美日韩精品免费观看视频| 国产精品久久7| 国产一区二区三区不卡在线观看| 男女av一区三区二区色多| 麻豆精品在线播放| 亚洲在线视频观看| 国产精品久久久一本精品| 亚洲欧美激情四射在线日| 欧美区在线观看| 香蕉尹人综合在线观看| 一本久道久久综合中文字幕| 另类天堂视频在线观看| 欧美日韩综合在线| 免费影视亚洲| 国产精品一级二级三级| 亚洲精品永久免费精品| 精品电影一区| 激情丁香综合| 亚洲欧美久久久久一区二区三区| 免费在线亚洲欧美| 亚洲一区不卡| 亚洲电影免费观看高清完整版在线观看| 国产精品美女主播在线观看纯欲| 午夜精品福利一区二区三区av| 国产午夜精品美女视频明星a级|