【通信原理】信道编码——线性分组码

这篇具有很好参考价值的文章主要介绍了【通信原理】信道编码——线性分组码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

线性分组码

线性分组码,有两个特点,一个是线性,一个是分组。线性是指校验位和数据位成线性关系,可以通过线性方程直接求得。分组是指校验位由当前码组的数据位唯一确定。比如(n,k)线性分组码,指码长为n,数据位为k的编码方案。汉明码是线性分组码中的一种。

  1. 发送方生成码组
  2. 接收方破译码组
  3. 生成矩阵和校验矩阵
  • 码组形式:k bit数据位+r bit校验位,这样的码被称为系统码。
  • 重点在第三部分生成矩阵和校验矩阵。
  • 我这里说的数据位,也被称为信息位。

(1)发送方生成码组

n=k+r。数据位为k位,冗余的校验位为r位。满足 2 r ≥ k + r + 1 \Large 2^r \ge k+r+1 2rk+r+1

用k bit数据组成的行向量矩阵m乘以生成矩阵G,即得码组c。 c 1 × n = m 1 × k × G k × n c_{1\times n} = m_{1\times k}\times G_{k\times n} c1×n=m1×k×Gk×n

(2)接收方破译码组

将接受到的码组c和校验矩阵H相乘,如果得到0向量,则说明收到的是正确的。

或者,将所有错误情况列举出来查表。

(3)生成矩阵和校验矩阵

一般教科书里面会先讲校验矩阵,再讲生成矩阵,我也准备这样写,但为什么这样写呢?

这要从信道编码出现的原因讲起。信源编码是降冗余,是想要传输速率一定的情况下,发出去更多的符号;信道编码是加冗余,是想要在信道干扰条件一定的情况下,送出去更多的可靠的符号。比如信息位是4位,添加了3位的冗余,那么携带信息的码字有16种,而7比特总共有128种码字。这多出来的的就是112种,就是被禁用的。

而在这128种情况里面,一定有和16种携带信息的向量正交的。我们选出三种线性无关的禁用码字,用来当作校验矩阵。从定义都可以知道,校验矩阵和许用码字的矩阵相乘的结果是一个零向量。那么我们就可以用这个来进行校验。

由线性代数的知识,我们对校验矩阵进行行初等变换,其校验结果是不变的。那么我们就可以把校验矩阵变换成特殊形式,然后就可以轻松降校验矩阵转换为生成矩阵。用生成矩阵生成的码字就可以用校验矩阵进行校验了。

上面的理论显然是非常抽象且枯燥的,现在我举一个例子,(7,4)汉明码。

  1. 校验矩阵:它的特点是,从左到右分别是1~7的二进制表示。

    H = [ 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 ] H = \begin{bmatrix} 0 & 0 & 0 & 1 & 1 & 1 & 1 \\ 0 & 1 & 1 & 0 & 0 & 1 & 1 \\ 1 & 0 & 1 & 0 & 1 & 0 & 1 \end{bmatrix} H=001010011100101110111

  2. 对上述校验矩阵进行行初等变换,将靠右的部分变为单位阵。

    H = [ 0 1 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 1 0 0 1 ] = [ P , I r × r ] H = \begin{bmatrix} 0 & 1 & 1 & 1 & 1 & 0 & 0 \\ 1 & 0 & 1 & 1 & 0 & 1 & 0 \\ 1 & 1 & 0 & 1 & 0 & 0 & 1\end{bmatrix} = [P,I_{r\times r}] H=011101110111100010001=[P,Ir×r]

  3. 然后得到生成矩阵,生成系统码形式的汉明码的生成矩阵

G = [ I k × k ; P T ] = [ 1 0 0 0 0 1 1 0 1 0 0 1 0 1 0 0 1 0 1 1 0 0 0 0 1 1 1 1 ] G = [I_{k\times k};P^T] = \begin{bmatrix} 1 & 0 & 0 & 0 & 0 & 1 & 1 \\ 0 & 1 & 0 & 0 & 1 & 0 & 1 \\ 0 & 0 & 1 & 0 & 1 & 1 & 0 \\ 0 & 0 & 0 & 1 & 1 & 1 & 1 \\ \end{bmatrix} G=[Ik×k;PT]=1000010000100001011110111101

  1. 生成汉明码: m = [ 1 , 0 , 1 , 0 ] ; c = m G = [ 1 , 0 , 1 , 0 , 1 , 0 , 1 ] m = [1,0,1,0] ;c = mG = [1,0,1,0,1,0,1] m=[1,0,1,0];c=mG=[1,0,1,0,1,0,1]
  2. 校验:$s = Hc^T = [0;0;0] $

s被称为伴随式。

变换前后的最小汉明距离不变。

贴一段我用来测试上述过程的代码。文章来源地址https://www.toymoban.com/news/detail-478994.html

import numpy as np
import itertools as it

G = np.array([[1,0,0,0,0,1,1],
              [0,1,0,0,1,0,1],
              [0,0,1,0,1,1,0],
              [0,0,0,1,1,1,1]])
H = np.array([[0,1,1,1,1,0,0],
              [1,0,1,1,0,1,0],
              [1,1,0,1,0,0,1]])

s = list(it.product(range(2), repeat=4))

M = np.array(s)

C = np.matmul(M,G)%2

D = []

for c in C:
    tmp = []
    for other_c in C:
        if (c!=other_c).any():
            tmp.append(sum((c+other_c)%2))
    D.append(np.min(tmp))
print("最小汉明距离:",np.min(D))

到了这里,关于【通信原理】信道编码——线性分组码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • P02114065刘浩宇,P02114070程韩奇,P02114066吴其,P02114068张璐——深入理解线性分组码的生成矩阵和校验矩阵定义及其关系

    目录 前言 线性分组码 定义 性质 生成矩阵和校验矩阵 生成矩阵 生成矩阵的定义 生成矩阵的特性 校验矩阵 校验矩阵的定义 校验矩阵的特性 生成矩阵和校验矩阵的关系 由于移动通信存在干扰和衰落,在信号传输过程中将出现差错,故对数字信号必须采用纠、检错技术,即纠

    2024年02月03日
    浏览(40)
  • 信道编码---RS编码与译码原理

    本文介绍了RS编码以及译码的原理。 本文的内容基本上都来自刘梦欣的《基于FPGA的RS编译码研究与设计》,大家可以通过知网找到这篇文章,链接在下面。对RS码的原理讲解非常清楚,如果要看的话可以结合第2和第3部分一起看更好懂。我的整理也是比较粗略,因此没看懂的话

    2024年02月11日
    浏览(44)
  • 通信原理 | 信道模型 | 概率密度和概率分布

    随机变量 or 非随机变量? 随机变量可拆解为:“随机”+“变量” 变量,是指其结果是存在变数的,而非是固定不变的 随机,是指其结果是无法被100%完全确定的! 比如投硬币的结果就是随机变量。非随机变量,就是对于给定的一个值,对应有一个确定的结果 如果随机变量

    2024年02月08日
    浏览(42)
  • 《移动通信原理与应用》——信道均衡技术仿真

    目录 一、自适应均衡器的仿真流程图: 二、仿真结果:   三、MATLAB仿真代码: 结果分析: (1)从仿真结果图可以看出,未经过均衡器均衡的码元序列随着SNR的增大,曲线走势情况平缓,变化不大,这表明误码率变化平缓,减小度量最小。总体来看,误码率是曲线图中三者

    2024年01月23日
    浏览(45)
  • 通信原理——信号带宽、信道带宽、奈奎斯特带宽

    1、速率 为码元传输速率,又称传码率、符号速率、波特率,定义为每秒传输码元的速度,符号为波特(Baud),设每个码元的长度为(s),则有(Baud) 为信息传输速率,又称传信率、比特率,定义为每秒传输比特的速度,符号为b/s,bps。 码元速率和信息速率的关系为,M表示M进

    2023年04月08日
    浏览(36)
  • 通信原理板块——幅度调制(线性调制)原理(AM、DSB、SSB、VSB)

    微信公众号上线,搜索公众号 小灰灰的FPGA ,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 1、调制的定义、目的及分类 (1)调制——将信号形式转换成

    2024年02月04日
    浏览(40)
  • 【通信原理实验】基于A律13折线的PCM编码与解码(附完整代码)

    一、实验原理 PCM,Pulse Code Modulation(脉冲编码调制),即把从模拟信号 抽样、量化、编码 成为二迚制符号的基本过程, 称为脉冲编码调制。 模拟信号的数字化过程: 1、抽样 – 时间离散 :时间连续的信号 - 时间离散、幅度连续的信号; • 抽样定理(香农采样定律、奈奎

    2024年02月08日
    浏览(49)
  • 商用无线通信:信道带宽

    GSM: 200 kHz WCDMA: 5 MHz cdma2000 1X: 1.25 MHz TD-SCDMA: 1.6 MHz LTE: 1.4 MHz /3 MHz /5 MHz /10 MHz / 15 MHz /20 MHz 5G(Rangel 频段):5 MHz/15 MHz/ 20 MHz/30 MHz/40 MHz/50 MHz/60 MHz/ 70 MHz/80 MHz/90 MHz/100 MHz 5G (Range2 Hif): 50 MHz/100 MHz/ 200 MHz/400 MHz Wi-Fi: 22 MHz/20 MHz/40 MHz/80 MHz/ 80 MHz +80 MHz /160 MHz ZigBee: 2 MHz NB-IoT: 200 kHz

    2024年04月17日
    浏览(46)
  • 【计算机网络 02】物理层基本概念 传输媒体 传输方式 编码与调制 信道极限容量 章节小结

    2.1 物理层基本概念 2.2 物理层下的传输媒体 传输媒体 也称为 传输介质或传输媒介 ,他就是数据传输系统中在发送器和接收器之间的物理通路 传输媒体不属于计算机网络体系结构的任何一层 如果非要将它添加到体系结构中,那只能将其放置到物理层之下 2.3 传输方式 2.4 编码

    2024年02月16日
    浏览(55)
  • 物理层章节笔记-基本概念-传输媒体-传输方式-编码与调制-信道的极限容量--计算机网络

            1.物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输比特流。         2.物理层为数据链路层屏蔽了各种传输媒体的差异,使数据链路层只需要考虑如何完成本层的协议和服务,而不必考虑网络具体的传输媒体是什么。         计算机网络中的物理层,就

    2024年01月24日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包