<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è) > 模擬技術(shù) > 設計應用 > 循環(huán)冗余校驗碼---CRC碼

循環(huán)冗余校驗碼---CRC碼

作者: 時(shí)間:2011-07-03 來(lái)源:網(wǎng)絡(luò ) 收藏
二進(jìn)制信息位串沿一條信號線(xiàn)逐位在部件之間或計算機之間傳送稱(chēng)為串行傳送。CRC(Cyclic Redundancy check)碼可以發(fā)現并糾正信息串行讀寫(xiě)、存儲或傳送過(guò)程中出現的一位、多位錯誤,因此在磁介質(zhì)存儲器讀寫(xiě)和計算機之間通信方面得到廣泛應用。

  CRC碼一般是指k位信息碼之后拼接r位校驗碼。應用CRC碼的關(guān)鍵,是如何從k位信息位簡(jiǎn)便地得到r位校驗位(編碼)的值,以及如何判斷k+r位的碼字是否正確。下面僅就CRC碼應用中的問(wèn)題做簡(jiǎn)單介紹(有關(guān)的理論問(wèn)題請參閱有關(guān)書(shū)籍)。

① CRC碼的編碼方法

  先介紹CRC碼編碼用到的模2除運算。

  模2運算是指以按位模2相加為基礎的四則運算,運算時(shí)不考慮位間進(jìn)位和借位。

  模2加減:即按位加,可用異或邏輯實(shí)現。模2加與模2減的結果相同,即
    0±0=0 0±1=1 1±0=1 1±1=0。兩個(gè)相同的數據的模2和為0。

  模2乘:按模2加求部分積之和。
  例:    1010
        101
     
       1010
       0000
      1010
     
       100010

  模2除:按模2減(加)求部分余數。每求一位商應使部分余數減少一位。
  上商的原則是:當部分余數的最高位為1時(shí),該位商取1;為0時(shí),該位商取0。當部分的余數的位數小于除數的位數時(shí),該余數即為最后余數。
  例如,


    

  下面介紹CRC碼的編碼方法。
  首先,可將待編碼的k位有效信息位表達為多項式M(x)形式:
    M(x)= Ck-1xk-1 + Ck-2x k-2+…+Cixi+…+C1x1+C0
  式中Ci為0或1,x為偽變量,并用xi指明各位間的排列位置。

  若將信息位組左移r位,則可表示為多項式M(x) * xr ,這樣就可以空出初值為0的r個(gè)校驗位,即
      

  CRC碼的碼字,是用k個(gè)數據位拼接上r個(gè)校驗位得到的。校驗位的值,就是通過(guò)對多項式M(x) * xr除以生成多項式G(x)(特定的一個(gè)多項式)所得到的余式。為了得到r位余數(校驗位),G(x)必須是r+1位的,即為r次的多項式。
設所得余數表達式為R(x),商為 Q(x),就有:
     M(x).xr / G(x) = Q(x) + R(x) / G(x)

  將r次余式直接拼接在源數據多項式的右側,可寫(xiě)成M(x).xr + R(x),并可推導出:
     M(x).xr + R(x) = [ Q(x)* G(x) + R(x) ] + R(x)
             = [ Q(x)* G(x) ] + [ R(x)+R(x) ]
             = Q(X)* G(x)

  這證明所得到的CRC碼字是一個(gè)可被G(x)(多項式)數碼除盡的數碼(多項式)。
  例:對四位源信息 1100,來(lái)求三個(gè)校驗位的值,可選擇生成多項式為 1011,則有:
     M(x) = x3 + x2 = 1100    (k = 4)
     M(x)*x3 = x6 + x5 = 1100000 (左移, r = 3位)
     G(x) = x3+ x + 1 =1011    (r+1 = 4位)

  

  所得到的碼字(系統線(xiàn)性(7,4)分組碼)為:
     M(x).x3 + R(x) = 1100000 + 010 = 1100010



評論


相關(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>