【现代通信原理笔记】7 差错控制编码(信道编码) 您所在的位置:网站首页 信道调整功能包括 【现代通信原理笔记】7 差错控制编码(信道编码)

【现代通信原理笔记】7 差错控制编码(信道编码)

2024-06-02 20:53| 来源: 网络整理| 查看: 265

【现代通信原理】7 差错控制编码(信道编码)

题图 重点

检错、纠错 检纠错能力两个公式。纠错能力 t、检错能力 e(重要) 差错控制方式:前向纠错,检错重传,混合纠错 分组码:校验矩阵、监督码元、效率、码长、(最小)码距、码重 恒比码正反码(仅了解) 线性分组码:线性码、汉明码、校正子的作用。清楚原理 H 矩阵,G 矩阵 构成,转换关系(重要)

部分内容结合计算机网络原理

第 10 章:检错与纠错(线性分组码、CRC)第 11 章:数据链路控制(ARQ 系统)

文章目录 【现代通信原理】7 差错控制编码(信道编码)概述通信的可靠性差错控制方式3 种自动请求重发(ARQ)系统 第 1 讲 基本原理及简单编码分组码基本原理1.1 奇偶校验(监督)码1.2 二维奇偶校验(监督)码(方阵码)1.3 恒比码(等重码)(仅了解)1.4 正反码(仅了解)校验和 第 2 讲 线性分组码汉明码线性分组码一般原理H 校验矩阵G 生成矩阵 校正子与错误图样线性分组码的性质① 封闭性② 最小距离 第 3 讲 循环码循环冗余校验(CRC)码差错检验能力 参考作业

概述 通信的可靠性

可靠性增加,有效性减小

要将质量要求与误码率两者匹配起来

误码

针对乘性干扰:采用均衡等措施针对加性干扰:合理选择调制/解调方法、增大发射功率对剩余的误码:采用差错控制、交织等措施,加以纠正 差错控制方式

应根据信道类型、对实时性和误码率的要求等因素来选择。

信道类型 — 根据错码的不同分布规律分为:

随机信道:错码是随机独立出现的突发信道:错码是成串集中出现的混合信道:既有随机错码又有突发错码

差错控制方式:

检错重发——自动请求重发(ARQ)前向纠错(英语:forward error correction,缩写 FEC)前向纠错是一种差错控制方式,即纠错编码混合纠错

技术措施:

纠错编码纠错策略 —— 即以上差错控制方式 3 种自动请求重发(ARQ)系统

停止等待 ARQ 系统

拉后 ARQ 系统​

回退 N 帧 ARQ选择重发 ARQ 系统选择性重复 ARQ

参考计网

编码器 对输入的信码进行分组编码(加入校验元)后发送。若收到接收端的重发(NAK)指令,执行重发。

译码器 对接收码校验,若发现有错,则通过反向信道发送一个 重发(NAK)指令,指示发送端重发。若无错,则发送确认(ACK) 指令,指示发送端正常发送。

Image

ARQ 的主要优点:与前向纠错 (FEC) 方法相比

能抵抗大误码率,适应不同特性的信道;检错的计算复杂度较低;

ARQ 的主要缺点:

重发使得 ARQ 系统的传输效率降低。需双向信道来重发,不适用单向信道和一点到多点的通信系统 第 1 讲 基本原理及简单编码

校验(监督)码元:发送端在信息码元序列中增加一些差错控制码元,以便收端判断正误,它们被称为校验码元。校验码元位数不同,检错或纠错能力就不同。

编码效率(简称码率):设编码序列中信息码元数量为 k,总码元数量为 n ( n > k ) n(n>k) n(n>k) ,则比值 R = k / n R=k/n R=k/n 就是码率。校验码元数 r = n − k r=n-k r=n−k。

差错控制编码表面上降低有效性,换取更低误码率,提高可靠性。但信息速率可能更接近信道容量

分组码基本原理

分组码:把一个长数据文件分成若干个长度相等的信息码组,在每个码组后加上校验码。与分组码并称的另一种码是卷积码。

系统码:信息位保持不变,在其后加上校验位的纠错码

非系统码:编码码组中无对应信息位(信息位和校验位交叉)

许用码组

禁用码组:接收端一旦收到禁用码组,就认为出现了错码。

校验码元:系统码的校验码元冗余

码长 ( n n n):码组(码字)中的码元个数。

码重 ( W W W):码组 a a a 中“1”的数目, w ( a ) w(a) w(a)。

码距 ( d d d): 两个码组 a、b 对应位上不同值的个数,称为码组 的距离 d ( a , b ) = w ( a + b ) d(a, b) = w(a+b) d(a,b)=w(a+b)。—又称汉明距离。(“+”按位模 2 加)

最小码距 ( d 0 d_0 d0​):某种编码各个码组之间距离的最小值

最小码距 d 0 d_0 d0​ 和检纠错能力的关系(可以画图方便理解)

检 e 个错码 d 0 ⩾ e + 1 d_0\geqslant e+1 d0​⩾e+1纠 t 个错码 d 0 ⩾ 2 t + 1 d_0\geqslant 2t+1 d0​⩾2t+1纠 t 个错码 & 检 e 个错码 d 0 ⩾ e + t + 1 ( e > t ) d_0\geqslant e+t+1 (e>t) d0​⩾e+t+1(e>t) 1.1 奇偶校验(监督)码

Image

1.2 二维奇偶校验(监督)码(方阵码)

Image

1.3 恒比码(等重码)(仅了解)

“1”的数目与“0”的数目之比保持恒定。

1.4 正反码(仅了解)

每个码组的校验位数等于信息位数,校验位值由信息码中的“1” 的数目确定:

当信息码中有奇数个“1”时,校验位是信息位的重复;当信息码中有偶数个“1”时,校验位是信息位的反码;

该码能够严格地纠正任意 1 位错码,码率为 1/2。

校验和

计网内容

反码、求和、0

第 2 讲 线性分组码 线性码:按照一组线性方程构成的代数码。即每个码字的校验码元是信息码元的线性组合。代数码:建立在代数学基础上的编码。分组码:每一码组的校验码元仅与本组中的信息码元有关。线性分组码:按照一组线性方程构成的分组码。例如,奇偶校验码就是一种 ( n , n − 1 ) (n, n-1) (n,n−1) 线性分组码。

符号表示:一种码若码长是 n,其中信息码有 k 位,称为 ( n , k ) (n, k) (n,k) 码,如 (7, 4) 码。以下以 (7, 4) 码为例。

信息码向量 m ⃗ = ( m 3 , m 2 , m 1 , m 0 ) \vec{m} = (m_3,m_2,m_1,m_0) m =(m3​,m2​,m1​,m0​)

发送码向量 A ⃗ = ( a 6 , a 5 , a 4 , a 3 , a 2 , a 1 , a 0 ) \vec{A} = (a_6,a_5,a_4,a_3,a_2,a_1,a_0) A =(a6​,a5​,a4​,a3​,a2​,a1​,a0​)

接收码向量 B ⃗ = ( b 6 , b 5 , b 4 , b 3 , b 2 , b 1 , b 0 ) \vec{B} = (b_6,b_5,b_4,b_3,b_2,b_1,b_0) B =(b6​,b5​,b4​,b3​,b2​,b1​,b0​)

汉明码

校正子:s

校验关系式:

Image

若 s=0,认为无错(偶校验时);若 s=1,认为有错 。—— 检错

若要构造具有纠错能力的 (n, k) 码,则需增加校验元的数目。 s (即方程)的个数等于校验元位数 r。

对于 (n, k) 线性分组码,若希望用 r=n-k 个校验码元构造出 r 个校验

关系式来指出一位错码的 n 种可能的位置,则 r 必须满足:

2 r − 1 ≥ n   或   2 r ≥ k + r + 1 2^r-1\geq n \ 或\ 2^r \geq k + r + 1 2r−1≥n 或 2r≥k+r+1

-1 是因为还有一种可能性没有错

当“=”成立时,构造的线性分组码称为汉明码——能纠 1 位错码高效线性分组码

( n , k ) = ( 2 r − 1 , 2 r − 1 − r ) (n,k) = (2^r-1,2^r-1-r) (n,k)=(2r−1,2r−1−r)

信息元和校验 (parity check)元是平等的

汉明码特点

码参数:

式 2 r − 1 ≥ n 2^{r}-1 \geq n 2r−1≥n 中的等号成文. 即 ( n , k ) = ( 2 r − 1 , 2 r − 1 − r ) (n, k)=\left(2^{r}-1,2^{r}-1-r\right) \quad (n,k)=(2r−1,2r−1−r),$ r$ 是不小于 3 的任意正整数

最小码距:

d 0 = 3  (纠1或检2)  d_{0}=3 \text { (纠1或检2) } d0​=3 (纠1或检2) 

编码效率:

R c = k n = n − r n = 1 − r 2 r − 1 R_{c}=\frac{k}{n}=\frac{n-r}{n}=1-\frac{r}{2^{r}-1} Rc​=nk​=nn−r​=1−2r−1r​

当 n n n 很大时, r r r 相对很小, 码率 R c R_{\mathrm{c}} Rc​ 接近 1 。

可见,汉明码是能够纠正 1 位错码的最高效线性分组码。

线性分组码一般原理 H 校验矩阵

Image

若矩阵由一个小矩阵和满秩的单位阵组合而成,则称它为典型矩阵。

Image

H 的各行是线性无关的。否则得不到 r 个线性无关的校验关系式。

若一矩阵能写成典型阵形式 [ P I r ] [P\quad I_r] [PIr​],则其各行一定是线性无关的。

G 生成矩阵

将上面汉明码例子中的校验位计算公式: 改写成矩阵形式:

Image

式中, Q Q Q 为一个 k × r k\times r k×r 阶矩阵,它是 P P P 的转置,即

Q = P T Q=P^\text{T} Q=PT

可见,给定信息位后用信息位行向量乘矩阵 Q Q Q 就产生校验位。

将 Q Q Q 的左边加上一个 k × k k\times k k×k 阶单位方阵,就构成矩阵:

Image

Image

具有 [ I k   Q ] [I_k \ Q] [Ik​ Q] 形式的 G G G 称为典型生成矩阵。由典型得 G G G 到的码称为系统码

系统码:信息位保持不变,在其后加上校验位的纠错码

G 矩阵的性质

① G 矩阵是 k × n k\times n k×n 矩阵。

② G 的各行是线性无关的;它的各行本身就是一个码组。

∴ 若有 k 个线性无关的码组,则可用其组成生成矩阵 G,生成其余码组。

可以看出:任一码组 A 都是 G 的各行的线性组合。G 共有 k 行,可以组合出 2 k 2^k 2k 种不同的码组 A。

G 和 H 的关系

Image

非典型的 G 或 H 可以通过行线性变换变成典型的 G 、H ,仍然对应于该编码。可以由此进行 G 、H 互求。

校正子与错误图样

则发送码组和接收码组之差就是错误图样

设发送码组为一个 n n n 元行向量 A A A, 接收码组行向量 B B B

A = [ a n − 1 a n − 2 ⋯ a 1 a 0 ] B = [ b n − 1 b n − 2 ⋯ b 1 b 0 ] \boldsymbol{A}=\left[\begin{array}{lll} a_{n-1} a_{n-2} & \cdots & a_{1} a_{0} \end{array}\right] \quad \boldsymbol{B}=\left[b_{n-1} b_{n-2} \cdots b_{1} b_{0}\right] A=[an−1​an−2​​⋯​a1​a0​​]B=[bn−1​bn−2​⋯b1​b0​]

则发送码组和接收码组之差就是错误图样:

B − A = E = [ e n − 1 e n − 2 ⋯ e 1 e 0 ] \boldsymbol{B}-\boldsymbol{A}=\boldsymbol{E}=\left[\begin{array}{ll} e_{n-1} e_{n-2} & \cdots e_{1} e_{0} \end{array}\right] B−A=E=[en−1​en−2​​⋯e1​e0​​]

式中:

e i = { 0 ,  当  b i = a i  表示该接收码元无错  1 ,  当  b i ≠ a i  表示该接收码元有错  e_{i}=\left\{\begin{array}{lll} \mathbf{0}, & \text { 当 } b_{i}=a_{i} & \text { 表示该接收码元无错 } \\ \mathbf{1}, & \text { 当 } b_{i} \neq a_{i} & \text { 表示该接收码元有错 } \end{array}\right. ei​={0,1,​ 当 bi​=ai​ 当 bi​​=ai​​ 表示该接收码元无错  表示该接收码元有错 ​

S S S 称为校正子(伴随式)。

校正子 S S S 与错误图样 E 一一对应,而与发送码 A 无关。

(n,k) 线性分组码译码的三个步骤:

由接收码组 B 计算:$ S = H · B^T$由 S S S 找到错误图样 E;由公式 A = B – E A = B – E A=B–E 得到译码器译出的码组。

注:若 B 中错误超过纠错能力,则也可能 S = H ⋅ B T = 0 S = H · B^T=0 S=H⋅BT=0。此种错误不可检。

线性分组码的性质 ① 封闭性

一种线性码中任意两个许用码组 A 1 A_1 A1​ 和 A 2 A_2 A2​ 之和 ( A 1 + A 2 ) (A_1+A_2) (A1​+A2​) (按位模 2 加) 后的码组,仍为该码中的一个许用码组。

证明:若 A 1 A_1 A1​ 和 A 2 A_2 A2​ 是两个码组,则有 H ⋅ A 1 T = 0 H \cdot A_1^\text{T} = 0 H⋅A1T​=0 和 H ⋅ A 2 T = 0 H\cdot A_2^\text{T} = 0 H⋅A2T​=0,

将两式相加,有 H ⋅ A 1 T + H ⋅ A 2 T = H ⋅ ( A 1 + A 2 ) T = 0 H \cdot A_1^\text{T} + H\cdot A_2^\text{T} = H\cdot(A_1+A_2)^\text{T}= 0 H⋅A1T​+H⋅A2T​=H⋅(A1​+A2​)T=0(证毕)

② 最小距离

码的最小距离就是码的最小重量

证明:根据码的封闭性,可知两个码组 A 1 A_1 A1​ 和 A 2 A_2 A2​ 之间的距离(即对应位不同的数目)必定是另一个码组 A 1 + A 2 A_1 + A_2 A1​+A2​ 的重量(即“1”的数目)。

注:从生成矩阵 G 的最小行重量常常就能判断最小距离

第 3 讲 循环码

具体内容略

循环性:指任一码组循环移位(将最左端的一个码元移至右端, 或反之),仍为该码中的一个码组;

循环码:除了具有线性分组码的一般性质外,还具有循环性

循环冗余校验(CRC)码

计网重点

数据字: d ( x ) d(x) d(x)码字: c ( x ) c(x) c(x)生成多项式: g ( x ) g(x) g(x)校正子: s ( x ) s(x) s(x)差错: e ( x ) e(x) e(x)

接 受 的 码 字 g ( x ) = c ( x ) g ( x ) + e ( x ) g ( x ) \frac{接受的码字}{g(x)} = \frac{c(x)}{g(x)} + \frac{e(x)}{g(x)} g(x)接受的码字​=g(x)c(x)​+g(x)e(x)​

差错检验能力

单个位差错

如果 g ( x ) g(x) g(x) 项数至少为 2 且 x 0 x^0 x0 的系数为 1,那么所有的单个位差错都能捕捉到。

两个独立的单个位差错

如果生成多项式不能整除 x t + 1 0 ≤ t ≤ n − 1 x^t+1\quad 0\leq t\leq n-1 xt+10≤t≤n−1,那么所有的独立双差错都能被检测到

奇数个差错

包含因子 x + 1 x+1 x+1 的生成多项式能检测到所有奇数个差错

突发性差错 ( L L L:差错长度; r r r:校验位数)

所有 L ≤ r L\leq r L≤r 的突发性差错都能被检测到所有 L = r + 1 L=r+1 L=r+1 的突发性差错有 1 − ( 1 / 2 ) r − 1 1-(1/2)^{r-1} 1−(1/2)r−1 的概率会被检测到所有 L > r + 1 L>r+1 L>r+1 的突发性差错有 1 − ( 1 / 2 ) r 1-(1/2)^{r} 1−(1/2)r 的概率会被检测到

高性能生成多项式 g ( x ) g(x) g(x) 需要有以下特性:

至少有 2 项 x 0 x^0 x0 项的系数是 1它不能整除 x t + 1 x^t+1 xt+1,(t 是 2 到 n-1 之间)它有因子 x + 1 x+1 x+1 参考 作业

Image

(模二运算?)

Image



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有