3.7 数据校验码

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3.7 数据校验码

任何一种编码都由许多码字构成,任意两个码字之间会有n位代码不同,n称为它们之间的距离,这些n

值中.最小的就是该编码的码距.

例如,用四位二进制表示16种状态,则16种编码都用到了,此时码距为1。

若用四个二进制位表示8个状态,就可以只用其中的8种编码,而把另8种编码作为非法编码,此时码距为2。

计算机学院

z000 0

z001 1

z010 1

z011 0

z100 1

z101 0

z110 0

z111 1

计算机学院

3.7.1 奇偶校验

奇偶校验码的原理是在每组代码中增加一个冗余位,使合法编码的最小码距由1增加到2。

(1) 校验码的构成规则

偶校验:每个码字(包括校验位)中1的数目为偶数。

比如1101011 的偶校验码为1101011 1

奇校验:每个码字(包括校验位)中1的数目为奇数。

比如1101011 的奇校验码为1101011 0

计算机学院

(2) 校验位的形成

设有效信息为D7D6D5D4D3D2D1D0,则:

偶校验:在发送端求校验位P= D7⊕D6⊕D5⊕D4⊕D3⊕D2⊕D1⊕D0奇校验:在发送端求校验位P= D7⊕D6⊕D5⊕D4⊕D3⊕D2⊕D1⊕D0校验电路如图所示。

计算机学院

(3)校验原理

偶校验在接受端求P’= D7⊕D6⊕D5⊕D4⊕D3⊕D2⊕D1⊕D0⊕P

奇校验在接受端求P’= D7⊕D6⊕D5⊕D4⊕D3⊕D2⊕D1⊕D0⊕P

若P’=0,则无错;若P’=1,则有错。

校验电路如图所示

计算机学院

发送端

P

P’

计算机学院

(4)局限性

奇偶校验码能发现数据代码中奇数个位出错情况,并且

不能纠正错误,常用于对存储器数据的检查或者传输数

据的检查。

3.7.2 海明码校验

海明校验的基本思想是将有效信息按某种规律分成若干组,每组安排一个校验位进行奇偶测试。

计算机学院

例求信息码01101110的海明校验码,画出能指出和纠正一位出错位的海明校验逻辑电路。

①确定海明校验位的位数

设R为校验位的位数,则整个码字的位数应满足不等式:

N=K+R≤2R-1

设R=3,则23-1=7,N=8+3=11,不等式不满足;

设R=4,则24-1=15,N=8+4=12,不等式满足。

所以R最小取4。

②确定校验位的位置:位号(1~12)为2的权值的那些位,即:20、

21、22、23的位置作为校验位,记作P1、P2、P3、P4,余下的为

有效信息位。即:

12 11 10 9 8 7 6 5 4 3 2 1

D 7D

6

D

5

D

4

P4 D

3

D

2

D

1

P3D

P2 P1

计算机学院

③分组:有4个校验位,将12位分4组,第i位由校验位的位号之和

等于i的那些校验位所校验。如表所示,如:第11位D

由P1(位

6号为1)、P2(位号为2)、P4(位号为8)所校验,因为1+2+8=11。

校验H12 H11 H10 H9H8 H7 H6H5H4H3H2H1

位的D7D6D5D4P4 D3D2 D1 P3D0 P2 P1

位号0 1 1 0 1 1 1 0

第一组(P1) 1√√√√√√第二组(P2) 2√√√√√√

第三组(P3) 4√√√√√

第四组(P4) 8√√√√√

计算机学院

④校验位的形成

P1=第一组中的所有位(除P1外)求异或=

D 6⊕D

4

⊕D

3

⊕D

1

⊕D

=1⊕0⊕1⊕1⊕0=1

P2=第二组中的所有位(除P2外)求异或=

D 6⊕D

5

⊕D

3

⊕D

2

⊕D

= 1⊕1⊕1⊕1⊕0=0

P3=第三组中的所有位(除P3外)求异或=

D 7⊕D

3

⊕D

2

⊕D

1

= 0⊕1⊕1⊕1=1

P4=第四组中的所有位(除P4外)求异或=

D 7⊕D

6

⊕D

5

⊕D

4

= 0⊕1⊕1⊕0=0

计算机学院

为了能检测两个错误,增加一位校验P5,放在最高位。

P5 = D

7⊕D

6

⊕D

5

⊕D

4

⊕D

3

⊕D

2

D 1⊕D

⊕P1⊕P2⊕P3⊕P4

= 0⊕1⊕1⊕0⊕1⊕1⊕1⊕0⊕1⊕0⊕1⊕0 = 1

【例题答案】信息码0110 1110的海明校验码为:

1 0110 0111100 1

计算机学院

计算机学院

(2)校验原理

在接收端分别求S 1、S 2、S 3、S 4、S 5。

S 1 = P1⊕D 6⊕D 4⊕D 3⊕D 1⊕D 0

S 2 = P2⊕D 6⊕D 5⊕D 3⊕D 2⊕D 0

S 3 = P3⊕D 7⊕D 3⊕D 2⊕D 1

S 4 = P4⊕D 7⊕D 6⊕D 5⊕D 4

S 5 = P5⊕D 7⊕D 6⊕D 5⊕D 4⊕D 3⊕D 2⊕

D 1⊕D 0⊕P1⊕P2⊕P3⊕P4

相关文档
最新文档