BCH码 百科内容来自于: 百度百科

线性与否

分组码就其构成方式可分为线性分组码与非线性分组码。
线性分组码是指[ n, M]分组码中的 M个码字之间具有一定的线性约束关系,即这些码字总体构成了 n维线性空间的一个 κ维子空间。称此 κ维子空间为( nκ)线性分组码, n为码长, κ为信息位。此处 M=2。
非线性分组码[ nM]是指 M个码字之间不存在线性约束关系的分组码。 dM个码字之间的最小距离。非线性分组码常记为[ nMd]。非线性分组码的优点是:对于给定的最小距离 d,可以获得最大可能的码字数目。非线性分组码的编码和译码因码类不同而异。虽然预料非线性分组码会比线性分组码具有更好的特性,但在理论上和实用上尚缺乏深入研究(见非线性码)。

编码译码

V n表示 G F(2)域的 n维线性空间, V κV nκ维子空间,表示一个( nκ)线性分组码E i=( v i1, v i2…, v in)是代表 V κ的一组基底( i=1,2,…, κ)。以这组基底构成的矩阵
称为该( n, κ)线性码的生成矩阵。对于给定的消息组 m=( m1, m2,…, m κ),按生成矩阵 Gm被编为 mG= m1 E1+ m2 E2+…+ m κ E κ
这就是线性分组码的编码规则。若
之秩为 n- κ并且满足 GH=0,仅当=( v1, v2,…, v n)∈ n满足 H=0时,才为 κ中的码字。称 H为( nκ)线性分组码κ的均等校验矩阵,称 H为矢量的伴随式。假设 v是发送的码矢量,在接收端获得一个失真的矢量 r= v+ E,式中 E=( e1, e2,…, e n)称为错误型。由此 r H=( v+ e) H= e H
线性码的译码原则便以此为基础。

汉明码

这是最早提出的一类线性分组码,已广泛应用于计算机和通信设备。它是由R.W.汉明于1950年提出的。若码的均等校验矩阵 H由2-1个、按任一次序排列且彼此相异的二进制r维列矢量构成。这样得到的线性分组码称为汉明码,其分组长为 n=2-1,信息位为 κ= n- r=2-1- r,即为(2-1,2-1- r)码。例如,以矩阵
为均等校验矩阵的线性分组码便为(7,4)汉明码。汉明码的译码十分简单。例如, 假定=(1001100)为发送的码字,其第3位有错,即接收矢量为 r=(1011100)。于是
恰为矩阵 H的第 3 列,因而判定原来发送的码字为=(1001100)。这种译码方式是一般性的。如果接收矢量 r在第 i位有错,则其伴随式 Hr刚好为矩阵 H的第 i列。汉明码是可以纠正单个错误的线性分组码

循环码

具有某种循环特性的线性分组码,如果( nκ)线性分组码 V κ具有如下的性质:对于每一个=( ɑ0, ɑ1,…,)∈ V n,只要∈ V κ,其循环移位()亦属于 V κ,则称 V κ循环码。循环码的优点在于其编码和译码手续比一般线性码简单,因而易于在设备上实现。使 V n中的每一个矢量=( ɑ0, ɑ1,…,),对应于域 G F(2)上的多项式 ɑ( x)= ɑ0+ ɑ1 x+…+ x。于是 V n中的全体 n维矢量便与上述多项式之间建立了一一对应的关系。基于这种对应,使 V n中除了线性运算而外,还建立了矢量之间的乘法运算。 A=( ɑ0, ɑ1,…,)与 B=( b0, b1,…,)的乘积 ab可视为 ɑ( x) b( x)[mod( x-1)]所对应的矢量。因此,一个( n, κ)循环码生成矩阵及均等校验矩阵可分别由生成多项式及均等校验多项式 h( x)所代替,从而简化了编码及译码运算。

BCH码

它是一类重要的循环码,能纠正多个错误。假设 m是满足模n(mod n)的最小正整数, β是域 G F(2)的 n次单位原根,作循环码的生成多项式 g( x),以 d0-1个接续的元素为根,其中 m0, d0均为正整数,且 d0≥2。于是
其中 m j( x)代表的最小多项式。由这个 g( x)所生成的,分组长为 n的循环码称为BCH码。它由R.C.Bose,D.K.Ray-Chaudhuri及A.Hocquenghem三人研究而得名。BCH码的主要数量指标是:码长 n,首元指数 m0,设计距离 d0,信息位数(表示多项式 g( x)的次数)。BCH码的重要特性在于:设计距离为 d0的BCH码,其最小距离至少为 d0,从而可至少纠正(d0-1)/2个独立错误。BCH码译码的第一步是计算伴随式。假设 为发送码矢量,为接收矢量,而 E=( E0, E1,…, E n-1)为错误矢量,或记为错误多项式。于是伴随矢量之诸 S=( S1, S2,…, S2 t)分量 S κ
决定( κ=1,2,…2 t;为简便计,设 m0=1, d0=2 t+1)。假设有 e个错误出现(1≤ et),则对应于 e个错误的 E i厵0。如果 E的第 j个(从左至右)非零分量是 E i,则称 X j= β为这个错误 E i的错位,而称 Y j= E i为这个错误的错值。称 为错位多项式。BCH码译码的关键是由诸 s κ( κ=1,2,…,2 t)求出( z)。这可用著名的伯利坎普梅西迭代算法来完成。这种算法相当于线性移位寄存器(LFDR寄存器)的综合问题。最后一步是求出( z)的全部根,可用钱天闻搜索算法完成,从而可以定出接收矢量 r的全部错位。

戈帕码

这是一种重要的线性分组码,它不仅包括常见的诸如本原BCH码等大量的循环码类,还包括相当多的非循环线性分组码类,并且后一种码具有良好的渐近特性。戈帕码的理论实质在于将每一个码矢量与一个有理分式相对应。 q是某一个素数幂, g( z)是域 G F( q)上的任意多项式, L表示域 G F( q)中所有不为 g( z)之根的元素所成之集合,| L|代表 L中元素的数目。于是存在一个以 G F( q)为符号域,以 G F( q)为位置域的线性分组码。码长为| L|,它的各码元用 L中的元素来标志。这种码可定义为满足条件
的一切 G F( q)上的全体| L|维矢量的集合,式中 这种码称为戈帕码,称 g( z)为戈帕多项式。
例如, q=2, m=2, g( z)= z+ α, α是域 G F( z)上的本原元素  α+ α+1=0  α3=1
则<P L={ β1, β2, β3}={0,1, α}
于是<P
可验证,(1,1,1)即为这一戈帕码的码字。戈帕码也有类似于BCH码的译码方法。
自50年代分组码的理论获得发展以来,分组码在数字通信系统和数据存储系统中已被广泛应用。由于大规模和超大规模集成电路的迅速发展,人们开始从易于实现的循环码理论研究中解脱出来,更重视研究性能良好的非循环线性分组码和非线性分组码。人们在分组码研究中又引进了频谱方法,这一研究方向受到了较多的注意。

其他码制

里德-索洛蒙码
这是一种特殊的非二进制BCH码。对于任意选取的正整数 s,可构造一个相应的码长为 n= q-1的 q进制BCH码,其中码元符号取自有限域G F( q),其中 q为某一素数的幂。当 s=1, q>2时所建立的码长为 n= q-1的 q进制BCH码便称为里德-索洛蒙码,简称为RS码。当 q=2( m>1),码元符号取自域 G F(2)的二进制RS码可用来纠正成区间出现的突发错误。这种码在短波信道中特别有用。
$firstVoiceSent
- 来自原声例句
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定