通信原理循环码

news2024/11/21 0:24:06

目录

码多项式

码多项式的按模运算

循环码的码多项式

循环码的生成矩阵

如何寻求任一\large (n,k)循环码循环码的生成多项式​\large g(x)


码多项式

一个长度为\large n的码组\large A=(a_{n-1},a_{n-2},...,a_0)可表示成如下多项式形式:

\large A(x)=a_{n-1} x^{n-1}+a_{n-2} x^{n-2}+\cdots+a_{1} x+a_{0}

多项式的系数就是码组中的各码元,\large x仅是码元位置标记 。

n=7 时:\large A(x)=a_{6} x^{6}+a_{5} x^{5}+a_{4} x^{4}+a_{3} x^{3}+a_{2} x^{2}+a_{1} x+a_{0}

例:码字(1100101)的多项式可表示为:

\large \begin{aligned} A(x) & =1 \cdot x^{6}+1 \cdot x^{5}+0 \cdot x^{4}+0 \cdot x^{3}+1 \cdot x^{2}+0 \cdot x+1 \\ & =x^{6}+x^{5}+x^{2}+1 \end{aligned}

码多项式的按模运算

一般来说,若一个整数\large m可以表示为

\large \frac{m}{n}=Q+\frac{p}{n}, \quad p<n\large Q为整数

则在模\large n运算下,有

\large m \equiv p\quad mod\quad n

即在模\large n运算下,一个整数\large m等于它被\large n除得到的余数。

对于任意多项式\large F(x)被一\large n次多项式\large N(x)除,得到商式\large Q(x)和一个小于\large n次的余式\large R(x),即

\large \frac{F(x)}{N(x)}=Q(x)+\frac{R(x)}{N(x)} \text { or } F(x)=N(x) Q(x)+R(x)

\large F(x)\equiv R(x) \quad mod \quad N(x)

循环码的码多项式

在循环码中,若\large A(x)是一个长为\large n的许用码组,则\large x^i\cdot A(x)在按模\large x^n+1运算下,也是该编码中的一个需用码组,即若

\large x^{i} \cdot A(x) \equiv A^{\prime}(x) (mod \left.\left(x^{n}+1\right)\right)

\large A^{\prime}(x)也是该编码中的一个需用码组,这是因为\large A^{\prime}(x)正是\large A(x)代表码组向左循环移位\large i次的结果。

循环码的生成矩阵

 在\large (n,k)循环码的\large 2^k个码组中挑出一个前面\large (k-1)位都是“0”的码组用\large g(x)表示:

根据循环性,\large g(x)\large xg(x)\large \large x^2g(x),...,\large x^{k-1}g(x)都是该循环码组的码组,且都线性无关。

 因此,可以用这\large k个线性无关的码组可构成该循环码的生成矩阵\large G,即

\large G\left ( x \right ) =\left[\begin{array}{c} x^{k-1} g(x) \\ x^{k-2} g(x) \\ \vdots \\ x g(x) \\ g(x) \end{array}\right]

\large g(x)是循环码的核心。对于给定的\large k位信息码,由\large g(x)构造出\large G(x),从而产生\large (n,k)循环码。

 \large g(x)称为循环码的生成多项式,一旦确定了\large g(x),则整个\large (n,k)循环码就被确定了。\large g(x)\large (n,k)循环码中唯一的常数项不为0的\large (n-k)次多项式。

例:

已知一种\large (7,3)循环码的全部码组为:

 \large \begin{array}{llll} 0000000 & 0101110 & 1001011 & 1100101 \\ 0010111 & 0111001 & 1011100 & 1110010 \end{array}

试求:(1) 该循环码的生成多项式\large g(x)

           (2)生成矩阵\large G(x)

 码组是:0010111,码组中唯一一个4次多项式\large g(x)=x^{4}+x^{2}+x+1

\large G(x)=\begin{bmatrix} x^2g(x)\\ xg(x)\\ g(x) \end{bmatrix}= \left[\begin{array}{l} x^{6}+x^{4}+x^{3}+x^{2} \\ x^{5}+x^{3}+x^{2}+x \\ x^{4}+x^{2}+x+1 \end{array}\right]              或者   ​​​​​​​\large \boldsymbol{G}=\left[\begin{array}{c} \mathbf{1 0 1 1 1 0 0} \\ \mathbf{0 1 0 1 1 1 0} \\ \mathbf{0 0 1 0 1 1 1} \end{array}\right]   

         ​​​ 

 \large \begin{aligned} A(x)&=[a_6a_5a_4]G(x)=[a_6a_5a_4] \left[ \begin{array}{c} x^2g(x)\\ xg(x)\\ g(x) \end{array} \right]\\ & =a_{6} x^{2} g(x)+a_{5} x g(x)+a_{4} g(x) \\ & =\left(a_{6} x^{2}+a_{5} x+a_{4}\right) g(x) \end{aligned}

所有码多项式\large A(x)都可被\large g(x)整除,而且任意一个次数不大于\large (k-1)的多项式乘\large g(x)都是码多项式。

换言之,任一循环码多项式\large A(x)都是的倍式。

如何寻求任一\large (n,k)循环码循环码的生成多项式\large g(x)

\large \because任一循环码多项式\large A(x)都是\large g(x)的倍式。

\large \therefore\large g(x)本身也是一个码组,即有\large A^\prime(x)=g(x)

\large \because码组\large A^\prime(x)是一个\large (n-k)次多项式,故\large x^k\large A^\prime(x)是一个\large n次多项式。\large x^k\large A^\prime(x)在模\large x^n+1

运算下也是一个码组,故可以写作

\large \frac{x^{k} A^{\prime}(x)}{x^{n}+\mathbf{1}}=Q(x)+\frac{A(x)}{x^{n}+\mathbf{1}}

上式左端分子和分母都是n次多项式,故商式\large Q(x) = 1上式可化成​​​​​​​

x^{k} A^{\prime}(x)=\left(x^{n}+\mathbf{1}\right)+A(x)

 将\large A^{\prime}(x)=g(x)\large A(x)=h(x)\cdot g(x)代入,化简后可以得到

 \large x^{n}+1=g(x)\left[x^{k}-h(x)\right]

这表明:循环码的生成多项式\large g(x)应该是\large (x^n+1)的一个\large (n-k)次因子。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/106292.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Activiti任务的处理以及进阶使用

1.什么是流程实例 流程实例&#xff08;ProcessInstance&#xff09;代表流程定义的执行实例 一个流程实例包括所有的运行节点Task&#xff0c;所以我们一般使用来了解当前流程的进度信息 taskService.createTaskQuery().processDefinitionKey(key)例如&#xff1a;用户或者程…

力扣11.盛最多水的容器(双指针解法)

问题描述: 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明&#xff1a;你不能倾斜容…

Mini MP3 Player播放器简介与STC12例程

文章目录1、DFRobot arduino DFPlayer官方资料1-1、简介2-2、 基本功能详述1-3、 用途1-4、 引脚说明1-5、工作模式1-5-1、 串口工作模式1-5-2、 ADC按键工作模式1-5-3、 普通按键工作模式2、串口模式电路搭建与例程参考文献1、DFRobot arduino DFPlayer官方资料 1-1、简介 Th…

KingbaseES运维案例之---服务进程(backend process)终止

​ 案例说明&#xff1a; 如下图所示&#xff1a;KingbaseES服务进程结构 KingbaseES使用客户端/服务器的模型。 对于每个客户端的连接&#xff0c;KingbaseES主进程接收到客户端连接后&#xff0c;会为其创建一个新的服务进程。 KingbaseES 用服务进程来处理连接到数据库服务的…

Java Swing JTextField:单行文本框组件

Swing 中使用 JTextField 类实现一个单行文本框&#xff0c;它允许用户输入单行的文本信息。该类的常用构造方法如下。 JTextField()&#xff1a;创建一个默认的文本框。JTextField(String text)&#xff1a;创建一个指定初始化文本信息的文本框。JTextField(int columns)&…

Nacos学习笔记 (4)Nacos整合SpringBoot流程

前提&#xff0c;先下载Nacos并启动 Nacos Server。 1. Nacos 融合 Spring Boot 为注册配置中心 实现&#xff1a; 通过 Nacos Server 和 nacos-config-spring-boot-starter 实现配置的动态变更&#xff1b;通过 Nacos Server 和 nacos-discovery-spring-boot-starter 实现服…

OpenAI 3D 模型生成器Point-E极速体验

OpenAI 3D 模型生成器Point-E极速体验 3090显卡&#xff0c;极速体验三维模型生成&#xff0c;体验地址&#xff1a;Gradio 文本生成图像的 AI 最近已经火到了圈外&#xff0c;不论是 DALL-E 2、DeepAI 还是 Stable Diffusion&#xff0c;人人都在调用 AI 算法搞绘画艺术&…

Unreal Engine工程项目目录及对应作用

目录 .vs Binaries&#xff1a;编译文件 Config&#xff1a;配置文件 Content&#xff1a;资产文件 DerivedDataCache&#xff1a;UE针对平台特化的资源版本 Intermediate&#xff1a;中间文件 Saved&#xff1a;自动保存的内容 Source&#xff1a;源&#xff08;代码&…

ADI Blackfin DSP处理器-BF533的开发详解66:MP3解码(含源码)

硬件准备 ADSP-EDU-BF533&#xff1a;BF533开发板 AD-HP530ICE&#xff1a;ADI DSP仿真器 软件准备 Visual DSP软件 硬件链接 代码实现功能 代码实现了读取工程目录下的一个 MP3 文件&#xff0c;对文件进行解码后&#xff0c;将生成的数据以 PCM 文件的形式保存在工程目录…

关于数组的一些题---获取数组对象的各种数据

关于数组的一些题—获取数组对象的各种数据 题目1:将数组对象中的属性值提出来生成新的对象 var arr [{label:男&#xff0c;value: 1}, {label:女&#xff0c;value: 0}]function f(arr) {// 写代码&#xff0c;得到 } var obj f(arr); console.log(obj) // obj {1: 男&am…

1 | Trerraform的使用及创建CVM

目录1 Trerraform简介2 Trerraform的安装2.1 参考地址2.2 安装方式3 使用Terraform管理腾讯云3.1 创建帐号并授权3.2 添加Terraform的环境变量3.3 配置provider文件3.4 terraform init3.5 terraform init -upgrade3.6 terraform plan3.7 terraform apply3.8 terraform destroy4…

5分钟让你做出HR一眼看中的简历,方法简单易操作

写简历&#xff0c;真的是个“力气活”。 但凡求职经验丰富的朋友们&#xff0c;可以仔细想一想&#xff0c;之前我们面试求职的过程中&#xff0c;哪次不是通宵达旦在修改和“润色”简历中&#xff0c;在写简历里费劲功夫&#xff0c;目的还是为了引起HR的关注&#xff0c;从…

DASOU知识星球学的知识图谱

1.经典课程 1.经典课程 东南大学研究生课程: 东南大学研究生课程&#xff1a; https://github.com/npubird/KnowledgeGraphCourse 书籍推荐: 知识图谱的书籍的话可以看下作者是王昊奋【知识图谱:方法、实践与应用】那本书&#xff0c;算是近些年出版的里面质量不错的了&…

解决问题:VMware Tools 启动脚本未能在虚拟机中成功运行。

目录 问题 解决 方法一、重装 open-vm-tools-desktop 方法二、重装 vmware-tools 问题 Ubuntu 虚拟机开机时提示报错&#xff0c;具体信息如下&#xff1a; VMware Tools 启动脚本未能在虚拟机中成功运行。如果您在此虚拟机中配置了自定义启动脚本&#xff0c;请确保该脚本…

USB TO SPI(上海同旺电子)调试器调试TC77温度传感器(三线SPI)

所需设备&#xff1a; 1、USB TO SPI(上海同旺电子)&#xff1b; 2、TC77 带 SPI 接口的温度传感器; 特别注意TC77温度传感器(三线制SPI) 特性 • 5引脚 SOT-23A 和8引脚SOIC 封装的数字温度传感器 • 以13 位数字字格式输出温度值 • SPI 和 MICROWIRE™ 兼容接口 • 固态…

IB科学课程的Group 4 project是什么?

。IBDP第4科学科目组中的科学类课程是必选课程。中国IB学生常选物理、化学、生物、计算机科学这类IB科学课程。这些IBDP科学课程都有一个共同的课程项目&#xff0c;那就是——The group 4 project&#xff01; 什么是The group 4 project&#xff1f; The group 4 project是一…

图表控件TeeChart for .NET系列教程四:轴控制(中)

TeeChart for .NET是优秀的工业4.0 WinForm图表控件&#xff0c;官方独家授权汉化&#xff0c;集功能全面、性能稳定、价格实惠等优势于一体。TeeChart for .NET 中文版还可让您在使用和学习上没有任何语言障碍&#xff0c;至少可以节省30%的开发时间。 TeeChart for .NET最新…

【Python黑帽子】——简易的ZIP文件密码破解器

作者名&#xff1a;Demo不是emo 主页面链接&#xff1a;主页传送门 创作初心&#xff1a;舞台再大&#xff0c;你不上台&#xff0c;永远是观众&#xff0c;没人会关心你努不努力&#xff0c;摔的痛不痛&#xff0c;他们只会看你最后站在什么位置&#xff0c;然后羡慕或鄙夷座…

[翻译+笔记]生成对抗网络: 从GAN到WGAN

最近读了一篇社会力模型的论文, 里面用到了GAN, 发现自己不是很懂. 想翻译一下一个大神的博客, 做一下笔记. 并不是全文翻译, 只翻译一部分. 原文地址: from GAN to WGAN 1. K-L和J-S散度 在介绍GAN之前, 首先复习一下衡量两个概率分布相似度的两种指标. (1) K-L散度: KL散度…

java Lambda表达式 省略模式写法

我们先来看一个普通的Lambda表达式 我们创建一个包 下面创建一个接口 testInterface 参考代码如下 public interface testInterface {int eat(int max,int min); }text 测试类 参考代码如下 public class text {public static void main(String args[]) {newTestInterface(…