APP下载

基于SCA的新型软件无线电系统设计与实现

2019-06-25张彦宇方志军赵嵩源朱伏生

无线电通信技术 2019年4期
关键词:信号源外设信号处理

张彦宇,吴 俊,方志军,赵嵩源,朱伏生

(1.上海工程技术大学 电子电气工程学院,上海 201620;2.同济大学 电子与信息工程学院,上海 201804;3.广东省新一代通信与网络创新研究院,广东 广州 510000)

0 引言

SDR是一种无线电通信技术,使用软件设计代替传统的硬件电路实现无线通信协议,基于软件的重新编程,无需改变硬件就能快速灵活地完成不同波形和协议之间的切换[1]。SDR技术的优势包括强大的互操作性、易于制造和升级及绿色节能[2],主要被应用于互用性研究、频谱重用和新无线标准的开发等领域。但是当今软件无线电的性能仍受制于一些硬件组件的发展,例如理想的软件无线电要求模数转换尽可能靠近天线,而这依赖于模数转换器(ADC)的采样能力[3]。文献[4-5]使用软件无线电平台,以较低的成本和复杂度实现了调频连续波雷达系统,但是由于其所用模数转换器的采样率较低,导致整个系统只适用于对距离分辨率要求不高的场合。文献[6]使用一种传统的软件无线电外设HackRF结合软件平台GNU Radio,搭建了一种抗干扰能力强、兼容性突出的海上渔船数字通信系统。但是HackRF仅支持半双工通信,对于环境复杂、各种意外频发的海上来说,这种通信系统存在着极大的局限性。

SOUP是同济大学通信与智能计算(CIC)实验室面向5G通信自主开发的一种软件无线电外设。相比当今市面上主流的一些软件无线电外设,SOUP的综合性能更加优越,其内置一块FPGA处理芯片,能够提供高性能的数字信号处理能力,所配备的ADC采样精度高达12 bit。同时SOUP还支持多种扩展接口,如PCIe接口、万兆网口以及USB3.0 OTG等,可以满足不同通信网络对基带数据传输速率和实时性的要求。目前,实验室研究人员已经使用SOUP取得了不少研究成果,如文献[7]实现了一整套SoftCast广播系统,文献[8]实现了云无线接入原型。GNU Radio是一款免费、开源的SDR软件平台,也是当前最流行的SDR应用开发工具,它里面封装了非常多的可以重复使用的数字信号处理模块,如FFT变换、滤波器、调制解调器、同步元件和编解码器等[9]。本文尝试基于软件通信体系结构,将SOUP和GNU Radio结合以搭建一种新型SDR系统,该系统将集成SOUP强大的射频信号处理能力和GNU Radio丰富的数字信号处理软件库,为无线电研究人员提供一种低成本、高灵活性且扩展能力强的无线电开发平台。

1 SOUP及各外设对比

1.1 SOUP

SOUP主要面向移动通信系统的开发验证、实时通信系统的PHY层和MAC层开发等,支持Xilinx Vivado/ISE开发环境,并提供HDL编程接口,能够利用FPGA的嵌入式设计流程开发嵌入式软件无线电系统,并支持Matlab开发环境以设计无线通信系统。SOUP平台的结构组成如图1所示。

图1 SOUP结构组成

由图1可以看出,SOUP主要由数字基带母板、射频无线电子板、数据转接线以及相应的天线组成,其中射频无线电单元主要由高集成度的ADI捷变射频收发器AD9361构成,AD9361负责通过天线接收或发送无线电信号,其工作频谱范围覆盖极广,支持70 MHz~6 GHz频段,并支持模拟带宽200 kHz~56 MHz[10];可选择地采用PCIe2.0 X4作为与主机的通信接口,其最大吞吐量为128 Gbps和亚微秒级延迟[11-12]。或者采用万兆以太网接口,实现传输速率和传输距离的平衡;基带单元包含着一个Xilinx Virtex6 lx240T-2 FPGA,它具有1 GB DDR3 SDRAM,大容量的FPGA逻辑单元和板载缓存可以容纳更复杂的功能块,这为SOUP提供了高性能的数字信号处理能力[8],详细信息为:支持4收4发;32 G 板载 DDR3 cache;灵活的时钟处理结构;3路时钟自由选择;实时频偏矫正;高精度温补压控晶振。

1.2 各外设对比

目前市场上主流的软件无线电外设有USRP,HackRF,BladeRF等。SOUP与其他几种外设的各主要参数对比如表1所示。

表1 各外设参数对比

参数HackRFBladeRFX115USRPB210SOUP频谱范围30MHz~6GHz300MHz~3.8GHz50MHz~6GHz70MHz~6GHz最大带宽/MHz202861.4456双工HalfFullFull/2×2MIMOFull/4×4MIMO采样率/bit(ADC/DAC)8121212接口(Speed)USB2HSUSB3USB3PCIe2.0×4FPGA逻辑元素0115000150000750000

对于软件无线电而言,外设与主机的通信方式非常重要,因为它决定了数字信号数据传输的最大带宽和稳定性。其中USB2.0接口的最高数据传输速率仅为35 MB/s。USB3.0接口可以实现最高400 MB/s的传输速率。而在本系统中,SOUP将采用PCIe2.0×4作为与主机的通信接口,其最大吞吐量能够达到128 Gbps。

ADC的参数同样是决定软件无线电性能的重要因素之一。特别是ADC的量化精度,对于使用12 bit ADC的SOUP,其转换精度比使用8 bit ADC的HackRF要高16倍。

同时SOUP还配备2个AD9361作为无线电前端,使其能够同时支持4收4发通信[13]。用户能够通过PCIe背板将多台SOUP级联起来,结合时钟分配器,使多台SOUP级联构成更大规模的MIMO系统,以用于5G通信的大规模MIMO阵列研究。

2 SCA组成及特点

SCA是一种日渐成熟的开放式通用软件无线电开发框架,包含了硬件体系结构、软件体系结构、安全体系结构以及应用程序接口规范。但是它并不涉及具体的实现技术和外部硬件,只描述了面向对象的抽象硬件类,以及波形实现的软件操作环境[14]。SCA组成结构如图2所示,波形组件通过CORBA提供的逻辑总线相互交互并与核心框架交互[15]。在SCA的应用程序接口规范中,定义了应用程序接口(API)由2部分组成:由接口描述语言(IDL)定义的接口和这些接口的继承类,并使用统一建模语言(UML)详细描述了这些接口之间的关系,最后被波形应用程序调用而不用去关心波形组件内部的实现细节[16]。SCA的一个关键特性就是它允许不同的应用程序(波形或波形组件)在分布式处理单元上运行并相互通信[15]。

图2 SCA组成结构

3 总体设计

SOUP_GNU Radio总体设计架构如图3所示,分为发射机系统和接收机系统。

本系统将PCIe控制器桥接并在基带母板和主机之间,并采用直接访问内存(DMA)的方式完成SOUP与主机之间的数据传输。主机首先需要安装SOUP内核驱动程序,此内核驱动程序主要实现设备注册、文件操作注册、DMA缓冲区分配和管理、中断注册等工作。主机安装完内核驱动程序后,操作系统将识别SOUP作为一个字符设备,并像操作文件一样来对此系统外设进行操作[8]。同时GNU Radio也将通过内核驱动程序完成对SOUP的控制。

想要实现SOUP与GNU Radio之间的基带信号传输,就需要在GNU Radio中开发信号源模块和信宿模块,以用来采集和传送I/Q采样信号,同时控制发射机和接收机的一些参数,如传输功率、中心频率和带宽。

图3 SOUP_GNU Radio系统组成架构

在Ubuntu14.04 LTS操作系统中,首先安装GNU Radio,再利用GNU Radio自带的gr_modtool工具添加信号源模块和信宿模块。gr_mod-tool工具能够自动构建信号源、信宿模块的整体框架,再把AD9361的配置库写入GNU Radio的配置库中,并根据2个模块的功能和内容分别对其框架下的软件程序进行修改,最后还需要使用gr_modtool工具建立模块的图形化操作界面——GNU Radio伴侣(GNU Radio Companion,GRC),使用户能够直接通过图形化界面实时地对通信传输的相关参数进行修改。

新开发的信号源模块和信宿模块如图4所示,其中在信号源模块中有采样频率、中心频率和接收增益3个参数可以设置,接收增益可以下拉菜单进行模式选择,支持手动设置增益、快速/慢速自动增益。在信宿模块中可以直接对采样频率、中心频率和衰减系数进行设置。

图4 在GNU Radio中新添加的模块

4 系统测试

搭建的SOUP_GNU Radio软件无线电系统包括SOUP、GNU Radio、IntelE5-1620v4 3.5 GHz处理器、Ubuntu14.04 LTS系统、650 MHz全向天线、PCIe转接线和PCIe转接卡等。

对基于上述软件无线电开发平台实现的一种传统的模拟通信技术(宽带调频(WBFM)收发机)进行探讨。

接收机系统中,在GNU Radio上采用WBFM接收模块用于解调接收信号,音频接收模块用于解析声音,Scope Sink模块和FFT接收器模块分别用于查看接收信号的时域图和频谱图。这里将接收机的采样率和中心频率分别设置为3.84 MHz和上海交通广播电台频率(105.7 MHz)。实验结果证明,用户可以在程序运行过程中通过编辑信号源模块中的Sample Rate变量的值来实时改变采样率,也可以在接收过程中通过拖动WX GUI Slider模块中的滑块或者编辑WX GUI Slider模块中Default Value变量的值来实时改变中心频率。调频接收机的GRC流程图如图5(a)所示,接收到的实时广播信号如图5(b)所示。

调频发射机的GRC流程图和发射信号如图6(a)和图6(b)所示。采用.wav格式的无损本地音频源作为发射信号源,发射机采样率同样设置为3.84 MHz,同时将工作中心频率设置为109 MHz,以避开本地其他广播频率。

图5 SOUP_GNU Radio接收机

图6 SOUP_GNU Radio发射机

5 结束语

使用SOUP作为软件无线电系统的硬件平台,GNU Radio作为软件平台,设计并实现了一种基于通用软件无线电开发框架SCA的新型软件无线电系统。这种系统为无线电研究人员提供了一个门槛低、成本小、周期短、使用方便的无线电开发平台。相对于其他几种主流的软件无线电平台,SOUP_GNU Radio的综合性能更优,研究人员可以在此平台上快速建立无线电通信系统,以开发和验证通信算法和无线协议。为进一步提高SOUP及本系统的信号处理能力,并努力向理想的软件无线电靠近,下一步可使SOUP配置AD9371,并使用性能更加强大的内核处理器。该系统已作为实验室无线电研究人员进行无线通信开发的有效工具,通信专业相关学生进行传统通信实验的便捷平台,获得了良好的应用效果。

猜你喜欢

信号源外设信号处理
专题征稿启事
——信号处理
VR技术在船舶通信系统天线信号源驻波检测中的应用
基于MATLAB的语音信号处理
基于DSP的电子侦察信号处理技术的探析
一种激光/无线电复合引信信号处理技术
浅析发射机房前段信号源故障
一种基于DDS的信号源的设计与实现
外设天地行情
外设天地行情
外设天地行情