久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7605|回復(fù): 2
收起左側(cè)

CRC校驗(yàn)原理

[復(fù)制鏈接]
ID:74985 發(fā)表于 2015-3-21 03:09 | 顯示全部樓層 |閱讀模式
一、基本原理

    CRC檢驗(yàn)原理實(shí)際上就是在一個(gè)p位二進(jìn)制數(shù)據(jù)序列之后附加一個(gè)r位二進(jìn)制檢驗(yàn)碼(序列),從而構(gòu)成一個(gè)總長為n=p+r位的二進(jìn)制序列;附加在數(shù)據(jù)序列之后的這個(gè)檢驗(yàn)碼與數(shù)據(jù)序列的內(nèi)容之間存在著某種特定的關(guān)系。如果因干擾等原因使數(shù)據(jù)序列中的某一位或某些位發(fā)生錯(cuò)誤,這種特定關(guān)系就會被破壞。因此,通過檢查這一關(guān)系,就可以實(shí)現(xiàn)對數(shù)據(jù)正確性的檢驗(yàn)。

二、幾個(gè)基本概念

1、幀檢驗(yàn)序列FCS(Frame Check Sequence):為了進(jìn)行差錯(cuò)檢驗(yàn)而添加的冗余碼。

2、多項(xiàng)式模2運(yùn)行:實(shí)際上是按位異或(Exclusive OR)運(yùn)算,即相同為0,相異為1,也就是不考慮進(jìn)位、借位的二進(jìn)制加減運(yùn)算。如:10011011 + 11001010 = 01010001。

3、生成多項(xiàng)式(generator polynomial):當(dāng)進(jìn)行CRC檢驗(yàn)時(shí),發(fā)送方與接收方需要事先約定一個(gè)除數(shù),即生成多項(xiàng)式,一般記作G(x)。生成多項(xiàng)式的最高位與最低位必須是1。常用的CRC碼的生成多項(xiàng)式有:

CRC8=X8+X5+X4+1

CRC-CCITT=X16+X12+X5+1

CRC16=X16+X15+X5+1

CRC12=X12+X11+X3+X2+1

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

每一個(gè)生成多項(xiàng)式都可以與一個(gè)代碼相對應(yīng),如CRC8對應(yīng)代碼:100110001。

三、CRC檢驗(yàn)碼的計(jì)算

設(shè)信息字段為K位,校驗(yàn)字段為R位,則碼字長度為N(N=K+R)。設(shè)雙方事先約定了一個(gè)R次多項(xiàng)式g(x),則CRC碼:

V(x)=A(x)g(x)=xRm(x)+r(x)

其中:   m(x)為K次信息多項(xiàng)式, r(x)為R-1次校驗(yàn)多項(xiàng)式。

這里r(x)對應(yīng)的代碼即為冗余碼,加在原信息字段后即形成CRC碼。

r(x)的計(jì)算方法為:在K位信息字段的后面添加R個(gè)0,再除以g(x)對應(yīng)的代碼序列,得到的余數(shù)即為r(x)對應(yīng)的代碼(應(yīng)為R-1位;若不足,而在高位補(bǔ)0)。

計(jì)算示例

設(shè)需要發(fā)送的信息為M = 1010001101,產(chǎn)生多項(xiàng)式對應(yīng)的代碼為P = 110101,R=5。在M后加5個(gè)0,然后對P做模2除法運(yùn)算,得余數(shù)r(x)對應(yīng)的代碼:01110。故實(shí)際需要發(fā)送的數(shù)據(jù)是101000110101110。

四、錯(cuò)誤檢測

    當(dāng)接收方收到數(shù)據(jù)后,用收到的數(shù)據(jù)對P(事先約定的)進(jìn)行模2除法,若余數(shù)為0,則認(rèn)為數(shù)據(jù)傳輸無差錯(cuò);若余數(shù)不為0,則認(rèn)為數(shù)據(jù)傳輸出現(xiàn)了錯(cuò)誤,由于不知道錯(cuò)誤發(fā)生在什么地方,因而不能進(jìn)行自動糾正,一般的做法是丟棄接收的數(shù)據(jù)。

五、幾點(diǎn)說明:

    1、CRC是一種常用的檢錯(cuò)碼,并不能用于自動糾錯(cuò)。

2、只要經(jīng)過嚴(yán)格的挑選,并使用位數(shù)足夠多的除數(shù) P,那么出現(xiàn)檢測不到的差錯(cuò)的概率就很小很小。

3、僅用循環(huán)冗余檢驗(yàn) CRC 差錯(cuò)檢測技術(shù)只能做到無差錯(cuò)接受(只是非常近似的認(rèn)為是無差錯(cuò)的),并不能保證可靠傳輸。




線性編碼理論。在發(fā)送端傳送的K位二進(jìn)制數(shù)據(jù),以一定規(guī)則產(chǎn)生一個(gè)校驗(yàn)監(jiān)督碼(或者叫監(jiān)督矩陣)r位,并負(fù)載信息后,構(gòu)成一個(gè)新的二進(jìn)制碼序列共(K+R)位。最后發(fā)送出去。在接收端根據(jù)信息嗎和CRC碼禁言,是否出錯(cuò)。
  CRC16監(jiān)督式(美國標(biāo)準(zhǔn)):G(X)=X^16+X^15+X2+1
CRC16監(jiān)督式(歐洲標(biāo)準(zhǔn)):G(X)=X16+X12+X5+1
一般多數(shù)采用CCITT推薦的歐標(biāo)格式:10001000000100001
16位的CRC碼產(chǎn)生的規(guī)則是先把要發(fā)送的信息元左移16位(乘以2^16),再除以監(jiān)督式,最后得到的是CRC碼。再把CRC碼附在信息元后面,一起發(fā)送出去。
    B(X).2^16/G(X)=Q(X)+R(X)/G(X)
  Q(X)是商,R(X)是余數(shù)。模2加減法就是不帶進(jìn)位借位的加減法相當(dāng)異或,乘除法和普通數(shù)學(xué)乘除法一致。例如:
   信息碼:1011,監(jiān)督元:G(X)X^8+X^5+X^4+1   CRC8校驗(yàn)  下面是除法運(yùn)算:
1011 0000 0000
1001 1000 1
    10 1000 1000
    10 0110 001
         11101010
所以CRC 8 監(jiān)督元:11101010
發(fā)送的K+r位碼:1011 11101010
接收端接收到的信息碼除以監(jiān)督元,如果R(X)為0,說明傳輸無誤。
假設(shè)接收到跟發(fā)送一致。驗(yàn)證
1011 1110 1010
1001 1000 1
    10 0110 0010
    10 0110 001
                      0
所以接收正確無誤

實(shí)際通信中發(fā)送數(shù)據(jù)是多字節(jié),比如發(fā)送地址、控制、信息、校驗(yàn)。所以必須按多字節(jié)去計(jì)算CRC碼。



回復(fù)

使用道具 舉報(bào)

ID:155719 發(fā)表于 2019-4-1 11:03 | 顯示全部樓層
大神都很多啊
回復(fù)

使用道具 舉報(bào)

ID:1017706 發(fā)表于 2022-6-4 03:26 | 顯示全部樓層
這個(gè)很詳細(xì)
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 韩国精品一区 | 久久久久久97 | 国产福利网站 | 久久香蕉精品 | 久久成人精品视频 | 免费一级全黄少妇性色生活片 | 中文字幕免费在线看线人动作大片 | 欧美精品日韩 | 看黄色大片 | 日日av| 久久成人毛片 | 成人免费视屏 | 九九香蕉视频 | 国产91清纯白嫩初高中在线观看 | 欧美a一级 | 福利片在线观看 | 色综合色综合网色综合 | 成人免费毛片片v | av手机在线免费观看 | 伊人免费 | 少妇一级淫片 | av观看免费 | 天天综合av | 丨国产丨调教丨91丨 | 简单av网 | 精品日韩在线观看 | 久热99 | 亚洲精品久久久久avwww潮水 | 日韩精品一区二区三区免费视频 | 在线免费观看毛片 | 三级视频在线观看 | 日韩中文字幕第一页 | 夜夜骑夜夜操 | 黄色成人小视频 | 国产色自拍 | 日韩午夜片 | 99re在线观看 | 中文字幕免费视频 | 国产成人三级一区二区在线观看一 | 黄色大片在线播放 | 国产精品一区二区性色av |