基于GNU Radio的窄带卫星收发信机研究与实现

2016-05-14 03:40林广荣林新荣高时汉褚庆昕
移动通信 2016年8期
关键词:窄带射频卫星

林广荣 林新荣 高时汉 褚庆昕

基于通用处理器的软件无线电技术,使用高级程序语言实现无线电通信中的信号处理功能,这能够更好地复用硬件平台和提升开发效率。文章基于开源的软件无线电平台GNU Radio,给出了一种软件无线电架构的窄带卫星收发信机的工程实现方案,并通过实际上星测试验证了方案的可行性,可为卫星通信产品的研发提供测试和验证的途径。

软件无线电 GNU Radio 卫星通信

1 引言

卫星通信具有通信范围广、无需建设地面基站等优点,是重要的战略通信手段。随着通信技术的发展,卫星通信从简单的点到点通信,逐步向复杂星状/网状组网、多波束移动通信等方向发展。但由于未能像地面移动通信一样形成统一的空口标准,导致卫星通信的体制和设备种类繁多,终端厂商研发成本巨大。

软件无线电(SDR)[1-2]的基本思想是以通用的硬件平台为依托,通过软件编程实现无线电台的各种功能。因此,将软件无线电技术应用到卫星通信领域,有助于降低卫星设备的硬件升级成本和研发周期。此外,软件无线电的上述特性也可用于实现通用的卫星终端测试和验证设备/平台,支撑卫星通信终端产品的研制。

本文提出了一种软件无线电架构的窄带卫星收发信机实现方案。本文的第2节介绍了一种基于通用处理器的软件无线电平台GNU Radio,并与其它常用的软件无线电架构/平台进行了比较。第3节基于上述平台,提出了一种窄带卫星收发信机的工程实现方案,在第4节通过实际上星测试,验证了方案的可行性。

2 GNU Radio与USRP平台

2.1 GNU Radio软件平台

GNU Radio[3]是一个基于通用处理器(GPP)的软件无线电开发平台。得益于其开放源代码和配套硬件外设价格低廉的特点,GNU Radio在无线电开发社区和教育机构得到了广泛的应用[4-6]。与非GPP SDR的差异在于,GNU Radio在通用处理器上实现绝大部分的信号处理工作,使用高级程序语言进行开发,可以运行在通用PC上。

GNU Radio的软件架构如图1所示。平台运行在Linux操作系统上,信号处理功能由底层的C++和上层的Python代码共同实现[7]。其中,运行效率较高的C++代码实现信号处理的功能,Python脚本则实现各子模块的连接。平台提供了常用的信号处理模块库以及图形化的编辑和仿真界面。但受限于GPP串行执行的特点,GNU Radio更适合对处理速度要求较低的窄带无线通信系统。

2.2 USRP通用硬件外设

USRP[8]的全称是通用软件无线电外设,是由Ettus公司开发,与GNU Radio软件搭配使用的硬件平台。USRP同样为开源项目,可获得其硬件电路图和FPGA源代码。

USRP的组成框图如图2所示,由主板和射频子板组成,主板的核心是Cyclone系列FPGA芯片、多个通道的高速ADC、DAC和千兆以太网控制器(旧型号USRP为USB控制器)。其中,FPGA通过级联积分梳状滤波器实现数字下变频,上变频器DUC则集成在DAC芯片中。射频子板模拟中频和射频的变换,不同型号的射频子板对应不同的频段。因此,通过USRP和PC组成的通用硬件系统,搭配不同的软件代码,就能够实现不同频段、不同体制和不同指标的无线电设备降低硬件成本,提高使用灵活性的功能。

2.3 与SCA等其它软件无线电技术的比较

美军提出的软件通信体系框架(SCA)是软件无线电领域最有名的规范之一。SCA在FPGA、DSP和GPP等器件上构建了可隔离硬件差异的软件编程框架,使设计师可专注于通信组件的软件实现,大大降低了硬件细节对开发过程的影响。GNU Radio则属于GPP-SDR,用高性能的通用处理器取代了DSP和FPGA中的大部分工作(USRP中的FPGA仅用于实现对处理速度要求较高、通用性较强的高速滤波处理)。通用处理器的开发由于采用高级程序语言进行,开发效率和扩展性高于DSP和FPGA,在开发对性能要求不高的原理样机或测试设备时具有优势。

微软开发的SORA[9]是另一款优秀的GPP-SDR平台,运行于Windows系统和兼容Windows的硬件平台,同样提供配套的硬件板卡(RCB)和射频模块,微软在该平台上已实现了802.11a/g标准。但这一平台并不开放源代码,只提供软件SDK。与之相比,GNU Radio和USRP均采用开源模式,便于开发者改进硬件,深入优化定制软件。因此,本文选用GNU Radio和USRP作为窄带卫星收发信机的实现平台。

3 窄带卫星收发信机设计

基于GNU Radio和USRP平台,本文设计了一个窄带卫星收发信机方案,用于验证该平台在卫星通信领域的可行性。目前,国内窄带卫星通信系统体制以FDMA为主,宽带卫星广播以TDMA为主。由于GPP平台使用普通PC机,运算能力有限,因此收发信机的方案选择了窄带系统中经典的单路单载波(SCPC)体制。根据USRP支持的采样率,信道符号速率定为24.414ksps,与目前正在发展中的自主卫星移动通信系统相当。

3.1 发射机设计

发射机主要由信道编码、信道组帧、数字调制、成形滤波等模块组成,组成框图如图3所示。图3中,最左侧的链路帧发送模块为接口模块,用于与链路层对接;信道编码采用码长为140的RS系统码,每个编码块可承载两个链路帧;信道组帧模块的主要功能是对编码数据插入同步头,便于接收机进行帧同步,同步头为63比特的小m序列;为简化接收机设计,数字调制采用差分二进制相移键控;成形滤波则采用8倍插值的平方根升余弦滤波器。

图3中的数字上变频、数模转换和上变频由USRP中的FPGA、DAC芯片和射频子板完成,仅需在GNU Radio平台提供的图形化开发界面中插入USRP Sink模块,设置正确的符号率和射频中心频点即可。

3.2 接收机设计

接收机主要由非相干解调、匹配滤波、帧同步和信道解码等模块组成,具体如图4所示。整个接收过程是信号发射的逆过程。

图4中的下变频、模数转换和数字下变频同样由USRP硬件完成。由于发射机采用了差分BPSK,接收机可使用延迟相乘的方法实现非相干解调;匹配滤波模块采用与发射机同样的平方根升余弦滤波器;帧同步模块通过对同步头进行相关操作,确定信道帧的准确起始位置;解码模块用于纠正因噪声或频偏等因素带来的信道误码。

3.3 链路层接口设计

发射机设计中的链路层接口模块用于在链路层和物理层间交互数据。在GNU Radio系统中,输入模块必须设为同步模块的形式(否则难以进行速率控制),即按照系统的数据流节拍(可理解为采样节拍)调度,而链路层属于异步系统。因此,接口模块采用了消息队列加软件二选一开关的方式实现,具体如图5所示:

当链路层需要发送数据时,通过(Python脚本实现的)虚拟TUN接口向消息队列中写入数据帧。接口模块根据系统的采样节拍(在图5中画成了时钟形式,以便于理解),定时检查消息队列是否为空。若存在链路帧,就将其输出;若不存在链路帧,则输出等长的全零数据。全零数据在进行差分调制后会形成“0101”序列,因此不会导致直流分量。

4 上星测试与分析

4.1 基带自环测试

GNU Radio平台支持用户在计算机上进行软件自环或连接USRP设备进行射频环。软件自环时,只需要在信号流图中,将成形滤波模块与非相干解调模块直联即可,等效于使用仿真软件进行系统仿真。进行射频环时,若不连接卫星模拟转发器,USRP的发射和接收频点应设为相同值。

进行两种自环测试时,窄带卫星发射机和接收机可成功通信。其中,软件自环时,不加噪或用噪声模块叠加小幅高斯白噪声(信号幅度比白噪声幅度高约15dB),未检测到误码。由于本文并未涉及通信算法研究,且USRP平台自身的性能指标(包括载漏、频偏、硬件底噪等)并不理想,本节中仅对通信功能进行了测试,未定量测试性能指标。

4.2 上星实测与分析

上星测试时,选用了L频段的地球同步轨道GEO卫星进行中转。由于通信距离极远,需要在USRP设备外级联功放(发射端)、低噪放(接收端)、双工器和天线,均采用商用VSAT产品的标准设备。射频中心频点选取在1GHz附近,收发频差250MHz。

收发信机软件通过USRP和整个卫星链路后成功自发自收,未检测到误码(共计收发400 000比特)。

在测试中,通过频谱仪观测卫星下行信号发现,USRP的射频部分存在严重载漏(幅值已略大于用户信号)。为减小载漏的影响,本文改用非零中频方案,即在发射机端添加数字上变频模块,将用户信号小幅度搬移,从而使得载漏处于信号带外。图6、图7即为进行了信号搬移后的收发信号频谱。为方便对比,发射机在调制信号频带的右侧附加了一个等功率的单音信号,如图6中的虚线圆圈处所示。对比收发信号的频谱可以看出,载漏信号(如图6的点划线圆圈内)的幅度已大于该单音信号幅值。但此时载漏不在有用信号带内,可通过滤波消除其影响。

同时,对比图6、图7可以看出,GNU Radio采样信号计算得出的频谱与实际频谱基本一致。通过卫星链路后,用户信号中叠加了比信号幅度小约15dB的白噪声,但未对接收机的接收和解码造成影响。

5 结束语

本文提出了一种软件无线电架构的窄带卫星收发信机方案,并基于GNU Radio和USRP平台进行了实现。上星测试的结果表明,该方案能够在实际的GEO卫星环境下实现通信功能。USRP设备通过更换射频子板,其发射/接收频段可以从1MHz一直延伸到3GHz,具备很强的硬件通用性;而GNU Radio通过高级语言编程,能够高效地实现不同通信体制。因此,在卫星通信领域,这一技术很适合用于搭建物理层原型系统、验证体制以及辅助测试上层网络协议[10],或者是用于实现终端测试设备,支撑卫星终端产品的研发。

但在测试中,该平台也暴露出性能方面的不足。如载漏过大、时钟精度差等问题,难以用于对系统性能的评估。如何完善该平台的射频性能指标,也可作为后续研究的方向。

参考文献:

[1] MITOLA J. Software radios: survey, critical evaluation and future directions[J]. Aerospace and Electronic Systems Magazine, IEEE, 1993,8(4): 25-36.

[2] 杨小牛,楼才义,徐建良. 软件无线电原理与应用[M]. 北京: 电子工业出版社, 2010.

[3] 曹瀚文,王文博. GNU Radio:开放的软件无线电平台[J]. 电信快报, 2007(4): 31-34.

[4] 闫龙,王智海,祁兵. 基于GNU Radio的230MHz多通道主站电台的设计[J]. 电力系统保护与控制, 2010,38(9): 100-104.

[5] 赵楠,武明虎,周先军,等. 基于GNU Radio和USRP的宽频带并行感知平台设计[J]. 计算机应用研究, 2015,32(12): 3779-3789.

[6] 杨宏,孔耀晖,茹晨光,等. 基于GNU Radio和USRP的无线通信系统建模仿真[J]. 现代电子技术, 2013,36(18): 73-77.

[7] Blossom E. How to Write a Signal Processing Block[EB/OL]. [2016-03-19]. http://www.gnu.org/software/gnuradio/doc/howto-write-a-block.html.

[8] ETTUS M. Universal software radio peripheral (USRP) [EB/OL]. [2016-03-19]. http://www.ettus.com.

[9] Kun Tan, Jiansong Zhang, Ji Fang, et al. Sora: High Performance Software Radio Using General Purpose Multi-core Processors[A]. NSDI 2009[C]. Boston, MA, USA: USENIX, 2009: 75-90.

[10] 雷杰,赵熠飞,黄敏,等. 基于GPP SDR的LTE系统RLC协议层实现研究[J]. 移动通信, 2011(2): 45-50.

猜你喜欢
窄带射频卫星
5G OTA射频测试系统
miniSAR遥感卫星
关于射频前端芯片研发与管理模式的思考
静止卫星派
热轧窄带钢Q345B微合金化生产实践
无线通信中频线路窄带临界调试法及其应用
ALLESS转动天线射频旋转维护与改造
Puma" suede shoes with a focus on the Product variables
腹腔镜射频消融治疗肝血管瘤
基于压缩感知的窄带干扰重构与消除