APP下载

基于FPGA的交织编码技术研究及实现

2017-11-08杨鸿勋张林

科技资讯 2017年26期
关键词:交织

杨鸿勋++张林

摘 要:对于采用信道编码技术进行纠错的系统,只能纠正随机错误,无法解决突发错误的问题。详细阐述了一种基于汉明码的交织编码技术,并以FPGA为平台进行了实现与仿真。仿真结果表明该交织编码技术可以有效地纠正信道中的随机错误和突发错误,大大降低误码率,提高通信的可靠性。

关键词:突发差错 交织 FPGA

中图分类号:TP399 文献标识码:A 文章编号:1672-3791(2017)09(b)-0027-02

在数字通信中,信道中存在着各种干扰和噪声,不可避免地会导致传输的信息出现差错,为保证信息传输的可靠性,往往采用信道编码技术。信道编码纠正随机错误的能力很强,但是用于纠正突发差错却无能为力。在实际信道中,差错往往具有突发性质,一个突发差错将引起一连串的错误,如信道中的多径衰落干扰,闪电与人为的电气脉冲干扰等都会造成突发错误。针对纠正突发差错的问题,交织编码是一项十分有效的技术,其本质是将码元在时间上分离,介于其间的时间由其他码字的码元来填充。通过在时间上分离码元可将一个有记忆信道转变为无记忆信道,这样译码器就可以将信道中的突发错误当作随机错误处理,从而使得纠正随机错误的编码同样适用于突发信道。

1 交织编码纠错原理

汉明码构造简单,应用广泛,可以用来纠正随机错误,交织技术可以用来纠正突发错误,汉明码和交织技术相结合的交织编码技术可以同时纠正信道中的随机错误和突发错误。

假设要发送一组信息X=(x1 x2 ….x19 x20),首先将X进行分组,四位数据为一组,对每组数据进行汉明编码,然后送入交织器,将交织器设计成按列写入按行取出的5×7阵列存储器。然后从存储器中按行输出,送入突发差错的有记忆信道,信道输出送入反交织器,它完成交织器的反变换,即按行写入,按列取出,它仍是一个5×7阵列存储器。反交织器的输出,即阵列存储器中按列输出的信息,其差错规律就变成了独立差错。

交织矩阵为:

则交织器输出并送入信道的信息序列为:

X1=(x1 x6 x11 x16 x21 x26 x31 x2 x7 …x5 x10 x15 x20 x25 x30 x35)

假设突发信道产生突发差错,x1~x21连错5个,故

X1=(y1 y6 y11 y16 y21 x26 x31 x2 x7 …x5 x10 x15 x20 x25 x30 x35)

反交织矩阵为:

经反交织器输出的信息序列为:

Y=(y1 x2 x3 x4 x5 y6 x7 x8 x9 x10 y11 x12 x13…x5 x10 x15 x20 x25 x30 x35)

經过交织器与反交织器的设计变换后,原来信道中产生的突发错误,即5个连错变成了无记忆随机错误,被平均分配到5个汉明编码中,之后再进行汉明码纠错就可以纠正全部突发错误。

2 交织编码纠错的FPGA实现

2.1 编码模块

编码模块首先需要接收5组待编码数据,检测到接收5组数据后,分别求5组数据的监督码元,并将待编码数据与监督码元形成编码数据,之后按照交织方案进行交织处理,并发送出去。

编码模块仿真图如图1所示,其中xxw1~xxw5是输入的5组信息码元,hmm1~hmm5为5组信息位的监督码元,data_in是缓存的5组信息位,data_out为交织后发送的数据。

2.2 译码模块

译码模块接收编码数据后,检测收到35位数据后,首先按照交织方案进行反交织处理,求出5组编码数据,然后分别求5组码字的伴随式,之后根据伴随式与错误图样的对应关系进行纠错,并剥离出5组信息码元。

译码模块仿真图如图2所示,其中,data_in是输入的编码数据,yxw1_hm~yxw5_hm为反交织后的5组汉明编码,yxw1~yxw5为5组编码数据经译码纠错后的有效信息码元。输入数据data_in与编码模块的输出数据data_out相比前五位均出现差错,由图2可以看出,经译码纠错出的5组数据与编码模块的数据完全一致,可见该译码模块具有纠连续5位错误码元的能力。

3 结语

针对通信中纠错的问题,本文提出了一种汉明码与交织技术相结合的交织编码技术。并以一种交织编码为例,以FPGA为平台进行了实现和仿真。仿真结果表明,该交织编码技术可以有效地纠正信道中的随机错误和突发错误,大大降低误码率,提高通信的可靠性。

参考文献

[1] 达新宇,陈树新.通信原理教程[M].北京:北京邮电大学出版社,2005.

[2] 周炯槃,庞沁华.通信原理[M].北京:北京邮电大学出版社,2005.

[3] 王秉钧,王少勇.通信原理基本教程[M].北京:北京邮电大学出版社,2006.endprint

猜你喜欢

交织
明天盲盒
簇拥
欢愉印花
几何映射
交织冷暖