一种面向卫星通信的无速率Spinal码通信系统设计

2019-06-27 00:22高向强刘荣科刘保国边红秀胡应梦
移动通信 2019年5期

高向强 刘荣科 刘保国 边红秀 胡应梦

【摘  要】Spinal码作为一种新型的无速率编码方法,频谱效率优于现有的固定码率编码以及其他无速率编码方法,能够自适应当前的信道状态,在航天通信和深空探测领域具有广泛的应用前景。在AWGN信道模型下,基于USRP和IEEE 802.11协议设计和实现了一种新型无速率Spinal码的通信系统,主要包括数据和反馈链路、组帧格式、码字映射方法以及编译码的状态信息同步方式。仿真和测试结果表明该系统能够通过调整发送编码符号个数自适应当前的信道状态,不需要进行编码码率和调制模式的切换,与现有ACM架构的通信系统相比,不仅有效地提高了数据传输的效率,而且进一步简化了系统设计的复杂度。

【关键词】Spinal码;无速率码;软件无线电技术;自适应传输

中图分类号:TN919.6

文献标志码:A        文章编号:1006-1010(2019)05-0040-05

1   引言

在卫星通信、遥感以及深空探测等领域中,由于相对距离变化、多径效应以及降雨等因素的影响,信道状态是时变的。对于美国SpaceX的星链计划、OneWeb的星座互联网以及中国航天科技集团的鸿雁星座等低轨卫星星座而言,信道状态的时变特性更加明显。目前在航天通信技术中主要是采用固定码率编码和自适应编码调制技术(ACM, Adaptive Coding and Modulation)匹配时变信道状态[1]。由于有限的可选组合方案,频谱效率会随着信噪比(SNR, Signal Noise Radio)的增大呈现阶梯状变化。此外,航天通信中为了更好地适应时变信道的状态,降低信息传输的误比特率,在选择编码调制方案时会保留部分的余量,在一定程度上减少了信息传输的效率。

无速率编码技术[2]能够通过调整发送码字或符号的数目适应当前信道状态,采用单一的编码和映射方式源源不断地产生码字或符号,持续地发送直到译码端完成译码,具有良好的自适应时变信道的特点。Spinal码在二进制对称信道(BSC, Binary Symmetric Channel)和加性高斯白噪声信道(AWGN, Additive White Gaussian Noise Channel)下均能实现香农容量[3],在航天通信和深空探测等领域具有良好的应用前景。

软件无线电技术将数字化处理部分尽可能地移向天线端,实现一种通用化、模块化和标准化的软件定义平台[4]。利用软件无线电技术可以快速实现软件编程,建立新算法和协议的通信系统。

本文针对卫星通信时变信道的场景,采用软件无线电(USRP, Universal Software Radio Peripheral)和IEEE 802.11协议[5]设计和实现了一种面向卫星通信的无速率Spinal码通信的系统,并在不同信道条件和调制模式下进行了性能仿真和测试。

2   Spinal码

在Spinal码中,编码器引入Hash函数对信息进行随机编码,每次输出的编码码字或符号不同。此外,所有信息段的Hash函数通过串行级联的方式进行关联,后一级的编码码字或符号包含之前所有的编码信息。对于译码器而言,采用重構编码过程的方法进行译码,依次将估计的码字或者符号与接收的数据进行欧氏距离求和,在搜索结束后选择最小损失的路径作为译码结果进行CRC校验,如果校验通过则译码正确,编码端开始新的信息编码,否则继续发送当前信息的编码码字或符号。

Spinal码的编译码器结构如图1所示。

图1(a)为编码器的结构,编码器将信息M分为m1, m2, ……, mL共L段,每段长度为k bits。信息mi, i=1, 2, ……, L,和状态si-1作为Hash函数的输入,输出为下一个状态si,其中初始状态s0=0。编码器每次根据当前编码状态和打孔策略确定要发送的编码信息后,随机数产生器(RNG, Random Number Generation)在状态信息si和pass的作用下依次产生不同编码码字或符号,以pass的形式发送到译码端。图1(b)为译码器的结构,译码器重构了编码过程并建立了搜索空间,依次对每层节点进行欧氏距离和计算,即x~i-x2i2。为了降低计算复杂度,每层节点搜索结束后最多保留B条损失最小的路径,所有节点搜索结束后,选择最小损失的路径作为译码结果,并进行CRC校验。

3   无速率Spinal码通信系统

本文在AWGN信道模型下,采用USRP和IEEE 802.11协议设计了一种面向卫星通信的无速率Spinal码通信系统[6-7],主要从数据及反馈链路、组帧格式、码字映射和解映射方法,以及编译码的状态信息同步方式等方面进行了研究。本文对基于Spinal码通信系统的数据链路以及反馈链路流程进行了设计,具体如图2所示:

图2(a)为Spinal码的数据链路。在发送端,编码器对信息进行编码形成码字,然后通过映射函数转化为编码符号,填充到数据帧的数据域,同时将发送的编码符号数目和当前帧的序列号填充到帧头的信息域,并依次完成组帧、调制和发送。编码过程中采用单一映射函数,不需要根据信道状态对其进行调整,因此可以按照系统支持的最大调制模式设置,比如16QAM、64QAM和256QAM等。帧头采用IEEE 802.11协议中码率为r=1/2的卷积码和BPSK调制。在接收端,首先对帧头进行解映射和译码,解析得到当前帧的序列号和包括的符号个数。译码器在接收到对应的符号后将解映射和译码融合在一起,直接利用已接收的符号进行译码。图2(b)为Spinal码的反馈链路,反馈链路与IEEE 802.11协议保持一致,为了确保反馈帧传输的可靠性,数据段和帧头均采用r=1/2卷积码编码和BPSK调制。

3.1  数据帧格式设计

Spinal码译码器在译码时需要确定每个数据帧的符号个数,而不是编码码率和调制模式,因此本文设计了一种适用于该系统的数据帧帧格式,具体格式如图3所示。

图3(a)为IEEE 802.11协议数据帧格式,信息域中包括信息速率Rate和长度Length,解析Rate和Length可以得到当前帧的编码速率、调制模式以及数据域中符号长度。图3(b)为本文中数据帧格式。对于发送端和接收端而言,调制模式是固定且是已知的,接收端只需要获得当前帧的接收符号数目即可。此外,多个帧连续发送时,译码器需要识别不同的数据帧。因此本文用帧序列号和编码符号长度代替了原有协议中Rate和Length信息,并且针对Spinal码适用于短码的特点,分别调整了它们的表示范围。

3.2  码字映射方法

在Spinal码中,每k bits信息经过Hash和RNG后输出编码码字,然后通过映射函数形成编码符号。不同的映射方式下,编码符号携带的原始信息不同,译码性能也不同。因此本文针对Spinal码研究和设计了两种不同的映射方法,并分别给出了对应的应用场景。

第一种映射方法是通过采用映射函數将一个c bits的编码码字直接映射为一个复数符号,高位1/2c bits对应复数符号的实部,低位1/2c bits对应复数符号的虚部,即。在译码器译码时,通过重构编码过程将一个编码符号映射为复数符号,并在复数空间下进行欧式距离求和计算。在该种映射方法中复数符号的实部和虚部作为一个整体直接参与计算,因此实部和虚部的映射方式可以不同,对映射函数没有特别的要求,几乎适用于所有的APSK、QAM等调制模式。

第二种映射方法是将两个相邻的编码码字在映射函数的作用下映射为一个复数符号,分别对应复数符号的实部和虚部,即y=x2i+j×x2i+1,其中每个编码码字为1/2c bits。在译码器译码时,首先需要将接收到的一个复数符号分解成为两个实数编码符号,并在实数空间下进行欧式距离求和计算。在该种映射方法中复数符号的实部和虚部分别对应一个编码符号并且编码方式相同,因此要求映射函数在形成复数符号过程中虚部和实部操作相同,因此主要适用于采用格雷码的QAM调制模式。

3.3  通用可扩展的编译码器

在信息传输过程中,信道状态往往可以预先估计得到,通过当前估计的信道状态粗略计算可以得到需要发送的编码符号个数,此外,Spinal码的码长较短,因此采用有限次反馈传输和多帧聚合方式发送数据帧能够有效地提高数据传输的效率[8],所以需要在收发端对编译码的状态进行实时同步。

针对数据帧的控制域有限,无法直接进行状态信息同步,本文设计了一种通用可扩展的Spinal码的编译码器,支持有限次反馈传输协议和多帧聚合协议,具体如图4所示:

图4(a)为可扩展的编码器结构,Parse模块主要对接收反馈信息进行解析;State Table模块保存当前所有数据帧的编译码状态;Spinal Encode模块根据解析结果进行信息编码;DRAM模块存储当前所有数据帧的编码符号;Frame Group模块根据State Table的状态信息从DRAM中取得对应的编码符号。图4(b)为可扩展的译码器结构,State Table模块保持当前所有数据帧的接收和译码状态;Parse Frame模块根据数据帧的帧头信息和State Table对当前帧进行解析;DRAM模块存储接收到的编码符号;Spinal Decode模块从DRAM中得到对应帧的接收符号并完成译码,同时更新State Table;ACK Frame Group模块将每个数据帧的译码状态按照特定格式组合形成反馈信息。

通过这种可扩展的Spinal码的编译码器,能够在发送端和接收端对当前的编译码状态进行同步,确保在有限次反馈传输协议和多帧聚合协议下该系统的稳定运行。

4   仿真测试和性能分析

本文在不同的信道状态和调制模式下,对无速率Spinal码的通信系统进行了仿真和测试。仿真和测试参数见表1所列:

分别仿真对比了5 dB、10 dB和15 dB信噪比下不同调制模式的译码性能,具体见表2:

由表2可知,复数空间的译码方法中,不同γ值的16APSK和16QAM的译码性能接近。对实数空间下的译码方法,16QAM的译码性能在高信噪比时优于前者。对于64QAM而言,这种差异更加明显。

本文在实验室环境中,利用两台高性能服务器和USRP x310对该通信系统进行了译码性能仿真和测试,其中一台x310作为发送端,另一台x310作为接收端,两台USRP相距1 m,Back-off为-20 dB,噪声产生为纯软件方式,调制模式为16QAM和64QAM,译码性能如图5所示。在不同的信噪比下,16QAM和64QAM下实测和仿真的译码曲线性能接近,同等调制方式下,优于新一代卫星广播标准DVB-S2的ACM性能。由于卫星链路延迟较大,在接收端和发送端会缓存较多的数据,并且不断地进行交互确保收发端编译码状态同步,因此需要消耗一定的硬件资源以及设计对应的传输协议。

通过对Spinal码的通信系统进行仿真和测试,在不同的调制模式下的译码性能会有差异。相同的调制模式时,与复数空间译码方法相比,实数空间下的译码性能相对较好,随着调制阶数的提高,这种译码性能的区别逐步增大。在不同信噪比下,该系统能够自适应地调节发送编码符号的个数来匹配当前的信道状态,译码性能曲线呈现连续变化过程。

5   结束语

本文针对航天卫星通信领域中信道状态时变、ACM技术的频谱效率非连续,在AWGN信道模型下,通过对数据及反馈链路、组帧格式、码字映射方法以及编译码状态信息同步等方面进行研究,设计并实现了一种面向卫星通信的无速率Spinal码通信系统,该系统能够调整发送编码符号个数自适应当前的信道变化,有效地提高了系统的传输性能,同时也降低了系统设计的复杂度。后续工作主要是针对卫星链路传输延迟大的场景,还需要进一步优化编译码的算法、结构及数据传输协议等。

參考文献:

[1] Arapoglou P D, Ginesi A, Cioni S, et al. DVB-S2X enabled precoding for high throughput satellite systems[J]. International Journal of Satellite Communications and Networking, 2016,34(3): 439-455.

[2] Mehran F, Nikitopoulos K, Xiao P, et al. Rateless wireless systems: Gains, approaches, and challenges[C]//2015 IEEE China Summit and International Conference on Signal and Information Processing (ChinaSIP). IEEE, 2015: 751-755.

[3] Perry J, Iannucci P A, Fleming K E, et al. Spinal codes[C]//Proceedings of the ACM SIGCOMM 2012 conference on Applications, technologies, architectures, and protocols for computer communication. ACM, 2012: 49-60.

[4] Macedo D F, Guedes D, Vieira L F M, et al. Programmable networks From software defined radio to software-defined networking[J]. IEEE communications surveys & tutorials, 2015,17(2): 1102-1125.

[5] IEEE Std. 802.11-2016 (Revision of IEEE Std. 802.11-2012). Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications[S]. 2016.

[6] Nguyen D T. Implementation of OFDM systems using GNU Radio and USRP[Z]. 2013.

[7] Wang L, Chen X, Tan H. Research and Implementation of Rateless Spinal Codes Based Massive MIMO System[J]. Wireless Communications and Mobile Computing, 2018.

[8] Iannucci P A, Perry J, Balakrishnan H, et al. No symbol left behind: a link-layer protocol for rateless codes[C]//Proceedings of the 18th annual international conference on Mobile computing and networking. ACM, 2012: 17-28.