毕业论文--扩频通信系统中信道编码技术内容摘要:

短促的时间区间与区间之间又存在较长的无错码区间,这些成串出现的错码称为突发错码。 经过分析我们发现产生突发错码的主要原因是脉冲干扰和信道中的衰落现象。 那么如果在一个信道中同时出现随机错码和突发错码 ,那么我门就称该信道为混合信道。 对于不同类型的信道,应采取不同的差错控制技术。 通常用到的有 10 ( 1)检错重发法 接收端在收到信码中检测到错码以后(不一定能判断具体的错码位置)即通知发送端重发,直到正确接收为止。 这种方法需要具备双向信道。 ( 2)前向纠错法 接收端不仅能发现信码中的错码而且能纠正错码。 这种方法不需要双向信道,所以节省了反复重发的延时,但纠错设备要比检错设备复杂。 ( 3)反馈校验法 接收端将信码原封不动地转发回发送端,并与原发送信码比较。 若发现错误,则重发。 同样,这种方法需要双向信道,但由于每一信码都至少传送了两次,那么传输效率较低。 前两种方法都可以判断接收端有无错码,这种判断就是建立在发送端的信道编码的基础之上的。 在发送端,信道编码器在信息码元中增加了一些监督码元,而这些监督码元又和信码之间有一定的关联,那么接收端就可以利用 这种关系由信道译码器来发现并纠正可能存在的错码。 在信息码元中加入的监督码元就称为差错控制编码或纠错编码。 同样编码效率和误码率是衡量差错控制编码的重要参数,这里我们所讲的编码效率就是增加的监督码元的多少 ,监督码元越多编码效率就越低。 而同时,随着监督码元的增加 ,纠错性能又得到了提高 ,两者之间存在着矛盾。 分组码 基本原理 分组码( Block Coding)和卷积码( Convolutional Coding)是信道编码的两种主要形式。 分组码的特点是一次处理相当规模的信息块(通常为成百字节的数 据);而卷积码则是处理串行的信息比特流。 现在,人们已经设计出了许多种有用的分组码和卷积码,相应的也有许多种有效的译码算法,适用于不同的场合把原始信息从接收数据里面恢复出来。 为了便于理解,我们通过一个例子来说明。 一个由 3 位二进制数字构成的码组,共有 8 种可能组合。 可以表示 8 种不同的天气,譬如: 000(晴), 001(云), 010(阴),011(雨), 100(雪), 101(霜), 110(雾), 111(雹)。 其中任何一个码组在传输中发生一个或多个错码,则将变成另一个信息码组。 这时接收端都无法发现错误。 如果上述 8 种 码只允许使用 4 种来传送信息,譬如: 000(晴), 001(云), 010(阴), 011(雨)。 这时虽然职能传送 4 种天气,但接收端却有可能发现码组中的一个错码。 例如,若 000(晴)中错了一位,变成了 100 或 0101 或 001。 这三种码组都是不准许使用的,称为禁用码组,故接收端在收到禁用码组时,就认为发现了错码,同样,如果发生三个错码也能检测出来。 但这种码不能发现两个错码,因为发生两个错码后产生的是许用码组。 上述码组可以检测错误,但不能纠正错误。 如果我们只允许 2种来传送信息: 000(晴), 111(雨),其余都是禁用 码组,这时就能检测两个以下的错码或纠正一个错码。 例如,收到禁用码组 100时,如果认为该码组中仅有 1个错码,则可以判断错码发 11 生在“ 1”位,从而纠正为 000(晴)。 若上述接收码组中的错码数认为不超过两个,则存在两种可能性: 000错 1位或 111错两位都可能变成 100,因而只能检测出存在错码而无法纠正它。 从上面的例子中可以得到关于“分组码”的一般概念。 如果不要求检(纠)错,为了传输 4种不同的信息,我们用两位码组就够了,他们呢是 00, 01, 10, 11。 代表所传信息的这些两位码,成为信息位。 而上例中用了 3位码,多增加 的这一位称为监督位。 分组码 由一组固定长度称为码字的矢量构成。 码字的长度就是矢量元素的个数,用 n来表示。 码字的元素选自有 q个元素的字符集合。 如果 q 2,则称为二进制分组码;如果 q2,则称为非二进制分组码。 长度为 n 的分组码一共有 nq 个可能的码字。 从中选取包含 2kM 个码字的子集构成一种码,这样可以把一个 k比特的信息分组映射到所选择的子集中的一个长度为 n 的码字。 这样的得到的分组码称为 (n, k)码。 (n, k)码中, nk=r为监督码元的数目。 在分组码中,我们把“ 1”的数目称为码组的重量,而把两个码组对应位上数字不同的位数称为码组的距离,简称码距,又称汉明( Hamming)距离。 上例中 4个码组之间,任两个的距离均为 2。 我们把某种编码中各个码组间距离的最小值称为最小码距( 0d ),所以上例中编码的最小码距为 0 2d。 经过证明,我们已经能够得到一下 3个定理: 1) 为检测 e 个错码,要求最小码距: 0 1de; 2) 为纠正 t 个错码,要求最小码距: 0 21dt; 3) 为纠正 t 个错码,同时检测 e 个错码,要求最小码距: 0 1d e t   ()et 线性分组码 假设 ,ijcc 是某种 (n, k)码的两个任意的码字, 1 和 2 是码元字符集中的两个任意的元素,那么当且仅当 1 1 2 2cc 也是该分组码的码字时,我们称该分组码 为线性的,叫做 线性分组码。 循环码, BCH 码和里德-所罗门( Reed- Solomon)码是实际应用中常见的线性分组码。 循环码 循环码是一种重要的线性分组码,它是在严密的代数理论基础上建立起来的。 循环码的编 /解码设备都不太复杂,且有比较强的纠错能力,目前已经在理论上和时间上得到了较大的发展。 循环码除了有线性分组码的一般性质外,还具有循环性,即循环码中任一码组循 12 环一位(将最右端的码元移至最左端,或反之)以后,仍为该码中的一个码组。 常用的( 7, 3)循环码的全部码组见表。 码组编号 信息 位 监督位 码组编号 信息位 监督位 6 5 4aaa 3 2 1 0aaaa 6 5 4aaa 3 2 1 0aaaa 1 000 0000 5 100 1011 2 001 0111 6 101 1100 3 010 1110 7 110 0101 4 011 1001 8 111 0010 表 由此表可以直观看出这种码的循环性。 例如,第 3 组右移一位即得到第 2 组,第6 组右移一位即得到第 7 组。 循环码的解码方法有捕错解码、多数逻辑解码等,硬件实现上都是比较简单的。 13 第三章 卷积编码与 Viterbi 译码 卷积编码 卷积码是由 P Elias 于上世纪五十年代提出的一种非分组码。 卷积编码器将发送的信息序列通过一个线性的、有限状态机的移位寄存器而产生的编码。 通常卷积码的编码器由 K 级(每级 k 比特)的移位寄存器和 n 个线性代数函数发生器(这里是模 2加法器)组成,如图 31 所示。 图 31 卷积码编码器一般结构图 卷积编码充分利用了各码组的相关性,无论在理论上还是在实际中已经被证明其性能不差于甚至优于分组码。 而且卷积码和其它编码方法比起来,有相对直观和简洁的编码结构。 当然和拥有严格代数结构的分组码不同,卷积码至今尚没有找到可以把纠错性能和码的构成有规律的联系的严密的数学手段,因此,目前大多用计算机来搜索好码,而且卷积码的译码方法比较复杂,从目前所使用的几中主 要译码方法(如维特比算法( VA ),最大后验概率译码( MAP)等)都存在结构复杂,计算量巨大的问题。 卷积码的表示 ( ,nkm )卷积编码器在一段时间内输出 n 位码,不仅与本段时间内的 k 位信息有关,而且还与前面 m = 1N 段规定时间内的信息位有关,这时监督位监 督着这 N 段时间内的信息。 这 N 段时间内的码元数目 nN 称为这种码的约束长度。 这里选用我们项目中使用的( 2, 1, 2)卷积编码为例子,简单介绍一下卷积编码的编码原理及表述。 14 图 32 (2,1,2)卷积编码器 可以看到,编码器有 2 个移位寄存器,每个时钟周期输入 1bit 数据,每一段时间内输出 2bit 数据。 输出 1, 2cc与输入 1, 2, 3b b b 的关系如下: 1 1 2 3c b b b   2 1 3c b b ( 31) 其中  表示模 2 加。 这样编码器必须存储最近两个信息比特。 我们称这个编码器的 记 忆长 度为 m =2 , 着 两个 输出 序列 通 过切 换器 服用 形成 一个 码 序 列( 1 ) ( 2 ) ( 1 ) ( 2 ) ( 1 ) ( 2 ) ( 1 ) ( 2 )1 1 0 0 1 1( .. ., , , , , , .. ., , , .. .)llb b b b b b b b b ,此序列为( 2, 1, 2)卷积码的一个码序列或码字。 同时,( 2, 1, 2)卷积编码器的寄存器和模 2 加法器之间的连接还可以由以下生成序列描述: ( 1 ) ( 1 ) ( 1 ) ( 1 )0 1 2( 2 ) ( 2 ) ( 2 ) ( 2 )0 1 2( , , ) ( 1 , 0 , 1 )( , , ) ( 1 , 1 , 1 )g g g gg g g g ( 32) (1)g 表示 (1)c 的抽头连接系数,而 (2)g 表示 (2)c 的抽头连接系数,这样,我们可以用( 33)式表示 ()ic ( ) ( ), 1, 2iic b g i    表示卷积 ( 33) 我们还可以用 (1)g 和 (2)g 排列成一个矩阵 G,该矩阵为码序列的生成矩阵 b 的生成矩阵 15 G = ( 1 ) ( 2 ) ( 1 ) ( 2 ) ( 1 ) ( 2 )0 0 1 1 0 0( 1 ) ( 2 ) ( 1 ) ( 2 ) ( 1 ) ( 2 )0 0 1 1 2 2( 1 ) ( 2 ) ( 1 ) ( 2 ) ( 1 ) ( 2 )0 0 1 1 2 2( 1 ) ( 2 ) ( 1 ) ( 2 ) ( 1 ) ( 2 )0 0 1 1 2 200 00 ...00 00 ...00 00 .....................00 00 ...g g g g g gg g g g g gg g g g g gg g g g g g 整个编码操作可一表示为 cuG.。 那么我们可以将( 2, 1, 2)编码推广到所有无反馈的 1 路输入 n 路输出的卷积编码器。 假设编码器长度为 n ,那么可以表示为 第 i 个输出序列可以表示为 ( ) ( ), 1 , 2 , .. .iic b g i n   ( 34) 状态流图 作为一个有限状态的线性电路,卷积编码器可以用状态流图描述,如果编码器的寄存器个数为 K ,那么一共就有 2K 个状态。 状态随着输入到移位寄存器当中的码字的变化而发生变化。 状态转移图是由代表编码器状态的节点和代表状态转移的有向线段所组成的。 每条有向线段用输入 /输出来标识。 我们仍然以( 2, 1, 2)编码器为例。 由于编码器有两个寄存器组成,那么它拥有 4 个状态,分别用 a,b,c,d 表示,每个状态有两条出径,表示输入比特的两种可能。 这里我们用实线表示输入比特为 0,虚线表示输入比特为 1。 图 33 表示了( 2, 1, 2)编码器的状态转移图。 16 图 33 ( 2,1,2)卷积码状态转移图 网格图 如果我 们将状态流图的个中可能路径按时间轴展开,我们可以得到卷积码的另一种表示方式 网格图。 K 个寄存器的卷积编码器对应到网格图中时间轴上每个时刻都有 2K 个节点,对应于状态流图上的 2K 个状态。 各时刻节点间的连线叫做分支,与状态流图中的有向线段对应,表示状态的转移。 图 34 表示了( 2, 1, 2)卷积编码器状态转移的网格图。 图 34 ( 2,1,2)卷积码网 格图 卷积码距离特性 卷积码的纠错性能取决于它的距离特性。 这里考虑两种距离。 对于硬判决译码,译码器对二进制符号进行操作,编码性能用汉明距离衡量。 而软判决译码器从解调器 17 接收量化或模拟信号,译码操作基于欧氏距离。 卷积码的最小自由距离freed定义为码字集合中,任意两个码序列之间的最小汉明距。 由于卷积码是线性的,两个码序列之。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。