0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【技術(shù)】FEC—數(shù)據(jù)防丟失,提升數(shù)據(jù)通信可信度!

億佰特物聯(lián)網(wǎng)應(yīng)用專家 ? 2022-07-20 18:10 ? 次閱讀

前向糾錯—FEC

前向糾錯(FEC)是增加數(shù)據(jù)通信的可信度的方法。

前向的意義是糾錯過程為單方向的,沒有錯誤的信息反饋。利用數(shù)據(jù)進(jìn)行傳輸冗余信息的方法,當(dāng)傳輸中出現(xiàn)錯誤,將允許接收器再建數(shù)據(jù)。

即一種差錯控制方式信號在被送入傳輸信道之前會按一定的算法進(jìn)行編碼處理,加入帶有信號本身特征的冗余碼,在接收端按照相應(yīng)算法對接收到的信號進(jìn)行解碼,從而找出在傳輸過程中產(chǎn)生的錯誤碼并將其糾正。比較經(jīng)典的編碼解碼方式例如漢明碼、BCH碼、RS碼等。

漢明碼(Hamming Code),是在電信領(lǐng)域的一種線性調(diào)試碼,以發(fā)明者理查德·衛(wèi)斯里·漢明的名字命名。漢明碼在傳輸?shù)南⒘髦胁迦腧炞C碼,當(dāng)計算機(jī)存儲或移動數(shù)據(jù)時,可能會產(chǎn)生數(shù)據(jù)位錯誤,以偵測并更正單一比特錯誤。

簡單來說,前向糾錯(FEC)就是在數(shù)據(jù)中添加冗余進(jìn)行傳輸,檢驗出錯誤后通過冗余可以恢復(fù)原本的數(shù)據(jù)。漢明碼是一種可用于前向糾錯(FEC)的編碼和解碼方式。

奇偶校驗

漢明碼使用到了奇偶校驗的方法,所以先復(fù)習(xí)一下——奇偶校驗。

示例中高亮位為校驗位,如果傳輸過程中,某一數(shù)據(jù)位發(fā)生錯誤,則檢驗便會不符合校驗規(guī)則。

奇校驗:所有傳送的二進(jìn)制代碼的數(shù)位(含字符的各數(shù)位和校驗位)中,“1”的個數(shù)為奇數(shù)。

例:1001 1011——0 1001 1011因傳輸?shù)脑紨?shù)據(jù)中,1的位數(shù)為5,奇數(shù),所以校驗位寫0。

偶校驗:所有傳送的二進(jìn)制代碼的數(shù)位(含字符的各數(shù)位和校驗位)中,“1”的個數(shù)為偶數(shù)。

例:1001 1011——1 1001 1011因傳輸?shù)脑紨?shù)據(jù)中,1的位數(shù)為5,奇數(shù),所以校驗位寫1。

漢明碼

1

什么是冗余

冗余,在漢明碼中是附加在數(shù)據(jù)中的校驗位,它是附加在數(shù)據(jù)的比特位之間,是一種二進(jìn)制位,可以通過冗余位來檢驗數(shù)據(jù)錯誤和恢復(fù)正確的數(shù)據(jù)。那么,一個數(shù)據(jù)中的冗余位,應(yīng)該是多少個,可以使用(式 2-1)計算:

2n >= m+n+1 (式 2-1)

(n:冗余位位數(shù)。m:數(shù)據(jù)位數(shù)。)

例:傳輸一個8位的數(shù)據(jù)0x9B,二進(jìn)制表示為1001 1011,則計算n的結(jié)果為4:24>=8+4+1。

2

怎么分組

如下圖2-1,假設(shè)有一個7位的數(shù)據(jù),每個位編號1,2......7。分為3組:C1,C2和C3。

C1:1,2,4,5

C2:2,3,5,6

C3:4,5,6,7

始終假設(shè),只有一個錯誤存在其中。

如果,只有C1區(qū)錯誤,C2和C3區(qū)沒有錯誤,根據(jù)這個條件,可以看出,C2中2,3,5,6是沒有錯誤的,C3中4,5,6,7沒有錯誤,說明出錯的是1。再來一次,如果C2和C3區(qū)有錯誤,C1區(qū)沒有錯誤,這次我們可以排除C1中1,2,4,5沒有錯誤,C2和C3只有一個錯誤,則出錯的肯定是6。

8dd8f284-03c1-11ed-9ade-dac502259ad0.png

(圖 2-1)

3

編碼

接下來,我們開始編碼了,使用奇校驗方式,還是上面那個數(shù)字為例:0x9B,二進(jìn)制表示位1001 1011,這是一個8位的數(shù)據(jù),所以冗余位的個數(shù)位4,總的數(shù)據(jù)位數(shù)為12。

到這里,又出現(xiàn)了一個問題,冗余碼放哪些位置呢?前面or后面?都不是,冗余碼(奇偶校驗碼)穿插在數(shù)據(jù)中放置,放置的位置和冗余碼數(shù)量有關(guān),即位置在:20,21,22,23,24……2n-1。

示例為4個冗余位,則放置在第1,2,4,8位的位置上,如下圖2-2,剩下的數(shù)據(jù)位,我們順序填入需要編碼的數(shù)據(jù),如下圖2-3。

8dfa90b0-03c1-11ed-9ade-dac502259ad0.png

(圖 2-2)

8e18c9cc-03c1-11ed-9ade-dac502259ad0.png

(圖 2-3)

這時候,我們發(fā)現(xiàn)了,圖中我們不僅對數(shù)據(jù)位編號,并且表示為二進(jìn)制,原因就是,數(shù)據(jù)位編號的二進(jìn)制表示,是我們進(jìn)行數(shù)據(jù)位分組的依據(jù)。接下來,我們開始分組:

①二進(jìn)制編號第一位為1的:1,3,5,7,9,11 ————20

②二進(jìn)制編號第二位為1的:2,3,6,7,10,11 ————21

③二進(jìn)制編號第三位為1的:4,5,6,7,12 ————22

④二進(jìn)制編號第四位為1的:8,9,10,11,12 ————23

高亮的編號位是每組對應(yīng)填入奇偶檢驗位的位置,對實際的數(shù)據(jù)位數(shù)采用奇校驗:

①組:1的個數(shù)為4,因此20處填入1

②組:1的個數(shù)為2,因此21處填入1

③組:1的個數(shù)為3,因此22處填入0

④組:1的個數(shù)為2,因此23處填入1

綜上,編碼后的數(shù)據(jù)為1001 1101 0111,如圖2-4所示。

8e2ce894-03c1-11ed-9ade-dac502259ad0.png

(圖 2-4)

4

檢錯與糾錯

數(shù)據(jù)傳輸過程中,如果沒有錯誤,校驗通過,則皆大歡喜。如果數(shù)據(jù)出錯了呢,我們便要進(jìn)行檢錯(找到錯誤)和糾錯(糾正錯誤)。在此之前,我們還是要重復(fù)一下,漢明碼最多只能糾錯一個比特位的數(shù)據(jù)錯誤。我們接下來開始。

假設(shè)數(shù)據(jù)位編號為7的數(shù)據(jù),在傳輸過程中,不小心,從”1“變成了”0”。如圖2-5。

8e4f91b4-03c1-11ed-9ade-dac502259ad0.png

(圖 2-5)

檢錯:

①奇校驗第一組:目前數(shù)據(jù)位11,9,7,5,3,1數(shù)據(jù)表示為010111,此時數(shù)據(jù)位中1的個數(shù)為4,不滿足奇校驗,說明這一組數(shù)據(jù)中某一個位出錯。因為要滿足奇校驗,所以需要補(bǔ)1滿足。

8e6e5022-03c1-11ed-9ade-dac502259ad0.png

(圖 2-6)

②奇校驗第二組:目前數(shù)據(jù)位11,10,7,6,3,2數(shù)據(jù)表示為000011,但是此時數(shù)據(jù)位中1的個數(shù)為2,不滿足奇校驗,說明這一組數(shù)據(jù)中某一個位出錯。因為要滿足奇校驗,所以需要補(bǔ)1滿足。

8e99eb24-03c1-11ed-9ade-dac502259ad0.png

(圖 2-7)

③奇校驗第三組:目前數(shù)據(jù)位12,7,6,5,4數(shù)據(jù)表示為10010,但是此時數(shù)據(jù)位中1的個數(shù)為2,不滿足奇校驗,說明這一組數(shù)據(jù)中某一個位出錯。因為要滿足奇校驗,所以需要補(bǔ)1滿足。

8ec01cc2-03c1-11ed-9ade-dac502259ad0.png

(圖 2-8)

④奇校驗第四組:目前數(shù)據(jù)位12,11,10,9,8數(shù)據(jù)表示為10011,此時數(shù)據(jù)位中1的個數(shù)為1,滿足奇校驗,說明這 一組數(shù)據(jù)正確。只需要補(bǔ)0。

8ed0bc9e-03c1-11ed-9ade-dac502259ad0.png

(圖 2-9)

糾錯:

重新校驗之后,把補(bǔ)上的數(shù)位按照從高位到低位排列得出:0111,也就是7。所以,錯誤的數(shù)位編號為7,只需要將收到的數(shù)據(jù)的第七位取反,即得到正確的發(fā)送方發(fā)送的數(shù)據(jù):1001 1101 0111。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    5880

    瀏覽量

    135323
收藏 人收藏

    評論

    相關(guān)推薦

    華為成功舉辦數(shù)據(jù)通信創(chuàng)新峰會北非站,助力非洲網(wǎng)絡(luò)智能化發(fā)展

    華為數(shù)據(jù)通信創(chuàng)新峰會北非站在馬拉喀什成功舉辦,來自埃及、科特、埃塞俄比亞、摩洛哥等多個國家的400多位客戶及伙伴現(xiàn)場參會,共同探討AI時代下數(shù)據(jù)通信領(lǐng)域的技術(shù)創(chuàng)新與發(fā)展。
    的頭像 發(fā)表于 05-30 09:23 ?461次閱讀
    華為成功舉辦<b class='flag-5'>數(shù)據(jù)通信</b>創(chuàng)新峰會北非站,助力非洲網(wǎng)絡(luò)智能化發(fā)展

    數(shù)據(jù)通信網(wǎng)關(guān)是什么?數(shù)據(jù)通信網(wǎng)關(guān)的功能作用

    數(shù)據(jù)通信網(wǎng)關(guān)是一種關(guān)鍵的網(wǎng)絡(luò)設(shè)備,它在不同的通信網(wǎng)絡(luò)或者不同協(xié)議的網(wǎng)絡(luò)之間充當(dāng)橋梁,實現(xiàn)數(shù)據(jù)包的轉(zhuǎn)發(fā)、協(xié)議轉(zhuǎn)換以及網(wǎng)絡(luò)互連。其主要功能和作用包括: 1、網(wǎng)絡(luò)互連:數(shù)據(jù)通信網(wǎng)關(guān)能夠連接兩
    的頭像 發(fā)表于 05-29 14:43 ?544次閱讀

    華為IP Club中東中亞會員計劃再升級,打造數(shù)據(jù)通信技術(shù)交流與共享平臺

    近日,華為數(shù)據(jù)通信創(chuàng)新峰會2024中東中亞站在阿塞拜疆巴庫成功舉辦。
    的頭像 發(fā)表于 05-15 09:11 ?297次閱讀
    華為IP Club中東中亞會員計劃再升級,打造<b class='flag-5'>數(shù)據(jù)通信</b><b class='flag-5'>技術(shù)</b>交流與共享平臺

    華為數(shù)據(jù)通信入選2024 Gartner?魔力象限領(lǐng)導(dǎo)者

    2024年,華為數(shù)據(jù)通信再次入選Gartner?魔力象限領(lǐng)導(dǎo)者
    的頭像 發(fā)表于 03-25 10:40 ?464次閱讀
    華為<b class='flag-5'>數(shù)據(jù)通信</b>入選2024 Gartner?魔力象限領(lǐng)導(dǎo)者

    數(shù)據(jù)通信系統(tǒng)的組成 數(shù)據(jù)通信系統(tǒng)的主要技術(shù)指標(biāo)

    數(shù)據(jù)通信系統(tǒng)是由多個組件組成的,主要包括發(fā)送端、接收端、傳輸介質(zhì)和通信協(xié)議。數(shù)據(jù)通信系統(tǒng)的主要技術(shù)指標(biāo)包括傳輸速率、端到端延遲、誤碼率、帶寬、可靠性等方面。 首先,發(fā)送端是
    的頭像 發(fā)表于 01-24 17:06 ?1950次閱讀

    工業(yè)智能網(wǎng)關(guān)如何保障數(shù)據(jù)通信安全

    工業(yè)智能網(wǎng)關(guān)是組成工業(yè)物聯(lián)網(wǎng)的重要設(shè)備,不僅可以起到數(shù)據(jù)交換、通信、邊緣計算的功能,還可以發(fā)揮數(shù)據(jù)安全保障功能,保障工業(yè)物聯(lián)網(wǎng)穩(wěn)定、可持續(xù)。本篇就為大家簡單介紹一下工業(yè)智能網(wǎng)關(guān)增強(qiáng)和確保數(shù)據(jù)通
    的頭像 發(fā)表于 11-29 17:16 ?459次閱讀
    工業(yè)智能網(wǎng)關(guān)如何保障<b class='flag-5'>數(shù)據(jù)通信</b>安全

    關(guān)于模擬仿真測試可信度評估方法的研究(上)——評估框架

    ,成為自動駕駛功能測試驗證的重要支柱[1],已得到業(yè)內(nèi)廣泛認(rèn)可。基于賽目科技前期提出的智能網(wǎng)聯(lián)汽車產(chǎn)品測試策略研究成果 ,本篇文章提出模擬仿真測試可信度評估框架及一系列評估方法,為后續(xù)開展仿真測試可信度評估提供參
    的頭像 發(fā)表于 11-16 20:10 ?1618次閱讀
    關(guān)于模擬仿真測試<b class='flag-5'>可信度</b>評估方法的研究(上)——評估框架

    基于AT89S52單片機(jī)數(shù)據(jù)通信終端設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于AT89S52單片機(jī)數(shù)據(jù)通信終端設(shè)計.pdf》資料免費(fèi)下載
    發(fā)表于 11-06 16:09 ?0次下載
    基于AT89S52單片機(jī)<b class='flag-5'>數(shù)據(jù)通信</b>終端設(shè)計

    基于MSP430F133和RFW模塊的短距離無線數(shù)據(jù)通信

    電子發(fā)燒友網(wǎng)站提供《基于MSP430F133和RFW模塊的短距離無線數(shù)據(jù)通信.pdf》資料免費(fèi)下載
    發(fā)表于 10-27 10:47 ?0次下載
    基于MSP430F133和RFW模塊的短距離無線<b class='flag-5'>數(shù)據(jù)通信</b>

    基于NIOS II的多串口數(shù)據(jù)通信的實現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《基于NIOS II的多串口數(shù)據(jù)通信的實現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 10-27 10:19 ?0次下載
    基于NIOS II的多串口<b class='flag-5'>數(shù)據(jù)通信</b>的實現(xiàn)

    基于ARM的無線氣象數(shù)據(jù)通信系統(tǒng)設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于ARM的無線氣象數(shù)據(jù)通信系統(tǒng)設(shè)計.pdf》資料免費(fèi)下載
    發(fā)表于 10-24 09:48 ?0次下載
    基于ARM的無線氣象<b class='flag-5'>數(shù)據(jù)通信</b>系統(tǒng)設(shè)計

    基于CDMA的車載終端數(shù)據(jù)通信設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于CDMA的車載終端數(shù)據(jù)通信設(shè)計.pdf》資料免費(fèi)下載
    發(fā)表于 10-20 11:01 ?0次下載
    基于CDMA的車載終端<b class='flag-5'>數(shù)據(jù)通信</b>設(shè)計

    利用紅外線實現(xiàn)單片機(jī)間的數(shù)據(jù)通信

    電子發(fā)燒友網(wǎng)站提供《利用紅外線實現(xiàn)單片機(jī)間的數(shù)據(jù)通信.doc》資料免費(fèi)下載
    發(fā)表于 10-19 11:52 ?0次下載
    利用紅外線實現(xiàn)單片機(jī)間的<b class='flag-5'>數(shù)據(jù)通信</b>

    嵌入式機(jī)器視覺系統(tǒng)中ARM與DSP的數(shù)據(jù)通信方法

    電子發(fā)燒友網(wǎng)站提供《嵌入式機(jī)器視覺系統(tǒng)中ARM與DSP的數(shù)據(jù)通信方法.pdf》資料免費(fèi)下載
    發(fā)表于 10-18 10:19 ?0次下載
    嵌入式機(jī)器視覺系統(tǒng)中ARM與DSP的<b class='flag-5'>數(shù)據(jù)通信</b>方法

    華為全聯(lián)接大會2023 | 一圖看懂數(shù)據(jù)通信商業(yè)市場新品

    點擊“閱讀原文”,了解更多華為數(shù)據(jù)通信資訊! 原文標(biāo)題:華為全聯(lián)接大會2023 | 一圖看懂數(shù)據(jù)通信商業(yè)市場新品 文章出處:【微信公眾號:華為數(shù)據(jù)通信】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
    的頭像 發(fā)表于 09-28 21:35 ?430次閱讀