循环码的信息组
n=7,k=4,r=7-4=3,
生成多项式g(x)二进制表示:1101,
信息位左移r位:0011000,
计算 0011000 除以 g(x)=1101 的余数,
余数为010,
所以,得到监督位为101,
将监督位加在信息位之后,得到编码之后的7位系统码字:0011101
8.4 循环码
本节知识要点:
循环码的特点 码多项式 循环码的生成多项式及其特征
循环码的生成矩阵 生成多项式和生成矩阵的设计 监督矩阵H
循环码的编码 循环码编码硬件实现 循环码的译码
自己看看参考一下。
表1(7,4)循环码
信息组
m3 m2 m1 m0
码字 C6 C5 C4 C3 C2 C1 C0
0 0 0 0
0 0 0 0 0 0 0
0 0 0 1
0 0 0 1 1 0 1
0 0 1 0
0 0 1 0 1 1 1
0 0 1 1
0 0 1 1 0 1 0
0 1 0 0
0 1 0 0 0 1 1
0 1 0 1
0 1 0 1 1 1 0
0 1 1 0
0 1 1 0 1 0 0
0 1 1 1
0 1 1 1 0 0 1
1 0 0 0
1 0 0 0 1 1 0
1 0 0 1
1 0 0 1 0 1 1
1 0 1 0
1 0 1 0 0 0 1
1 0 1 1
1 0 1 1 1 0 0
1 1 0 0
1 1 0 0 1 0 1
1 1 0 1
1 1 0 1 0 0 0
1 1 1 0
1 1 1 0 0 1 0
1 1 1 1
1 1 1 1 1 1 1
表1给出的是(7,4)循环码,由于循环码是线性分组码的一种,所以它也具有封闭性,任意两个码字相加之和必是另一码字。所以它的最小码距也就是非零码字的最小码重。在表1给出的(7,4)循环码中,dmin=3。而且根据定义,任一码字的每一循环移位的结果都是(7,4)循环码的一个码字。但某一码字的循环移位,并不能生成所有的码字。对于一个循环码来说,可以同时存在多个循环圈。
编码种类
十六进制数
自然二进制码
循环二进制码
十六进制数
自然二进制码
循环二进制码
0
0000
0000
8
1000
1100
1
0001
0001
9
1001
1101
2
0010
0011
A
1010
1111
3
0011
0010
B
1011
1110
4
0100
0110
C
1100
1010
5
0101
0111
D
1101
1011
6
0110
0101
E
1110
1001
7
0111
0100
F
1111
1000
循环码的基本特征
为了探讨循环码的特征,把码字C=(Cn-1 Cn-2…C1C0)用如下的码多项式C(x)来表示。
(1)特性一
在一个(n,k)循环码中,存在惟一的一个n-k次码多项式:
每一个码多项式C(x)都是g(x)的一个倍式,反之每个为g(x)倍式,且次数小于等于n-1的多项式必是一个码多项式。
由此可见,(n,k)循环码中的每一个码多项式C(x)均可由下式表示:
如果m(x)的系数(mk-1…m1m0)就是表示待编码的k位信息位,则C(x)就是对应于此信息组m(x)的码多项式。因此(n,k)循环码完全可由g(x)确定。g(x)也称为循环码(n,k)的生成多项式。g(x)的次数n-k等于码中一致校验位的位数。
(2)特性二
(n,k)循环码的生成多项式是xn+1的因子,即:
xn+1=g(x)h(x)
其中h(x)称为码的一致校验多项式,循环码的H矩阵也可以通过h(x)来生成。
(3)特性三
若g(x)是一个n-k次多项式,并且是xn+1的因子,则g(x)一定能生成一个(n,k)循环码。
表2.5给出了多项式x7+1中所含有的部分生成多项式和相应的循环码。
循环码的编码
(1)编码方法
根据上述的三个循环码特征,可以有三种(n,k)循环码的编码方法。
表2x7+1中的部分g (x)
循环码
码距
生成多项式g(x)
校验多项式h(x)
(7,6)
2
x+1
(x 3+x+1)(x 3+x 2+1)
(7,4)
3
x 3+x+1
(x 3+x 2+1)(x+1)
(7,3)
4
(x+1)(x 3+x+1)
x 3+x 2+1
(7,1)
7
(x 3+x 2+1)(x 3+x+1)
x+1
① 用生成多项式编码
a.选择一个能除尽xn+1的n-k=r次生成多项式g(x)。
b.由g(x)生成各码多项式。
c.找出与码多项式相对应的循环码字。
② 用生成矩阵编码
有两种求生成矩阵的方法:
a.因为g(x)是最低次数的码多项式。且xg(x),x2g(x),…,xk-1g(x)皆为码多项式。用它们构成G,再用行变换把G变换为典型生成矩阵,然后用其编码。
b.用g(x)除xn-k+i (i=0,1,…,k-1),得:
于是是g(x)的倍式,且次数小于等于n-1,所以为码多项式。用此方法可得到k个码多项式,可以直接构成典型生成矩阵,用以编码。
③ 用余式确定校验位
a.用乘信息多项式m(x)。
b.用g(x)除m(x)得到余式r(x)。
c.生成码多项式m(x)+r(x)。
第一种方法可用乘法电路来完成,第二种方法用生成矩阵G编码是一般线性分组编码的通用方法,利用这一种方法编循环码,体现不出循环码的优点,第三种方法可用除法电路来完成,应用比较广泛。
(2)除法电路编码器
以g(x)=x3+x+1生成(7,4)循环码的编码器为例,如图3所示。
图3所示的编码器主要由一除法电路构成。除法电路由移位寄存器和模2加法器组成。移位寄存器的个数与g(x)的次数相等。因为g(x)=x3+x+1,所以移位寄存器有三个。g(x)多项式中的系数是1还是0表示该移位寄存器的输入端反馈线的有无。图中x的一次项的系数为1,所以D1的输入端有反馈线及模2加法器。信息输入时,门打开,K1接通,信息送入除法器的同时,向外输出;信息位送完,门关闭,K2接通。除法电路中D2D1D0的内容,即所得余式,也就是校验位紧随信息位输出,完成一个码字的编码过程。为了便于理解,表4给出了这一编码的过程。这里设信息码元为1101,编码结果为1101001。
图3 (7,4)循环码编码器
表4 (7,4)编码器工作过程
输入m
移位寄存器 D0 D1 D2
输出
1
1 1 0
1
1
1 0 1
1
0
1 0 0
0
1
1 0 0
1
0
0 1 0
0
0
0 0 1
0
0
0 0 0
1
循环码的译码
令S(x)是接收多项式R(x)=rn-1xn-1+…+r1x+r0的伴随式,利用生成多项式g(x)除xS(x)所得的余式S(1)(x),就是R(x)循环移位一次R(1)(x)的伴随式。
因此,可用伴随式运算电路依次求出对应于各码位的伴随式。以g(x)=x3+x+1的(7,4)循环码为例,其伴随式运算电路由图2.19给出。
图5 伴随式运算电路
表6是错误图样和相应的伴随式。
表6 错误图样和伴随式
移存器状态 D0 D1 D2
错误图样 e0e1e2e3e4e5e6
伴随式 S0 S1 S2
1 0 0
1 0 0 0 0 0 0
1 0 0
0 1 0
0 1 0 0 0 0 0
0 1 0
0 0 1
0 0 1 0 0 0 0
0 0 1
1 1 0
0 0 0 1 0 0 0
1 1 0
0 1 1
0 0 0 0 1 0 0
0 1 1
1 1 1
0 0 0 0 0 1 0
1 1 1
1 0 1
0 0 0 0 0 0 1
1 0 1
可以看出如果我们在伴随式运算电路中赋予一个与e0出错项对应的伴随式S=001,随着伴随式电路的运算,移存器中的内容就会是依次是e1,e2,…,e6的伴随式。
定理表明如果e(x)的伴随式是S(x),则xe(x)的伴随式t(x)=S(1)(x)。它相当于S(x)在伴随式运算电路里的循环移一位。当差错码元移到最高位时,就和最高位出错的伴随式相同,这就大大简化了译码器的结构。g(x)=x3+x+1的(7,4)循环码的译码电路由图7给出。
图7 (7,4)循环码译码器
缩短循环码
循环码的生成多项式g(x)应该是xn+1的一个(n-k) 次因子,但有时在给定码长n时,xn+1的因子不能满足设计者的需要,为了增加选择机会,往往采用缩短循环码。
在(n,k)循环码的2k个码字中选择前i位信息位为0的码字,共有2k-i个,组成一个新的码字集。这样就构成了一个(n-i,k-i)缩短循环码。
在缩短循环码中,校验码原位数不变,缩短的仅仅是信息位,因此(n-i,k-i)缩短循环码的纠检错的能力不低于(n,k)码的纠检错能力。但码字间已失去了循环特征。
在数据通信中广泛采用的循环冗余检验码(CRC,Cyclic Redundancy Checks),是一种循环码,常利用缩短循环码,如CRC-12、CRC-16、CRC-CCITT码,表8给出了它们的生成多项式。
表8 常用CRC码
CRC码
生成多项式
CRC-12
x12+x11+x3+x2+x+1
CRC-16
x16+x15+x2+1
CRC-CCITT
x16+x12+x5+1
BCH码
BCH码是循环码的一个重要的子类,它是一种能纠正多个随机错误的应用最为广泛和有效的差错控制码。
定义:对于任意正整数m(m≥3)和t(t<2m-1=一定存在一个具有下列参数的二进制BCH码:
码长n=2m-1
校验位数目n-k≤mt
最小距离dmin≥2t+1
BCH码可以分为两类,即本原BCH码和非本原BCH码。本原BCH码码长n=2m-1,它的生成多项式g(x)中含有最高次数为m的本原多项式,本原多项式是一个既约多项式,它能除尽xn+1的最小正整数n,满足n=2m-1。具有循环码特性,纠单个随机错误的汉明码,是可纠单个随机错误的本原BCH码。而非本原BCH码中的生成多项式g(x)中不含本原多项式,且码长n是2m-1的一个因子,著名的戈雷(Golay)码,就属于非本原BCH码。
表9给出了n≤31的本原BCH码的参数和生成多项式。
表9 本原BCH码生成多项式
n k t
gt(x)
7 4 1
g1(x)=13
1 3
g1(x)(15)=177
15 11 1
g1(x)=23
7 2
g1(x)(37)=721
5 3
g2(x)(7)=2467
1 7
g3(x)(31)=77777
31 26 1
g1(x)=45
21 2
g1(x)(75)=3551
16 3
g2(x)(67)=10765 7
11 5
g3(x)(57)=54233 25
n k t
gt(x)
6 7
g5(x)(73)=31336 5047
1 15
g7(x)(51)=17777 77777 7
表中的每一位数字为八进制数,代表g(x)多项式中3个二进制系数。如n=31,k=26,t=1的BCH码的生成多项式g1(x)=45。45表示100101,所以,该BCH码的g(x)=x5+x2+1。有了生成多项式表就可很方便地构造所需的BCH码。
里德—所罗门(Read-Solomon)码
除了二进制码之外,还有非二进制码。如果P是一素数,q是p的任意次幂,存在着由伽罗华域GF(q)产生的码。这些码称为q进制码。q进制码的编码和译码都与二进制码相似。
对任意选择的正整数s和t,存在长度为n=qs-1的q进制BCH码。它能纠正t个错误,而只用2St个校验位。S=1时的q进制BCH码是q进制BCH码中的一类最重要的子码。这类子码称为里德——所罗门(Read-Solomon)码,简称R-S码。纠t位错误,系数为GF(q)中元素的R-S码具有下列参数:
码长:n=q-1
校验位数目:n-k=2t
最小距离:dmin=2t+1
R-S码对纠多重突发差错非常有效。
R-S码把L位(例如8位)的一个字节,作为一个编码符号。如果我们要设计一个纠t=5位错误的,由8位字节组成的R-S码,码长为q-1=255字节(这里,p=2,q=28)。那么根据R-S码的参数,校验位的数目为r=n-k=2t=10字节(80位),其余k=n-r=245字节(1960位)是信息位。
信鸽足环代码是什么意思?
赛鸽足环由全国性的信鸽协会统一制作并发放。印有国家名称,我国用“中国”两字,国外多用英文字母或缩写,如比利时用"BELGE”,荷兰用“NL”,美国用“AU”,德国用“DV”,日本用“Japan”等。一股是每年发放一次,每年的12月30日发放下一年的足环,以确保当年育出的鸽子套上本年度的足环。发放过...
赛鸽各地区足环号
足环的编码一般是六位数 +六位数组成。比如201201-130236 。2012表示鸽子出生时间01表示鸽子所属省市(01表北京),130236是鸽子的编号,和人的身份证一样。
鸽子环号查询鸽子信息
鸽子环号查询鸽子信息方法:首先打开浏览器,输入“信鸽脚环号网”点击搜索,此时界面会跳转至信鸽足环号网主页,然后点击进入“信鸽足环号查询系统",进入主页面后输入正确的鸽子脚环号点击搜索,即可查询到鸽子的基本信息。在我国,没有鸽会颁发的足环,是不允许参加鸽会举办的各项比赛的,同时出售或交...
通信原理板块——线性分组码之循环码
循环码的起源与特性 循环码,以其独特的循环性而闻名,它是线性分组码的一种特殊形式。一个显著的特性是,无论你如何将码组中的最后一个码元移到最左边或第一个码元移到最右边,它始终会保持在码组内,这就是循环码的核心定义。举例来说,长度为n的循环码组,其多项式表达具有神奇的结构,无...
信鸽脚环的每个数字是什么意思?
信鸽脚环上的数字,是类似身份证号码的足环代码。根据《中国信鸽足环管理规定》第四条 信鸽足环配有印制与其号码相一致的足环证。足环证是信鸽的所有权凭证。第九条 信鸽足环信息须包括以下内容:(一)中国的英文缩写CHN(3位英文字母);(二)发行年的年份(4位阿拉伯数字);(三)省级协会代码(...
怎样才能查到自己的信鸽足环号?
网址是信鸽足环号网。具体分以下三步:第一步、百度搜索https:\/\/zuhuanhao.com,并点击网页按钮进入。第二步、在信鸽足环号查询首页的输入框中,输入需要查询的信鸽足环号码,然后点击搜索按钮进入。(如下图所示)第三步、进入到信鸽足环号鸽子的相关信息页面,查看显示结果。(如下图所示)...
鸽子脚环号查询系统 鸽子足环号查询怎么查
鸽子脚环号查询系统是一种工具,用于识别和追踪信鸽的身份。要查询鸽子的编码,如1860150,首先需要知道这是北京市信鸽协会的足环代码,然后通过逐级查找相关鸽会的足环分配记录来确定其所属。你也可以通过访问官方网站上的链接来进行查询,获取更详细的信息。中国信鸽足环编码系统包含全国各个地区的对应信息...
信鸽足环开头的英文字母代表什么意思?
信鸽足环的编号体系是国际通用的,每个国家的足环号码开头都遵循一定的编码规则。足环号码的前几个大写字母代表鸽子所在的国家,接下来的数字表示鸽子的出生年份,再后面的数字代表城市或地区,最后几位则是足环的具体编号。在中国,信鸽足环的编号格式标准如下:国别年份-城市-环号,例如:CHN2014-01-...
怎样根据足环号查找信鸽的归属地
查找信鸽的归属地可以使用搜鸽天下网站来实现,在这个网站输入足环的号码就能找到信鸽的相关信息包括归属地,具体操作步骤如下:1、双击桌面的浏览器图标。2、在搜索栏输入搜鸽天下。3、点击进行搜索。4、在搜索栏输入信鸽足环的号码。5、此时下面就会显示信鸽的所属地了。
鸽子足环号码怎么查询?
登陆中国信鸽信息网,将信鸽足部的环号输入即可查询。以下将是对信鸽足部环号的各段符号的意义详解。1、信鸽足环号首几个大写英文字母是代表其所在国家,而后的4位数字代表了信鸽出生的年份,紧接着的2位数字就代表了所在城市,最后的六位代表着足环的号码;2、国内的信鸽鸽环号的标准标注格式为:国别...
进子楼莲: 循环码:循环码是一种无权码,循环码编排的特点是相邻两个数码之间符合卡诺图中的邻接条件,即相邻两个数码之间只有一位码元不同,码元就是组成数码的单元. 二进制码:二进制代码,就是用0和1表示,满2进1的代码语言. 特点: 1....
东光县18039008445: 循环码的排列规则 - ?
进子楼莲: 拜托...Gray码就是循环码啊.......一般是这样子排的 000 001 011 010 110 111 101 100排成对称的,画卡诺图的时候用到......
东光县18039008445: 通信原理 (7,4)循环码生成多项式后的系统码问题.. - ?
进子楼莲: n=7,k=4,r=7-4=3, 生成多项式g(x)二进制表示:1101, 信息位左移r位:0011000, 计算 0011000 除以 g(x)=1101 的余数, 余数为010, 所以,得到监督位为101, 将监督位加在信息位之后,得到编码之后的7位系统码字:0011101
东光县18039008445: 循环码的生成矩阵怎么选线性无关码组 - ?
进子楼莲: 一般情况下,多项式p^n+1可因式分解为p^n+1=g(p)h(p) 式中g(p)代表(n,k)循环码的生成多项式,h(p)代表一致校验多项式,其阶次为k.
东光县18039008445: 什么是BCH码? - ?
进子楼莲: BCH码是循环码的一个重要子类,它具有纠多个错误的能力,BCH码有严密的代数理论,是目前研究最透彻的一类码.它的生成多项式与最小码距之间有密切的关系,人们可以根据所要求的纠错能力t很容易构造出BCH码,它们的译码器也容易实现,是线性分组码中应用最普遍的一类码.
东光县18039008445: PDF417译码,RS纠错码,求纠错码生成多项式零点问题! - ?
进子楼莲: 纠错码能够检错或纠错,主要是靠码字之间有较大的差别.这可用码字之间的汉明距离d(x,y)来衡量.它的定义为码字x与y之间的对应位取不同值的码元个数.一种纠错码的最小距离d定义为该种码中任两个码字之间的距离的最小值.一种码要能...
东光县18039008445: 对循环码的生成多项式g(x)及生成矩阵 G(x),下列哪种说法是错误的...?
进子楼莲: 息组:M M*g(x)匿名 ??<span class="tm">2006-6-17</span> </p> <div> <div class="ra ft"><div class="bt bg1"><img alt="相关内容" class="m" height="16" src="/static/img/ico3.gif" width="16"/>相关内容</div></div> <p class="ft">