<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 高速以太網(wǎng)CRC校驗的實(shí)現

高速以太網(wǎng)CRC校驗的實(shí)現

作者: 時(shí)間:2006-02-13 來(lái)源:網(wǎng)絡(luò ) 收藏

引言

為了確保數據在計算機系統中傳輸和存儲中正確可靠,引入了信道編碼。對于信道編碼有兩個(gè)方面,一是要求編碼后的碼流頻譜適應信道頻率特性,二是檢測并糾正產(chǎn)生的誤碼。前者屬于譜成形技術(shù),后者為差錯控制技術(shù)。碼屬于后者。它是通過(guò)增加冗余信息,達到發(fā)現誤碼的目的。常見(jiàn)的冗余有奇偶,海明,循環(huán)冗余校驗。

本文討論循環(huán)冗余校驗()的,及其在中的應用。

循環(huán)冗余碼介紹

1循環(huán)冗余碼是建立在近世代數基礎上的。編解碼電路簡(jiǎn)單,檢錯能力強。在計算機系統的數據存儲及傳輸中得到廣泛應用。

2編碼原理

設待發(fā)送比特數據為Dx,生成多項式為Gx)。信息碼長(cháng)k位,校驗碼長(cháng)n-k位,則編碼后的碼長(cháng)為n位。如圖1

,得到的多項式除以生成多項式Gx),最終得到的余式Rx)即為校驗碼。它跟在信息碼后一并發(fā)往信道。

并不是所有的多項式都可以做位生成多項式G(x),常見(jiàn)的生成多項式有:

CRC8=X8+X5+X4+1

CRC-CCITT=X16+X12+X5+1

CRC12=X12+X11+X3+X2+1

CRC16=X16+X15+X5+1

CRC32=X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X1+1

3 CRC32

信道編碼采用的是CRC32,所以在這里給出CRC32,它在一般CRC基礎上增加了些細節。

介紹MAC幀結構

,然后除以Gx),得到余式Rx)。

(4) 對該比特位逐位求補,結果作為CRC。

主要實(shí)現方式有串行和并行兩種:

a)通過(guò)線(xiàn)性反饋移位寄存器串行實(shí)現(以CRC-CCITT為例),見(jiàn)圖2

信息流由低位送入寄存器,當所有信息比特送入寄存器完畢后,寄存器中則為校驗碼。

bCRC32的并行實(shí)現

串行處理對于以太網(wǎng)如100M,10G等,顯然是不合適的,在此我門(mén)給出CRC的并行實(shí)現方法,以一個(gè)字節位處理單位。下面給出C語(yǔ)言實(shí)現的CRC32源程序:

由于以太網(wǎng)CRC32要求對幀的前32bit取反,我門(mén)可以初始化寄存器為全1來(lái)達到此目的。

Crcbuff中存放需要編碼的信息比特,最后計算出CRC校驗碼,跟隨信息碼一同發(fā)送出去。

4總結

本文是針對項目中嵌入式設備的聯(lián)網(wǎng)問(wèn)題,設計的CRC32校驗算法,已經(jīng)在FPGA中成功實(shí)現,由于用FPGA實(shí)現編碼相對簡(jiǎn)單,這里就不再累述。

作者Email: lijunshen148@sohu.com



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>