参考:
Neso Academy 《Hamming Code | Error detection》
7.线性分组码-汉明码-普洛西金界_哔哩哔哩_bilibili
目录:
- 定义
- 编码流程
- 汉明界
- 完备码
- 例题
一 定义
如果线性分组码(n,k)满足码字长度为
监督位长度为
信息位长度为
则称这种码为汉明码.
能纠正一位误码
码率
固定码长n,要检测的最大位数为t
假设有1位误码,错误图样为
假设有2位误码,错误图样为
假设有t位误码,错误图样为
伴随式共有
种,去除全0的,需要满足下面等式
二 编码流程
有三种方案:
主要分为如下三步:
3.1 确定校验位个数
一般已知k,根据下面公式来计算r
2.2 计算校验位置
汉明码是一种偶校验码,校验位必须在 位置上.
依然以上面为例,给定信息长度k=4,知道r=3, n=7
2.3 用校验位的线性组合来表示信息位
存放信息位,
用于存放校验位
方案1
第一步:校验位的线性组合来生成和信息位的关系(编码矩阵G)
...1
....2
...3
...4
第二步: 把包含校验位的所有等式相加得到校验方程(校验矩阵H)
(等式1+等式2+等式4)
(等式1+等式3+等式4)
(等式2+等式3+等式4)
方案2
通过校正子来生成
1 先写出校正子,当r=3时候,去除000,共有7种。
2 找出校正子每列中不为0的项,对应的码字加起来就得到一个校正等式
,再找到码字中跟信息源以及监督元的映射关系得到
(同理)
(同理)
方案3:通过校验矩阵H,得到编码矩阵G
因为汉明码的纠正能力为1,所以最小码距为3,则奇偶校验部分
为(利用后面3列的线性组合)
通过转置得到编码矩阵
我们通过,其实现的就是下面功能
三 汉明界
线性分组码(n,k)能够纠正码字中任意小于等于t位误码的错误图样小
长度为n,任意小于等于t位错误图样数为
(n,k) 不同伴随式个数为
则:
四 完备码
若能纠正t个以及以下的全部错误的线性分组码满足
则 称这种线性分组码为完备码
汉明码就是一种t=1完备码
4.1 普洛特金界
确定了(n,k)线性分组码能力上限
下限是
上限
五 例题
5.1 判断线性分组码(n=7,k=1)有无纠正t=2位误码的可能性
下限
上限(普洛特金界)
有可能
5.3 判断线性分组码(n=7,k=2)有无纠正t=2位误码的可能性
下限
上限
矛盾,没有可能
5.2 判断线性分组码(n=7,k=3)有无纠正t=2位误码的可能性
下限
上限
矛盾,没有可能