无线通信系统级联码的选择与实现

2011-06-22 12:46伍建辉
火控雷达技术 2011年3期
关键词:译码器交织译码

伍建辉 王 毅

(西安电子工程研究所 西安 710100)

1 引言

无线信道的数据传输非常复杂,存在着一些不确定的干扰因素使信号产生衰落,这样就会使接收端恢复出来数据出现突发性的错码,严重干扰时所引起的信号深度衰落可能会引起大量的、成片突发性错码,由此数据传输会受到严重的影响。因此为了提高数据的抗干扰能力和传输的可靠性,一般采用合适的信道编解码技术来检测和纠正信号衰落所产生的随机和突发性错码,来保证数字信号的传输质量[1]。

2 级联码的结构

Shannon信道编码定理指出,随着码长的增加,译码错误概率以指数方式趋近于零。因此为使纠错码有效就必须使用长码,但码长的增加使码率相应下降,译码设备复杂性与计算量也相应增加以至于系统难以实现。为了解决码长与系统实现之间的矛盾,1966年Forney提出了级联码的方案,它是用两次或更多次编码的方法组合成很长的分组码,以实现Shannon信道编码定理所要求的增加码长实现有效而可靠通信的目的[2]。在实际工程应用中,最常用的是两级编码和译码,其中第一级为外码,第二级为内码,内外码有多种组合,工程上结合各种编码方式的优缺点,级联码主要采用以下几种方式:

a.RS码+分组码

b.RS码+卷积码

c.RS码+交织码+卷积码(超纠错能力)

d.卷积码+卷积码

e.卷积码+交织码

其中方式c是一种具有超强纠错能力的级联码形式,结构如图1所示。

图1 典型的级联码结构示意图

无线通信系统可以根据对纠错能力的要求选取图1级联码的全部或者部分作为差错控制方案,尽可能的消除数据传输过程中的随机差错与突发差错,保证可靠的数据传输。

3 级联码的选择

在本文涉及的无线通信系统中,上行帧格式64bit,通过RS编码后的序列太长,如果采用图1的级联码结构,编译码时间超出了系统所要求的通信时间,不符合指标要求,经权衡采用图2所示的简化级联码方案。

对于图2的卷积码+交织码方式的级联码,下面分别从两个方面来讨论它的具体选型。

3.1 卷积码的选择

卷积码的格式的选择主要是考虑以下几点:

图2 简化的级联码方案

a. 对于(n,k,m)的卷积码,k为输入位宽,n 为输出位宽,m为约束长度。(n,k,m)格式的卷积码共有2km个状态,viterbi译码器的复杂性随2km指数增加,为了不使译码器太复杂、成本太高,一般要求约束长度m<10。

b.若采用m>10的卷积码,译码须采用序列译码算法,它是基于码树结构上的准最佳概率译码,虽然误码率较m<10的viterbi译码算法有所下降,但从译码速度、复杂性、成本、资源占用等方面考虑,采用m<10的卷积码更为有利。另外,m<10的viterbi译码算法是基于网格图上的一种最大似然译码,同时也是一种最佳的概率译码方法,它比序列译码算法效率更高,速度更快,译码器也较为简单。所以针对项目实际要求提出m<10的卷积码方案。

c.在AWGN信道中viterbi译码器输出的误码率可近似表示为:[3]

其中R是卷积码的码率;df是码的自由距离;Bdf是卷积码码字中,所有重量为df码字的非零信息位的总数。

由误码率公式可知,无论采用软判决还是硬判决VB译码器的pb主要由df决定,随着df的增加,pb指数下降。码率R=1/2的卷积码误码率的特征参数如下表1所示。

表1 卷积码的特征参数(R=1/2)

由图3可以看出,约束长度m=9对应的误码率最小,所以选择(2,1,9)格式的卷积码是最佳选择。

3.2 交织结构的选择

a.数据交织的必要性

在空间无线通信信道中不但存在随机差错,还存在由外来的脉冲干扰引起突发差错,同时同频道干扰、相位噪声、多径和衰落信道等都会引起突发差错,这种干扰有一个共同的特点就是发生的差错具有很强的相关性,当发生一个差错时,往往波及后面的很多数据,导致一片数据都发生错误,使突发错误的数目超过了纠错码的纠错能力。而且某些译码算法也会产生突发错误,比如Viterbi译码可能产生突发差错的情况,添加交织编码后,它可使突发错误分散化,使本不可纠的错误变为可纠的错误,系统的纠错性能可以提高好几个数量级。而且交织不会引入冗余码,所以也就不会降低频谱利用率。

图3 不同约束长度下的误码率(R=1/2)

b.交织方式的选择

交织编码根据交织图案形式的不同,可分为线性交织、卷积交织和伪随机交织。其中线性交织是一种工程上比较常见的方式,实现较为容易[4,5]。本项目拟采用线性交织。线性交织编码器就是把纠错编码的输出信号均匀分成q个码组,每个码组由p段数据构成,形成一个p×q的矩阵,即交织矩阵。数据按列依次进入,输出按行依次读出,其中p为交织深度。

交织器的设计基于以下考虑:

a.最大程度的置乱原来帧数据的排列顺序,避免置换前相距较近的数据在置换后仍然相距较近,特别避免交织前数据在交织后再次相邻。

b.级联编码是以帧为单位进行编译码,应使交织深度在满足系统时延的前提下必须根据信道中突发误码的长度、出现的频率以及纠错码的约束长度、纠错能力适当选择较大的交织图案,以提高纠正突发差错能力。

由于本文的通信系统上行帧数据为64 bit,它共有32×2、16×4、8×8、4×16、2×32五种块交织方案供选择。表2是随机的产生多组数据经卷积后采用不同的线性交织结构,数据不动点的个数与交织前后数据序列的互相关系数均值的比较。

表2 不同的线性交织结构比较

由表2可以看出,16×4,8×8,4×16这三种交织方式互相关系数均值较小,从不动点数据个数考虑,16×4,4×16优于8×8交织,最后根据卷积码的约束长度,交织深度p应大于(2,1,9)卷积码的约束长度9(因为交织深度p大于约束长度可以有效的将连续误码分散成非连续误码,增大卷积码的约束长度),最终确定16×4交织结构是最为合理的交织方案。

4 级联码的纠错能力

卷积码既可以用于纠错又可以用于检错,即对于最小汉明距离为 dmin的(n,k,m)卷积码,能在m个连续段内纠正个随机错误;若用于检错,则可以检测出m个相邻段内的(dmin-1)个错误。特别是针对卷积码的概率译码常用自由距离df来衡量纠错性能,df越大,纠错能力越强。

交织编码的纠错能力在于对本可纠正t个错误的卷积码,经交织深度为p的交织后,就可以纠正所有长度≤pt的突发错误[3]。

总体来说,煤样在不同浸泡时间下的单轴压缩曲线具有相似的特征,在受载初期单轴压缩曲线均呈上凸型,达到峰值应力以后又迅速跌落。说明无论是自然煤样还是有机/酸复合溶液浸泡后煤样均具有一定程度的压密阶段和脆性特征,不同的是,随着浸泡时间的增加,煤样的弹性模量和峰值强度逐渐减小,而峰值应变和总应变呈增加的趋势。

根据以上理论对于本方案选定的(2,1,9)卷积码,最小汉明距离为dmin≈df=12,所以它能在9个连续段内纠正个随机错误。

5 级联码的实现与仿真

由以上讨论可知,纠错方案已选定为在发送端采用(2,1,9)格式的卷积码与16×4的交织编码,接收端采用对应的解交织以及最大似然译码的viterbi译码,图4是整个级联码方案用硬件语言实现后综合的顶层电路图。

图4包括4 个模块,convolution-219 是(2,1,9)格式的卷积编码模块,interleaver-16x4是16x4的线性交织模块,interleaver-jie-16x4是16x4的解交织模块,vb-decode-219是针对(2,1,9)卷积编码的vb译码模块。

级联码编译码模块中的核心模块是vb-decode-219译码器,图5是VB译码器FPGA实现的总体架构图,它主要由BMG(分支度量发生器)、ACS(加比选)、RAM Metric(度量存储单元)、RAM Survivor(幸存路径存储单元)、Traceback(回溯单元)、MMU(存储管理单元)和 CONTROL(控制单元)七部分组成。

以上各个模块的工作简述如下:

a.BMG(分支度量发生器)是计算译码输入和卷积码网格图各状态分支之间的距离度量值,为后继的ACS单元提供输入。

b.ACS(加比选)是Viterbi算法中的基本运算单元,它根据VB译码原理,将支路度量和前一时刻相应的路径度量相加并比较,得到本时刻的新的路径度量和相应的判决比特。

d.RAM Survivor(幸存路径存储单元):存储ACS单元生成的判决比特以供搜索幸存路径用。

e.Traceback(回溯单元)是幸存路径搜索的一种基本方式。

f.MMU(存储管理单元)控制幸存路径存储单元的操作。

g.CONTROL(控制单元)产生VB译码所需的各种控制信号以控制和协调译码器各模块的工作时序。

图6是vb-decoder-219模块的综合展开电路图。

图7是对图6中的分支度量模块(METRICMEMORY)与加比选(ACS)两个模块放大图。

针对上面各个模块的仿真这里就不逐一进行,下面只对级联码的编译码顶层设计做一仿真。图8为无线通信中上行一帧数据(64bits)经过级联编译码后在modesim中的仿真图。

其中X为输入信息码元;Y为卷积编码后信号;Y-jiaozhi是经过线性交织后的信号;y-jiejiaozhi是接收端解交织后的数据;DecodeOut是VB译码后的数据;另外 VB译码时钟为10M,数据速率为30Kbps。

图6 vb-decoder-219模块的综合展开图

由图 8 可见原始信息数据 X=(1,1,1,1,1,0,0,0,1,0,1,0,1,1,0…)经 viterbi译码后的 Decode-Out=(1,1,1,1,1,0,0,0,1,0,1,0,1,1,0…),两者完全一致,且发送端从一帧数据的编码到接收端译码结束大约需要8.4ms的时间(未考虑信道传输时间等)。

另外通过用大量的实采数据作为参考,系统在不加级联码与系统采用级联码两种方式下的误码率进行对比发现,在相同的信噪比条件下,采用级联码纠错方案后信道传输的误码率从原来10-5降至10-6左右,很好的改善了系统的纠错性能。

6 结论

无线通信信道在接收端既有由高斯白噪声引发的随机性错误又有由脉冲噪声带来的突发性错误。为保证信息传输的可靠性和准确性,借助本文所述的级联码方案,通过计算机仿真,结果表明级联码对于衰落的无线通信信道来说确实是一种十分有效的差错控制手段。

[1]傅祖芸,赵建中.信息论与编码[M].北京:电子工业出版社,2006.

[2]王育民,李晖,梁传甲.信息论与编码理论[M].北京:高等教育出版社,2005.

[3]王新梅,肖国镇.纠错码原理与方法[M].西安:西安电子科技大学出版社,2001.

[4]付天晖,王永斌,张文娟.级联码与交织技术在甚低频对潜通信中的性能研究[J].无线通信技术,2006,(4).

[5]王霞,张传生.级联码结合交织技术的纠错性能研究[J].无线通信技术,2000,(2).

猜你喜欢
译码器交织译码
极化码自适应信道译码算法
“新”与“旧”的交织 碰撞出的魅力“夜上海”
基于扩大候选码元范围的非二元LDPC加权迭代硬可靠度译码算法
分段CRC 辅助极化码SCL 比特翻转译码算法
基于校正搜索宽度的极化码译码算法研究
交织冷暖
编码器和译码器综合实现数字显示
跟踪导练(一)5
数字电路环境下汽车控制电路信号设计
奥运梦与中国梦交织延展