基于DMR 协议的信道编译码研究

2014-12-23 01:34窦建华凌小星
计算机工程与设计 2014年2期
关键词:信道编码码字信令

窦建华,凌小星

(合肥工业大学 计算机与信息学院,安徽 合肥230009)

0 引 言

数字移动无线电 (digital mobile radio,DMR)是欧洲电信标准协会 (ETSI)与2004年提出的新型数字对讲机标准,随着模拟对讲机向数字对讲机的转换,DMR 标准将会得到广泛应用。由于数字对讲机是通过无线信道传输信息的,信息在传输过程中必然会受到信道噪声等各种因素的干扰,当干扰严重时,接收端将会接收到错误的信息,使得收发双方无法正常通信。信道编码技术是通信系统中对信息进行检错和纠错的重要手段,通过信道编码,可以有效的降低信息在传输过程中发生的误码率,从而确保正常通信。

DMR 协议采用了多种信道编码方式对信息进行编码,二次剩余 (quadratic residue,QR)码和Golay码是其中的两种。本文对DMR 协议中采用的QR(16,7,6)码和Golay(20,8,7)码进行研究,提出一种改进的捕错译码算法,并在VC++环境下验证该算法的有效性。

1 DMR 协议简介

DMR 协议结构遵守一般的分层结构,共分为3层,如图1 所示。其中,信道编码过程在数据链路层中完成。DMR 协议的设计是基于一种双时隙的TDMA 结构,一个TDMA 帧包括2个时隙,每个时隙长度为30ms,共60ms。每个时隙中的27.5ms承载有效信息,2.5ms为保护时间,并且平均分配在有效信息的两端。DMR 协议采用4FSK 调制方式,信道间隔为12.5kHz。

2 DMR 系统信道编码简介

图1 DMR 协议分层结构

为降低信息在传输过程中引起的误码率,DMR 系统使用了多种信道编码方式对DMR 协议进行编码,主要包括汉明码、多块拓扑码、CRC校验码、QR 码及Golay码等,本文主要介绍DMR 协议中使用的QR(16,7,6)码和Golay(20,8,7)码。同时,对于Golay(20,8,7)码来说,因其是一种特殊的二次剩余码,性能与QR(16,7,6)码类似,所以本文重点研究QR(16,7,6)码及其编译码算法,得出的编译码算法对Golay(20,8,7)码同样有效。

DMR协议帧结构分为数据突发帧结构和语言突发帧结构,并且规定一个标准的数据帧或语言帧为264bit。DMR系统以语言超帧为单位对语音信息进行传输,一个语言超帧包含6 个语言帧,设编号依次为A-F。每个语音帧中,除两端共216bit用于承载语言信息外,A 帧的中央嵌入了48bit的语言同步码,用于帧同步,对于B-F 帧中的4 个,中央分别嵌入了32bit的经过处理的链路控制信令,用于对所发送的信息进行相关说明。对于为嵌入式链路控制信令提供必要信息的信息位,DMR 协议使用QR(16,7,6)码对其进行编码,该信息位包含了用于区分来自不同站点的信令和标示不同嵌入式链路控制信令片段的位置等信息。编码完成后产生的16bit码字,平均分配在嵌入式链路控制信令的两侧。

对于语音超帧的帧头,可以使用数据帧结构进行标示。数据突发帧的两端,共196bit,用于承载数据和控制信息,每个数据和控制突发帧中包含20bit的时隙类型协议数据单元,并且平均分配在48bit数据同步码或嵌入式信令的两侧,主要用于区分来自不同站点的信令和解释承载信息的内容。该数据单元,DMR 协议使用Golay(20,8,7)码对其进行编码。

经过以上简要分析可知,QR(16,7,6)码和Golay(20,8,7)码在DMR 协议中具有重要的作用,其编译码过程的成功实现对于信息的正确传输有着重要的影响。

3 QR 码简介

对于某个素数p 和整数i,若存在整数a,满足i=a2modp,则称i是p 的平方剩余数,否则称i是p 的非平方剩余数。

对于某一循环码的码字(cn-1cn-2…c1c0)来说,若其中的信息位发生循环移位,因循环码具有循环移位特性,则得到的码字(cn-2…c1c0cn-1)也是该循环码的一个码字。

QR 码是码长为素数p 的有限域 ()GF l 上的循环码,其中l是modp的平方剩余,对于l=2的二元平方剩余码,码长p 是形如8 m±1的素数。在二元域GF()2 中,执行模2加及模2乘两种运算,其中,模2加等同于异或运算。在QR 码的编码及译码算法中,将反复用到这两种运算。

在信道编码中,常常需要对一些预先给定的循环码做相关处理,如采用截短的方法,使其能更好的实现纠错和检错功能。假设给定一个 (n,k)循环码,将其前i(0<i<k)位信息位置 “0”,然后删去这i位信息位,则得到一个 (n-i,k-i)的线性码,这种码称为截短循环码。截短循环码与截短前的循环码相比,具有相同的纠错能力,并且编译码方法和截短前相同。

DMR 协议中使用的QR(16,7,6)码是由QR(17,9,5)码截短得来的,即在QR(17,9,5)码的基础上去掉两位信息位,添加一位奇偶校验位得来。经截短处理后,QR(16,7,6)码在纠错和检错性能上都要优于QR(17,9,5)码,但同时是以增加信息冗余度为代价的。

4 QR 码编码算法

QR(16,7,6)码满足循环码的编码条件,因此可以采用通用的循环码编码方式对其进行编码,其生成多项式为

具体编码过程为:

(1)用信息多项式m(x)乘以xn-k,得到xn-km(x);

(2)将xn-km(x)除以g(x)得到余式b(x);

(3)将b(x)加进m(x)xn-k,即完成循环编码。在完成的编码后面再加入相应的奇偶校验位,则得到所需的码字

c(x)。

若给出了QR(16,7,6)码的生成矩阵G(x),则可以直接用信息位与生成矩阵相乘,得到所需的码字,即

在c(x)中,前k位是信息位,后n-k位是校验位,用于对信息位纠错、校验。因为这种方法计算量少,且文献

[4]给出了生成矩阵,本文使用将信息位与生成矩阵直接相乘的方法完成QR 码的编码。

5 QR 码译码算法

QR码有多种译码方式,主要分为两步:求出错误位置多项式的系数;然后求出错误位置多项式的根以确定错误位置,进而纠错。对于DMR 协议中使用的QR(16,7,6)码,若通过求解错误位置多项式的方式译码,译码过程将会涉及大量的代数运算,耗时较长,使得译码效率较低。由于QR(16,7,6)码的码长较短,本文提出一种改进的捕错译码算法实现译码,可省去错误位置多项式的求解过程,从而使得QR(16,7,6)码的译码过程更加简洁、快速,提高译码效率。

5.1 捕错译码方法简介

设QR(n,k,d)码的发送码字为c(x),在传输过程中,若受到信道噪声等干扰因素的严重影响,将使得码字产生错误,则接收码字为

其中,e(x)为错误图样。

可见若能求出e(x),即可实现译码。

设校正子为s(x),则

如果r(x)中的错误全部集中在码字的后n-k 位校验位上,分析可知错误图样多项式e(x)的最高阶次不超过nk-1,而g(x)的阶数为n-k,所以e(x)与g(x)相除,结果仍是e(x),因此对于这种情况,接收码字的校正子为

也就是说,错误图样本身就是除法的余式。此时,只要把校正子直接加到接受码字上即可实现纠错。

然而,并非所有错误都会集中出现在码字的后n-k位上,根据QR 码的循环性,只要错误集中出现在任意连续的n-k位内,即可通过循环移位的方式将全部错误移入后n-k位上,进而顺利实现译码。对于能纠正t个错误的编码来说,可通过检测校正子的码重是否不大于t的方式,验证错误是否已全部移到到后n-k位上,若是,即可进行纠错译码。该译码方式通常称为捕获译码法。

但是,若出现任意连续的n-k位都不能包含所有出现的错误,则上述的捕错译码算法则不能成功实现译码。对于这种情况,需对该方法进行改进,使其可以顺利实现所有可能出现错误情况的译码。

5.2 改进后的译码算法

对于任意连续的n-k 位都不能包含所有错误的情况,为实现码字中错误的纠正,本文对捕获译码算法进行改进,改进的方法为:先将部分错误位移入后n-k 位上,此时,对于移入前k 位内的错误,使用依次取反的方法纠正,然后再用捕错译码算法对后n-k位上的错误进行纠正。

对于QR 码来说,其最小码距d 和纠错个数t 之间满足:d ≥2t+1,由此可得QR(16,7,6)码可纠正的最大错误个数为2。因其是由QR(17,9,5)码缩短而来的,本身无循环特性,不能利用循环移位直接进行译码,但可以先扩展成QR(17,9,5)码,恢复其循环性,然后用改进后的捕错译码算法对扩展所得的QR(17,9,5)码进行译码。

具体译码过程为:

(1)在接收码字r(x)前加入两个零,并去掉奇偶校验位,得到R(x);

(2)对R(x)进行i (i∈ [0 ,16] )次循环移位得到Ri(x),同时分别求出其对应的校正子

检测si(x)的码重,若码重不大于2,则说明此时错误都移入了后8位,可进行纠错

纠错后得到的码字Ri′(x)再循环移位17-i次,恢复原码字顺序,再提取出信息位,即可完成译码;

(3)若si(x)的码重均大于2,则对第一位信息位取反,重复第2步,此次检查校正子的码重是否不大于1,若是,说明第一位信息位有错,将另一个移入后8位的错误纠正,即可完成译码,若不是,说明第一位信息位正确,对其再次取反,然后用相同的方法依次对其他信息位进行检错;

(4)纠错完成后,再用奇偶校验位检验纠错后码字的正确性,若16位校验和为0,则说明译码正确,若不为0,则说明码字中出现了多于2个的错误。

程序流程图如图2所示。

图2 QR(17,9,5)码译码算法流程

6 Golay的编译码算法

对于Golay(20,8,6)码来说,因其是一种特殊的二次剩余码,所以可以使用与QR(16,7,6)码相同的编译码算法实现其编译码。

Golay(20,8,7)码是在Golay(23,12,7)码的基础上截短而来的,即去掉4位信息位,添加一位奇偶校验位得来。使得Golay(20,8,6)码不仅能纠正3 个错误,还能够检测出4个错误,其纠错和检错性能均优于Golay(23,12,7)码。

在Golay(20,8,6)码的编码过程中,用信息位与文献 [4]给出的生成矩阵相乘得到发送码字,完成编码。在进行译码前,先去掉接收码字的奇偶校验位,再在码字前添加四个零完成译码前的处理。在译码过程中,通过检测校正子的码重是否大于3来判断错误是否都移入后11位中,其它译码过程与QR(16,7,6)码的相同,纠错完成后,通过检验20位校验和是否为0,验证纠错后码字的正确性,具体程序流程图与QR(17,9,5)码的译码流程图相似。

7 仿真分析

为了验证本文所述的改进的捕获译码算法对QR 码及Golay码的译码有效性,在VC++环境下,对该算法进行软件仿真。二者的仿真流程图相同,如图3所示。

图3 仿真流程

对于QR(16,7,6)码,假设原始信息为 (0100101),与QR(16,7,6)码的生产矩阵相乘,得到发送码字为(0100101010100100)。在其中加入两个错误,即将第2 位和第 10 位取反, 得到加入错误后的码字为(0000101011100100)。然后使用本文提出的译码算法对其进行译码。经多次循环移位运算后,得到的校正子为(00000001),可知码重为1。然后将校正子与其对应的码字相加,得到纠正后的码字为 (0100101010100100),与发送码字比较,可知两者完全相同。因此验证,改进后捕错译码算法可顺利实现含有两个错误的QR(16,7,6)码的译码。

对于 Golay(20,8,7) 码, 假 设 原 始 信 息 为(10011001),与Golay(20,8,7)码的生成矩阵相乘,得到发送码字为 (10011001010110010000),加入3 个错误,即将发送码字的第5、13、21位取反,得到加错后的码字为 (10010001010100010000),经多次循环移位译码后,得到校正子 (00100000001),可知其码重为2,然后将其与对应 的 码 字 相 加, 得 到 纠 正 后 的 码 字 为(10011001010110010000),与发送码字比较发现二者完全相同。因此验证,该译码算法也同样可以顺利实现Golay(20,8,7)码中3个错误的纠正。

从计算复杂度分析,若使用求解错误位置多项式的方法进行译码,在求解多阶方程时,运算过程较为复杂,从而使得基带信号解码过程耗时较长。本文提出的译码算法仅涉及与和异或运算,译码过程相对简单,且运算量少,用时短,可提高整个DMR 系统基带信号信道译码的速率,进而提高整机性能。

8 结束语

本文对DMR 协议中使用的QR(16,7,6)码和Golay(20,8,7)码进行了研究,提出了一种改进的捕获译码算法,并在VC++环境下进行了仿真验证。相比于通过求解错误位置多项式的方法,该算法简洁、快速,并且在能够纠正错误个数的范围内,可以实现码字中所有错误位置任意分布的错误码字译码。

DMR 协议是新一代数字集群通信协议,是专用通信领域首推的数字集群通信协议之一,具有很好的发展前景,希望本文提出的译码算法能够对DMR 系统基带信号的信道编译码有所帮助。

[1]XU Guisen,LIU Xin,TAN Xuezhi.Introduction the transition from analog to digital of radio walkie talkie [J].Mobile Communication,2009 (6):22-25(in Chinese). [徐贵森,刘鑫,谭学治.浅谈无线电对讲机模拟转数字 [J].移动通信,2009(6):22-25.]

[2]John G Proakis,Masoud Salehi,ZHANG Lijun.Digital communications[M].5th ed.Beijing:Publishing House of Electronics Industry,2011:308-328 (in Chinese). [John G Proakis,Masoud Salehi,张力军.数字通信[M].5版.北京:电子工业出版社,2011:308-328.]

[3]FAN Changxin,CAO Lina.Communication theory[M].6th ed.Beijing:National Defence Industrial Press,2006:340-349(in Chinese). [樊昌信,曹丽娜.通信原理 [M].6 版.北京:国防工业出版社,2006:340-349.]

[4]ETSI.TS 102361-1,Electromagnetic compatibility and radio spectrum matters(ERM);digital mobile radio (DMR)systems;Part 1:DMR air interface(AI)protocol[S].2006:49-57.

[5]YANG Mao,ZHU Min,YANG Jiawei.Implementation of higher layer in DMR communication protocol applied to digital handsets[J].Modern Electronics Technique,2008,31 (17):15-17(in Chinese).[杨懋,朱敏,杨家伟.DMR 高层协议在数字对讲机上的实现 [J].现代电子技术,2008,31 (17):15-17.]

[6]LIU Erxiao,LI Yubo,LI Huan.Research on channel coding and decoding for DMR standard [J].Application Research of Computers,2012,29(4):1497-1499(in Chinese).[刘二晓,李玉柏,李桓.基于DMR 标准的信道编解码研究 [J].计算机应用研究,2012,29(4):1497-1499.]

[7]Chang Y,Lee C D,Chen A H,et al.(23,12,7)quadratic residue decoder based on syndrome-weight determination[J].Electron Letter,2008,44 (19):1147-1149.

[8]Truong T K,Shih P Y,SU Wenku,et al.Algebraic decoding of the(89,54,17)quadratic residue code[J].IEEE Trans on Information Theory,2008,54 (11):5005-5011.

[9]DAI Min.Research on channel coding for DMR system [D].Xi'an:Xidian University,2008(in Chinese).[代敏.DMR 系统的信道编码研究 [D].西安:西安电子科技大学,2008.]

[10]LIU Hui.Researchment and realization of DMR protocol[D].Beijing:Beijing University of Chemical Technology,2010(in Chinese).[刘辉.DMR 数字对讲机协议的研究与实现 [D].北京:北京化工大学,2010.]

[11]SONG Yangjun,QUAN Jinguo,LIN Xiaokang.FPGA-based implementation of RS coder/decoder for DMR standard [J].Communications Technology,2010,43 (6):32-35(in Chinese).[宋洋军,权进国,林孝康.DMR 标准RS码编译码器的FPGA 实现 [J].通信技术,2010,43 (6):32-35.]

猜你喜欢
信道编码码字信令
如何提升计算机在信道编码的处理应用效率
SLS字段在七号信令中的运用
5G信道编码技术相关分析
移动信令在交通大数据分析中的应用探索
华为:颁奖Polar码之父
放 下
数据链系统中软扩频码的优选及应用
基于信令分析的TD-LTE无线网络应用研究
放下
LTE网络信令采集数据的分析及探讨