该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
将代码按照一定的规律组织成若干小组,分组进行
奇偶校验。各组的校验结果组成一个指误字(指出错误
的代码字),不仅能检测是否出错,而且在只有一位出
错的情况下指出是那位错,从而将该位自动变反纠正(
也可设计为检测两位错,纠正一位错)
(1)检测并纠正一位错(以偶校验为例)
设:待编码信息4位 D1D2D3D4
(a)分成几组,增设多少个校验位
k+r≤2r-1
GrGr-1…. G3G2G1
0 0 …. 0 0 0
0 0 …. 0 0 1
………………….
1 1 ….. 1 1 1
4+r≤2r-1
r≥3 取 r=3
(符合条件的最小值)
(b)分组方法
*让指误字代码与出错位的序号相同
*每个校验位只参加一组奇偶校验
组
号 1 2 3 4 5 6 7 指误
字
P1 P2 D1 P3 D2 D3 D4
3 √ √ √ √ G3
2 √ √ √ √ G2
1 √ √ √ √ G1
G3 G2 G1 值
0 0 0 0
0 0 1 1
0 1 0 2
0 1 1 3
1 0 0 4
1 0 1 5
1 1 0 6
1 1 1 7
(c)编码举例
有效信息D1 D2 D3 D4
1 0 1 0
第1组P1 D1 D2 D4
1 1 0 0
第2组P2 D1 D3 D4
0 1 1 0
第3组P3 D2 D3 D4
1 0 1 0
代码
1 2 3 4 5 6 7
P1 P2 D1 P3 D2 D3 D4
1 0 1 1 0 1 0
(d)校验举例
代码 1 2 3 4 5 6 7
P1 P2 D1 P3 D2 D3 D4
1 0 1 1 1 1 0
假定第5位(D2)
发生错误
第1组
P1 D1 D2 D4
1 1 1 0 G1=1
第2组
P2 D1 D3 D4
0 1 1 0 G2=0
第3组
P3 D2 D3 D4
1 1 1 0 G3=1
G3G2G1=101=(5)10
(d)思考:
*海明校验的码距是多少
d=3
*编码与校验电路
(实质:分组奇偶校验,每个信号多次使用)
*校验位和数据位的位置
*G3G2G1≠0 是否一定是一位错