色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

漢明碼編碼原理介紹

倩倩 ? 來源:網絡整理 ? 2018-03-02 16:07 ? 次閱讀

為了保證通信過程中數據傳輸的正確性和完整性,并且在通信過程中,如果數據傳輸發生一位錯誤,能夠將其矯正過來,將信息數據進行漢明編碼后再進行數據傳輸。

漢明碼(Hamming Code)也叫海明碼,是Richard Hamming(貝爾實驗室)于1950年發明的,漢明碼也是利用了奇偶校驗位概念,通過在數據位后增加一些比特以驗證數據的有效性,故漢明碼也屬于線性糾錯碼(可糾錯1-bit錯誤檢出2-bit錯誤)。漢明碼無法實現2位及2位以上糾錯。

漢明碼原理

漢明碼運算需要構造G生成矩***和H監督矩***,關于構造方法可參考相關計算機原理書籍,這里只需了解些簡單的概念即可。

設數據位數為m,校驗位數為k,則總編碼位數為n,所以,n=m+k,則,

有Hamming不等式:

2^k-1》=n

也可表示為:2^k》=m+k+1,該不等式用于對比運算計算數據位數和檢驗位數,舉個例子假設數據位為64,那么校驗位則為(“2^k-k》=65” =》k=7)。

校驗位數一般指最小值,因為k越小總信息位會越小,傳輸開銷自然越小。

信息位數一般指最大值,但由于2^k-k只能在固定的離散值里取值,所以信息位也可能不是最大值,比如信息位為24,計算需要校驗位5,但同樣可信息位為25時,校驗位同樣是5。

校驗位數VS信息位數關系如下表:

漢明碼編碼原理介紹

注:漢明碼的特性決定,一般不會做太多信息位的校驗,信息位越長出現多余兩個錯誤的概率會越高,這將帶來糾錯的難度。

漢明碼編碼原理

設碼長為n,信息位長度為k,監督位長度為r=n-k。如果需要糾正一位出錯,因為長度為n的序列上每一位都可能出錯,一共有n種情況,另外還有不出錯的情況,所以我們必須用長度為r的監督碼表示出n+1種情況。而長度為r的監督碼一共可以表示2^r種情況 。因此

2^r 》= n + 1, 即r 》= log(n+1)

我們以一個例子來說明漢明碼。假設k=4,需要糾正一位錯誤,則

2^r 》= n + 1 = k + r + 1 = 4 + r + 1

解得r 》= 3。我們取r=3,則碼長為3+4=7。用a6,a5,。。.a0表示這7個碼元。用S1,S2,S3表示三個監關系式中的校正子。我們作如下規定(這個規定是任意的):

S1 S2 S3 錯碼的位置

0 0 1 a0

0 1 0 a1

1 0 0 a2

0 1 1 a3

1 0 1 a4

1 1 0 a5

1 1 1 a6

0 0 0 無錯

按照表中的規定可知,僅當一個錯碼位置在a2,a4,a5或a6時校正子S1為1,否則S1為0。這就意味著a2,a4,a5,a6四個碼元構成偶校驗關系:

S1 = a6⊕a5⊕a4⊕a2 (1)式

同理,可以得到:

S2 = a6⊕a5⊕a3⊕a1 (2)式

S3 = a6⊕a4⊕a3⊕a0 (3)式

在發送信號時,信息位a6,a5,a4,a3的值取決于輸入信號,是隨機的。監督為a2,a1,a0應該根據信息位的取值按照監督關系決定,即監督位的取值應該使上述(1)(2)(3)式中的S1,S2,S3為0,這表示初始情況下沒有錯碼。即

a6⊕a5⊕a4⊕a2 = 0

a6⊕a5⊕a3⊕a1 = 0

a6⊕a4⊕a3⊕a0 = 0

由上式進行移項運算,得到:

a2 = a6⊕a5⊕a4

a1 = a6⊕a5⊕a3

a0 = a6⊕a4⊕a3

已知信息位后,根據上式即可計算出a2,a1,a0三個監督位的值。

接收端受到每個碼組后,先按照(1)~(3)式計算出S1,S2,S3,然后查表可知錯碼情況。

例如,若接收到的碼字為0000011,按照(1)~(3)計算得到:

S1 = 0, S2 = 1, S3 = 1

查表可得在a3位有一個錯碼。

這種編碼方法的最小漢明距離為d=3,所以這種編碼可以糾正一個錯碼或者檢測兩個錯碼。

漢明碼實例

下文示例為(30,24)漢明碼計算方法,用在MIPI DSI包頭部分(MIPI Alliance Specification for Display Serial Interface,Chapter 9),DSI包頭格式固定為24bits Data+8bits ECC,8bitsECC中預設P6=P7=0,所以實際n=30,m=24,k=6。

檢驗位計算方法參考MIPI DSI table22生成矩***(Px vs [DataBit0~DataBitx]),比如P5=D10^D11^.。。.D23,表示對應DataBit23的P5列,只有這些DataBit位為1。

int main() {

char res;

char in[20]={0};

char D0,D1,D2,D3,D4,D5,D6,D7,D8,D9,D10,D11,D12,D13,D14,D15,D16,D17,D18,D19,D20,D21,D22,D23;

char P0,P1,P2,P3,P4,P5,P6,P7;

cout《《“Checking Codes(eg.0x1234AF, \”-\“ for exit): 0x”;

cin》》in;

if(in[0]==‘-’) {

return 0;

}

for(int i=0;i《6;i++){

if((in[i]》=‘0’) && (in[i]《=‘9’)) {

in[i] = in[i]-0x30;

}else if((in[i]》=‘A’) && (in[i]《=‘F’)){

in[i] = in[i]-‘A’+10;

}else {

return 0;

}

}

D0=in[1]&0x01; D1=(in[1]&0x02)》》1;

D2=(in[1]&0x04)》》2; D3=(in[1]&0x08)》》3;

D4=in[0]&0x01; D5=(in[0]&0x02)》》1;

D6=(in[0]&0x04)》》2; D7=(in[0]&0x08)》》3;

D8=in[3]&0x01; D9=(in[3]&0x02)》》1;

D10=(in[3]&0x04)》》2; D11=(in[3]&0x08)》》3;

D12=in[2]&0x01; D13=(in[2]&0x02)》》1;

D14=(in[2]&0x04)》》2; D15=(in[2]&0x08)》》3;

D16=in[5]&0x01; D17=(in[5]&0x02)》》1;

D18=(in[5]&0x04)》》2; D19=(in[5]&0x08)》》3;

D20=in[4]&0x01; D21=(in[4]&0x02)》》1;

D22=(in[4]&0x04)》》2; D23=(in[4]&0x08)》》3;

P7=0;

P6=0;

P5=D10^D11^D12^D13^D14^D15^D16^D17^D18^D19^D21^D22^D23;

P4=D4^D5^D6^D7^D8^D9^D16^D17^D18^D19^D20^D22^D23;

P3=D1^D2^D3^D7^D8^D9^D13^D14^D15^D19^D20^D21^D23;

P2=D0^D2^D3^D5^D6^D9^D11^D12^D15^D18^D20^D21^D22;

P1=D0^D1^D3^D4^D6^D8^D10^D12^D14^D17^D20^D21^D22^D23;

P0=D0^D1^D2^D4^D5^D7^D10^D11^D13^D16^D20^D21^D22^D23;

res = ((P7&0x01)*8+(P6&0x01)*4+(P5&0x01)*2+(P4&0x01))*16+(P3&0x01)*8+(P2&0x01)*4+(P1&0x01)*2+(P0&0x01);

printf(“Result:0x%02X\r\n”,res);

return 0;

}

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 漢明碼
    +關注

    關注

    0

    文章

    8

    瀏覽量

    8075
收藏 人收藏

    評論

    相關推薦

    實現漢明糾錯碼的編碼和解碼方案設計

    理解漢明碼首先要理解奇偶校驗,奇校驗就是在一串編碼里增加一位校驗位使這一串編碼里的1的個數位奇數。偶校驗同理,使編碼里1的個數為偶數。
    發表于 05-04 09:00 ?3007次閱讀
    實現漢明糾錯碼的<b class='flag-5'>編碼</b>和解碼方案設計

    [6.6.1]--漢明碼

    編碼信息論
    jf_75936199
    發布于 :2023年01月08日 15:31:52

    請問漢明碼(7,4)一共有多少種碼字呢?

    我覺得應該是2^4=16種吧?漢明碼(12,8)就是2^8=256種?請問對不對?
    發表于 05-22 00:09

    基于FPGA的交織編碼技術研究及實現

    26期摘  要:對于采用信道編碼技術進行糾錯的系統,只能糾正隨機錯誤,無法解決突發錯誤的問題。詳細闡述了一種基于漢明碼的交織編碼技術,并以FPGA為平臺進行了實現與仿真。仿真結果表明該交織編碼
    發表于 05-11 14:09

    基于FPGA的漢明碼譯碼器如何對碼元數據添加噪聲干擾?

    入門小白求助,我最近在做畢業設計的時候 看到一篇《基于FPGA的漢明碼譯碼器》相關論文,其中學者對該譯碼器是這樣設計的(附圖),我想問一下在noise_add模塊中是如何向輸入數據添加噪聲干擾
    發表于 02-26 23:29

    【原創】基于FPGA的漢明碼編碼解碼設計

    基于FPGA的漢明碼編碼解碼設計實驗簡述本實驗的目的是實現漢明糾錯碼的編碼和解碼1.1漢明碼簡介 漢明碼,是在電信領域的一種線性調試碼,以發
    發表于 04-15 11:47

    如何提高漢明碼的糾錯能力?

    漢明碼糾錯原理是什么?怎樣實現漢明碼對連續多位差錯糾正?怎樣去設計漢明碼測試程序?
    發表于 04-27 06:22

    提高漢明碼對突發干擾的糾錯能力

    在簡要介紹漢明碼編碼原理的基礎上,詳細分析干擾對漢明碼糾錯的影響;通過對漢明碼重新組織排列,在不增加代碼冗余度的前提下,提高
    發表于 04-15 11:34 ?20次下載

    PIC單片機串行通信中的漢明編碼自動檢糾錯

    基于漢明碼(Hamning Code)編碼方式實現串行通信中的自動檢糾錯功能。重點分析漢明碼編碼方式和糾錯方式,并介紹實現算法。在算法中,將
    發表于 05-16 14:09 ?27次下載

    一種基于漢明碼和濕紙碼的隱寫算法

    該文通過將載體圖像分割成矩陣塊,重復利用載體矩陣塊像素,結合漢明碼和濕紙碼構造了一種新的雙層結構隱寫算法。該算法首先利用漢明碼在載體矩陣的行向量中嵌入信息,然
    發表于 02-09 14:45 ?8次下載

    漢明碼,漢明碼是什么意思

    漢明碼,漢明碼是什么意思 漢明碼是一種能夠糾正單個錯誤的線性分組碼。它有以下特點: (1)最小碼距
    發表于 03-17 17:41 ?8419次閱讀

    漢明碼計算及其糾錯原理詳解

    漢明碼(Hamming Code),是在電信領域的一種線性調試碼,以發明者理查德·衛斯里·漢明的名字命名。漢明碼在傳輸的消息流中插入驗證碼,以偵測并更正單一比特錯誤。由于漢明編碼簡單,它們被廣泛應用于內存(RAM )。
    的頭像 發表于 03-02 15:08 ?3w次閱讀
    <b class='flag-5'>漢明碼</b>計算及其糾錯原理詳解

    漢明碼編譯碼器的數據手冊免費下載

    本文檔的主要內容詳細介紹的是漢明碼編譯碼器的數據手冊免費下載。
    發表于 12-13 08:00 ?0次下載
    <b class='flag-5'>漢明碼</b>編譯碼器的數據手冊免費下載

    漢明碼糾錯的基本原理及優化解決方案

    通信數據量不大,還可以縮短編碼長度,比如采用[8,4,3]8比特漢明碼。這樣雖然有效信息只是總編碼長度的50%,但比起出現多個差錯后而要求發送方重發數據要好。
    的頭像 發表于 09-16 17:52 ?1.5w次閱讀
    <b class='flag-5'>漢明碼</b>糾錯的基本原理及優化解決方案

    漢明碼編譯碼文檔

    電子發燒友網站提供《漢明碼編譯碼文檔.doc》資料免費下載
    發表于 11-17 16:04 ?2次下載
    <b class='flag-5'>漢明碼</b>編譯碼文檔
    主站蜘蛛池模板: 99国内精品| 99热久久久无码国产精品性麻豆| 最新亚洲中文字幕在线观看| 爆操日本美女| 国产在线精品亚洲第一区| 老湿影院色情a| 四虎视频最新视频在线观看| 伊人网中文字幕| 打开双腿狠狠蹂躏蜜桃臀| 花蝴蝶高清在线视频免费观看| 欧美三级在线完整版免费| 亚洲 无码 在线 专区| 97在线观看免费| 国产视频a在线观看v| 蜜芽无码亚洲资源网站| 亚州AV中文无码乱人伦在线| 99精品久久久久久久| 狠狠色狠狠色综合日日小说| 秋霞电影网伦大理电影在线观看 | 人人模人人干| 一个人在线观看免费中文www| 成人在线免费视频观看| 绝逼会被锁| 亚洲 欧美无码原创区| jizzjizz中国大学生| 久久99热成人精品国产| 少妇两个奶头喷出奶水了怎么办| 中文字幕午夜乱理片| 国产亚洲精品在浅麻豆| 人妖欧美一区二区三区四区| 正在播放国产精品| 国产欧美无码亚洲毛片| 青娱乐在线一区| 中文字幕在线永久| 国语精彩对白2021| 色女仆影院| brazzers巨臀系列| 老湿影院色情a| 亚洲性夜夜色综合网站| 国产精品色午夜视频免费看| 欧美精品专区第1页|