当前的无线通信系统通常采用多种调制方式,以便根据信道状况动态调整传输参数,提高频谱利用效率[1]。在此类系统中,接收端必须事先知道发送端具体采用了哪种调制方式,才能正确解调信号。收发两端的调制信息交互,一般是通过控制信道实现的;这样会引入一些额外的传输开销[2]。此外,在一些特定领域中,例如认知无线电和电子对抗应用,接收端可能无法通过上述方法获得所需的调制信息[3- 4]。因此,研究能够在未知调制方式的条件下完成信号解调的盲解调系统,具有十分重要的应用价值。
盲解调系统首先分析接收信号,识别出其中的调制方式;然后再根据识别结果改变解调方式,完成信号的正确解调。在调试方式识别领域,传统研究可分为基于似然函数和基于特征的两大类[5]。前者的理论基础为贝叶斯检测,例如基于平均似然比[6]和广义似然比[7]的方法;后者首先提取特征,然后利用分类器进行判决,例如基于高阶统计量[8-9]和支持向量机[10-11]的方法。基于似然函数的识别方法虽然可以获得较高的识别精度,但计算复杂度过高,因此主流的都是基于特征的识别方法。然而,基于特征的方法也存在着识别精度不高和需要手动提取特征等弊端,限制了它在实际系统中的广泛应用。在可变解调器领域,文献[12]中提出了一种用于解调正交相移键控(Quadrature Phase Shift Keying, QPSK)信号的数字解调器,此解调器只需改变部分电路结构,就可以完成正交幅度调制(Quadrature Amplitude Modulation, QAM)信号的解调工作。文献[13]设计了一种通过改变环路滤波器的参数同时解调QPSK与八进制相移键控(8 Phase Shift Keying, 8PSK)信号的数字解调器。但是,以上这些可变解调器均受硬件结构的限制,难以拓展实现其他调制方式的解调,通用性比较差。
深度学习(Deep Learning, DL)源于人工神经网络的研究,它通过组合低层特征形成更加抽象的高层特征,以发现数据的分布式特征表示[14]。近年来,深度学习已广泛应用于语音识别、图像识别、自然语言处理等领域,并取得了较好的效果。受此启发,一些课题组也开始利用深度学习处理通信信号,完成调制方式识别等任务。文献[15]提出了利用深度神经网络(Deep Neural Network, DNN)对无线电信号进行分类。在文献[16]中,本课题组将接收信号表征为星座图,并利用卷积神经网络(Convolutional Neural Network, CNN)识别信号的调制方式。在此基础上,文献[17]使用辅助分类器对抗生成网络(Auxiliary Classifier Generation Against Network, ACGAN)来改善CNN在调制方式识别时遇到的数据不足和过拟合问题。软件无线电是用现代化软件来操作和控制传统“纯硬件电路”的无线通信技术[18]。随着软件技术的发展和硬件水平的提高,软件无线电也在不断进步,涌现出HackRF、BladeRF、通用软件无线电外设(Universal Software Radio Peripheral, USRP)等成熟平台,已应用于智能天线、多频多模手机、卫星通信等众多领域。
本文在课题组前期工作的基础上,利用深度学习技术与软件无线电技术搭建了一套盲解调系统,主要贡献包含:(1)完善了文献[16]的研究成果,构建了基于CNN的调制方式识别器,并将其用于实际通信系统中;(2)采用软件无线电平台实现了可重构的解调器,能够根据接收信号调制方式的不同,自适应地改变解调方式。与传统的盲解调系统相比,本系统有诸多优势:基于深度学习的调制方式识别器,一方面可以充分利用通信大数据,提高识别精度,另一方面可以避免手动特征提取,弥补了传统方法的不足;基于软件无线电的可变解调器,可以使系统摆脱硬件条件的束缚,根据需求不断升级和扩充功能,还便于实现不同系统间的互联和兼容。
本文剩余部分结构安排如下:第2部分介绍系统的整体设计思想;第3部分讨论基于深度学习的调制方式识别器;第4部分研究基于软件无线电的可变解调器;第5部分给出系统测试结果;第6部分对全文进行总结。
本文讨论的基于深度学习和软件无线电的盲解调系统,包含调制方式识别器和可变解调器两部分。其中,调制方式识别器基于深度学习技术实现,可变解调器基于软件无线电技术实现。如图1所示。
图1 系统结构框图
Fig.1 System block diagram
系统接收到未知调制方式的已调信号后,首先利用调制方式识别器分析出信号采用的调制方式,并将识别结果送给可变解调器;可变解调器获得调制信息后,自适应地改变解调方式,完成对接收信号的解调工作。
在本文中,我们以二进制相移键控(Binary Phase Shift Keying, BPSK)、QPSK和8PSK三种调制方式为例,介绍整套盲解调系统。此外,不同与文献[15-17]的研究,我们还从实际应用出发,增加了没有任何信号发送的纯噪声场景。
在文献[16]中,本课题组考虑到不同调制方式具有不同的星座图样式,提出了将接收信号表征为星座图、再通过图像识别完成调制方式识别的思想。方便起见,本文以该算法为例构建调制方式识别器。如果选择其他基于深度学习的算法,系统设计可按照类似的方式进行。
需要指出的是,文献[15-17]中的算法,均需要已知信号的信噪比(Signal to Noise Ratio, SNR)信息。但在实际的盲解调系统中,SNR信息往往是未知的,因此上述算法难以直接应用。
为了解决该问题,本文不按照SNR的不同训练多个不同的分类器,而是将同一信号在各种SNR条件下的数据归为一类进行训练,从而消除对先验SNR信息的依赖。
根据文献[16]的思想,数据预处理就是将接收信号表征为星座图的过程。
本文首先控制发射机发送BPSK、QPSK和8PSK三种调制信号的一种或者不发送信号,同时利用USRP平台直接从空口接收信号[19]。接收到的信号为数字复信号。我们然后利用Costas环[20]对接收信号进行载波同步,选取其中的1000个采样点,并对其功率归一化。接着我们将这些采样点描绘到复平面上;由于复平面是无限延伸的,只截取了以原点为中心的7×7的区域用于生成星座图[16]。最后,根据网络需要,将生成的星座图保存为分辨率227×227的图片用于后续使用。图2为实际生成的BPSK、QPSK、8PSK调制信号以及纯噪声的星座图。
图2 实际生成的星座图
Fig.2 Constellation diagrams generated in real scenario
(1)数据集生成。为了生成训练数据集,本文分别选取BPSK、QPSK和8PSK三种调制信号以及纯噪声信号的星座图各8000张作为训练集,各1000张作为验证集。其中,每种信号的数据集都包含了多种SNR条件,具体产生方法如下:在实际场景中,保持收发两端的增益不变,从1 m到10 m不断改变收发两端的距离,每隔1 m分别生成BPSK、QPSK和8PSK三种调制信号以及纯噪声信号的星座图各1000张作为数据集。之后将BPSK、QPSK、8PSK调制信号以及纯噪声信号的星座图分别打上0、1、2、3的标签。
(2)网络结构。简单起见,本文采用基本的AlexNet网络结构[21]。为了使该网络适于本任务,我们保持其前七层不变,将第八层全连接层中的输出参数从默认的1000改为4。
(3)超参数设置。通过实验调整,本文网络训练的超参数设置如表1所示。
整个训练过程在Ubuntu16.04、Caffe、CUDA和Nvidia GTX1080Ti平台下进行,每次耗时1个小时左右,之后即可得到用于识别接收信号调制方式的深度学习网络模型。
表1 训练超参数设置
Fig.1 Training hyperparameter settings
参数取值激活函数ReLu函数基础学习率10e-4训练步长128最大迭代次数20000
本文用于实现可变解调器的软件无线电模块,是基于GNU Radio 3.7.12.0的软件平台与Ettus USRP B210的硬件外设来实现的[22]。其中,USRP B210主要负责接收信号,并利用内部的模数转换器对接收信号进行模数转换,然后利用内部的现场可编程门阵列对转换后的数字信号进行下变频。而GNU Radio软件平台主要负责对下变频后的信号进行滤波、同步、解调、解码等处理工作。
为了便于根据调制方式的不同改变解调方式,本系统的解调器是基于GNU Radio完成的。GNU Radio软件平台自带多种通信和信号处理模块,可以大大减轻系统开发的工作量[23]。
在GUN Radio平台上,我们首先利用“USRP Source”模块接收已调信号,然后调用“PSK Demod”模块对接收信号进行解调,再通过“Packet Decoder”模块完成数据解包,最后使用“File Sink”模块将数据包中的信息保存到文件中。其中,“PSK Demod”模块有一个关键参数Number of Constellation Points;只要将该参数分别设为2、4、8,就可以相应地完成BPSK、QPSK、8PSK信号的解调。
如图3所示,为了实现解调方式随调制方式自适应调整,我们将“USRP Source”模块接收到的信号分成两路,一路用于4.2节所述的信号解调,另一路用于信号调制方式识别。
图3 可变解调器原理框图
Fig.3 Block diagram of variable demodulator
在调制方式识别的支路,接收信号首先通过Costas环进行载波同步,然后截取1000个采样点绘制星座图;此过程与数据预处理过程类似。获得信号的星座图后,我们将其送入3.3节训练出的网络模型中进行识别,并输出0、1、2或3的结果给信号解调支路的“PSK Demod”模块,分别代表识别结果为BPSK、QPSK、8PSK和纯噪声信号。如果“PSK Demod”发现信号调制方式与现有解调方式不同,就会通过改变Number of Constellation Points参数重构解调器;如果发现接收信号为纯噪声,则会暂停解调,直至重新识别到新的调制信号为止。
需要指出的是,上述识别和调整过程会持续不断进行,以保证信号类型发生变化后,解调器能够及时作出反应。
为了测试本文设计并搭建的基于深度学习和软件无线电的盲解调系统,我们利用USRP和GNU Radio另外开发了一台调制方式可变的信号发射机。该发射机运行在2.4 GHz频点,发送增益设为最大值,可选的调制方式为BPSK、QPSK和8PSK。如果发射机开始工作,它会持续发送“Hello World!”数据包,采用的调制方式可手动切换。发射信号由本系统的USRP接收,其工作频点也相应地设为2.4 GHz,接收增益设为55 dB,采样率设为200 kHz。
图4给出了发射机的调制方式由BPSK切换为QPSK前后,盲解调系统的现场测试结果。子图(a)为实际测试场景的现场拍摄图片;子图(b)显示,系统绘制出的信号星座图已经改变为4星座点样式;子图(c)显示,调制方式识别结果也由BPSK变成了QPSK;子图(d)同时显示,尽管信号调制方式发生了变化,本系统依然能够正常接收并解调数据,达到了设计要求。
为了进一步测试本系统的性能,我们对训练出的用于调制方式识别的网络模型进行了测试。每种类型信号都进行了1000次测试。表2给出了测得的混淆矩阵。从表上不难看出,本文训练出的模型对四种信号的识别精度都在99%以上;其中相对较差的是纯噪声信号,它容易被误识别为8PSK调制信号。识别出错的原因可能是实际测试环境中的信噪比过低或者测试时有突发干扰产生。
图4 系统测试结果
Fig.4 System test results
此外,表2中还给出了利用文献[16]中的方法训练出的网络模型的测试结果。该方法选用某个特定距离下产生的星座图进行模型训练;训练完成后,同样利用本文的数据进行测试。如表2所示,文献[16]方法的精度低于本文方法。这是因为文献[16]进行模型训练时,只选用了特定距离下产生的星座图(信噪比单一的星座图)作为数据集;而本文方法将多种距离下产生的星座图(多种信噪比的星座图)混合在一起作为数据集,因此训练出的网络模型更具鲁棒性。
表3验证了不同接收距离下,本系统对各种调制信号的盲接收效果。其中,每种调制方式均发送1000帧“Hello World!”数据;通过“File Sink”模块保存的结果,我们可以统计出有多少帧数据被正确地解调。如表3所示,本系统无论接收距离为5 m还是10 m,都可以在未知发送信号调制方式的条件下,以超过90%的概率正确接收和解调数据。当接收距离由5 m增大到10 m时,正确率有所降低;这是因为接收信号的功率会随着距离的增大而衰减。此外,相同距离下,BPSK、QPSK和8PSK的正确率依次递增;这是因为高阶调制利用较少的符号就能将数据包传输完毕,受实际信道影响更小。
表2 调试方式识别精度
Tab.2 Accuracy of modulation identification
信号类型BPSKQPSK8PSKNone本文正确率文献[16]正确率BPSK99910099.9%88.5%QPSK29944099.4%83.7%8PSK0010000100%91.3%None00999199.1%98.7%
表3 系统接收性能
Tab.3 System receiving performance
距离/m信号类型发送帧数正确接收正确率5BPSK100091991.9%QPSK100095595.5%8PSK100097997.9%10BPSK100090890.8%QPSK100093893.8%8PSK100097397.3%
最后,表4给出了本系统的信号识别速度和解调方式切换速度。其中,每种信号的平均识别时间由1000次测试得到;解调方式切换时间,指的是解调器由暂停解调状态切换到相应解调方式的时间,也由1000次测试平均得到。很明显,本系统对四种信号都能实现快速识别,每种信号的平均识别时间均不超过0.04 s,而且相差不大。由于解调方式的切换需要重新配置接收链路,所以耗时相对较长,但也不超过1.24 s;多种调制方式对应的平均切换时间也几乎一样。总而言之,本系统对调制方式的改变能够及时作出反应。
表4 信号识别与调方式切换速度
Tab.4 Speed of signal identification and demodulation switchover
调制方式平均识别时间/s平均切换时间/sBPSK0.03931.235QPSK0.03961.2338PSK0.03951.232None0.0387/
本文设计并实现了一套基于深度学习和软件无线电的盲解调系统。该系统利用训练好的深度学习网络模型识别出信号的调制方式,然后根据识别结果在软件无线电平台上重构解调器,从而在未知调制方式的条件下正确完成接收信号解调。与传统的盲解调系统相比,本系统调制方式识别精度高,不需要手动提取特征,并且系统功能易拓展升级,通用性强。此外,在调制方式识别速度和解调方式切换速度方面,本系统具有良好的性能。
需要指出的是,本文只是以三种调制方式为例,介绍基于深度学习和软件无线电的盲解调系统。如果要拓展至更多的调制方式,只需要基于当前系统,在调制方式识别器的网络模型训练中,增加额外的调制信号;同时在可变解调器部分,增加相应的解调模块。
[1] Sampei S, Harada H. System Design Issues and Performance Evaluations for Adaptive Modulation in New Wireless Access Systems[J]. Proceedings of the IEEE, 2007, 95(12): 2456-2471.
[2] Kwon T, Cho D H. Adaptive-Modulation-and-Coding-Based Transmission of Control Messages for Resource Allocation in Mobile Communication Systems[J]. IEEE Transactions on Vehicular Technology, 2009, 58(6): 2769-2782.
[3] Kakalou I, Psannis K E, Krawiec P, et al. Cognitive Radio Network and Network Service Chaining toward 5G: Challenges and Requirements[J]. IEEE Communications Magazine, 2017, 55(11): 145-151.
[4] Kim D G, Park G H, Park J O, et al. Computationally Efficient TDOA/FDOA Estimation for Unknown Communication Signals in Electronic Warfare Systems[J]. IEEE Transactions on Aerospace & Electronic Systems, 2018, PP(99): 1-1.
[5] Dobre O A, Abdi A, Bar-Ness Y, et al. Survey of automatrendstic modulation classification techniques: classical approaches and new trends[J]. IET Communications, 2007, 1(2): 137-156.
[6] Wei W, Mendel J M. Maximum-likelihood classification for digital amplitude-phase mtodulations[J]. IEEE Transactions on Communications, 2000, 48(2): 189-193.
[7] Panagiotou P, Anastasopoulos A, Polydoros A. Likelihood ratio tests for modulation classification[C]∥Milcom Century Military Communications Conference. IEEE, 2000.
[8] Swami A, Sadler B M. Hierarchical Digital Modulation Classification Using Cumulants[J]. IEEE Trans Commun, 2000, 48(3): 416- 429.
[9] 党月芳, 徐启建, 张杰, 等. 高阶累积量和分形理论在信号调制识别中的应用研究[J]. 信号处理, 2013, 29(6): 761-765.
Dang Yuefang, Xu Qijian, Zhang Jie, et al. Application of Higher Order Cumulant and Fractal Theory in Signal Modulation Recognition[J]. Journal of Signal Processing, 2013, 29(6): 761-765.(in Chinese)
[10] 廖东平, 魏玺章, 黎湘, 等. 一种改进的渐进直推式支持向量机分类学习算法[J]. 信号处理, 2008, 24(2): 213-218.
Liao D P, Wei Y Z, Li X, et al. An Improved Progressive Direct Push Support Vector Machine Classification Learning Algorithm[J]. Signal Processing, 2008, 24(2): 213-218.(in Chinese)
[11] Luts J, Ojeda F, Plas R V D, et al. A tutorial on support vector machine-based methods for classification problems in chemometrics[J]. Analytica Chimica Acta, 2010, 665(2): 129-145.
[12] Dick C, Harris F, Rice M. FPGA Implementation of Carrier Synchronization for QAM Receivers[J]. Journal of Vlsi Signal Processing Systems for Signal Image & Video Technology, 2004, 36(1): 57-71.
[13] Yan X, Wang Q, Qin K. Frequency pre-estimation aided carrier recovery algorithm for high-speed M-PSK communication[C]∥IEEE Singapore International Conference on Communication Systems. 2009.
[14] Heaton J. Ian Goodfellow, Yoshua Bengio, and Aaron Courville: Deep learning[J]. Genetic Programming & Evolvable Machines, 2017, 19(1-2): 1-3.
[15] O″Shea T J, Roy T, Clancy T C. Over-the-Air Deep Learning Based Radio Signal Classification[J]. IEEE Journal of Selected Topics in Signal Processing, 2018, 12(1): 168-179.
[16] Shengliang P, Hanyu J, Huaxia W, et al. Modulation Classification Based on Signal Constellation Diagrams and Deep Learning[J]. IEEE Transactions on Neural Networks and Learning Systems, 2018: 1-10.
[17] Tang B, Tu Y, Zhang Z, et al. Digital Signal Modulation Classification With Data Augmentation Using Generative Adversarial Nets in Cognitive Radio Networks[J]. IEEE Access, 2018, 6: 15713-15722.
[18] Darmetko M, Kozowski S, Kurek K, et al. Adaptive communication system using software defined radio[C]∥International Microwave & Rf Conference. 2016.
[19] Dörner S, Cammerer S, Hoydis J, et al. Deep Learning Based Communication Over the Air[J]. IEEE Journal of Selected Topics in Signal Processing, 2018, 12(1): 132-143.
[20] Song X O. Analysis and Implementation of Modified Costas Loop for QPSK[C]∥International Conference on Intelligent Networking & Collaborative Systems. 2015.
[21] Alom M Z, Taha T M, Yakopcic C, et al. The History Began from AlexNet: A Comprehensive Survey on Deep Learning Approaches[J]. 2018.
[22] Tucker D C, Tagliarini G A. Prototyping with GNU radio and the USRP-where to begin[C]∥Southeastcon, Southeastcon 09 IEEE. 2009.
[23] https:∥wiki.gnuradio.org/index.php/Guided_Tutorial_PSK_Demodulation.
Reference format: Chen Zheng, Peng Shengliang, Li Huanhuan, et al. Research on Blind Demodulation System Based on Deep Learning and Software Defined Radio[J]. Journal of Signal Processing, 2019, 35(4): 649-655. DOI: 10.16798/j.issn.1003- 0530.2019.04.016.
陈 铮 男, 1995年生, 江苏徐州人。华侨大学信息科学与工程学院硕士研究生, 主要研究方向为无线通信、认知无线电。
E-mail: 843791874@qq.com
彭盛亮(通讯作者) 男, 1982年生, 博士, 华侨大学信息科学与工程学院, 副教授。2011年毕业于东南大学移动通信国家重点实验室。2016至2017年国家公派赴“Stevens Institute of Technology”访学。研究领域涉及无线通信和通信信号处理, 主要研究方向包括认知无线电、深度学习、低功耗广域物联网等。近五年主持国家自然科学基金项目1项, 参与国家自然科学基金项目5项, 主持其他纵向及企业课题多项。相关研究成果已在多种国际期刊和会议上发表, 其中SCI/EI检索20余篇;获国家发明专利授权5项, 实用新型专利5项。
E-mail: peng.shengliang@hqu.edu.cn
李焕焕 女, 1994年生, 江苏徐州人。华侨大学信息科学与工程学院硕士研究生, 主要研究方向为无线通信、认知无线电。
E-mail: lihuanhuanwu@sina.com
秦雄飞 男, 1993年生, 湖北鄂州人。华侨大学信息科学与工程学院硕士研究生, 主要研究方向为无线通信、认知无线电。
E-mail: 741289820@qq.com