从零开始学SDR系列:软件无线电的开发工具

来源:微波射频网mp 2022年03月06日 14:57

跟着软件无线电技能的展开,智能无线电技能逐步成为通讯范畴重视的热门,并给无线通讯带来新的展开空间。讲座将分为3 期对智能无线电技能技能进行介绍:本期第3 期介绍了软件无线运用中的多种开发东西。

软件无线电的开发东西

软件无线作业者期望依据一款通用的渠道将功用软件化,并能够经过软件晋级来完结体系的晋级。考虑到软件无线电的软件功用离不开硬件设备,所以关于软件无线电的开发东西,能够分为3 类:

· 底层硬件的程序规划软件。该软件能够用于例如现场可编程逻辑门阵列(FPGA)开发Xilinx ISE 规划套件软件、用于数字信号处理(DSP)开发的TI CCS 软件以及Matlab/Simulink 等。

· 依据特定通用渠道的开发软件。这类东西开端具有软件无线电的性质,例如第2 期中说到的依据通用软件无线电外设(USRP)的开源软件界说无线电(GNU Radio)等。

· 依据软件通讯体系架构(SCA)的软件无线电(SDR)开发东西。这是最接近软件无线电思维的开发东西,例如开源软件通讯体系结构嵌入式处理方案(OSSIE)。

文章首要评论后两种开发东西以及具有代表性的软件,3.1 节将具体介绍一种第3 类的SCA SDR 开发东西,而3.2 和3.3 介绍了两种第2 类开发东西,期望能给相关工程运用带来必定的指导意义。

3.1、SDR 东西Spectra 与SCA

3.1.1、SCA SDR 的运用远景

跟着通讯设备一体化和通用化的展开,人们对SDR 软件波形开发提出了要求,例如多种功用波形运用,支撑不同渠道的移植、模块化等。因而,SCA SDR 的运用优势逐步凸显,PrismTech 公司的Spectra 东西包含了模型开发东西、主动代码生成、测验结构和操作环境(OE)4 个部分,支撑SCA 2.2 和SCA 2.2.2规范的波形组件(也称为波形的逻辑代码的完结)和渠道组件的开发。依据SCA 的SDR 将无线通讯相关的算法(或规划者的其他算法)封装成波形组件,而各种物理运用渠道也被封装成渠道组件,直接体现为Spectra CX 软件中的一个组件;可装置多种波形,每个波形运用完结一组特定的功用,在硬件渠道具有的基础上,各个波形运用以组件的办法布置到体系的不同节点中。

3.1.2 Spectra CX 波形开发环境

依据Spectra SCA波形的开发环境包含Spectra CX 波形开发东西和针对SDR 硬件渠道的Specta OE,包含以下东西:

(1)建模东西。它为SDR 开发人员供给高层笼统、易运用和图形化的建模东西,用于动态地规划波形和渠道开发。协助波形规划人员高效地树立渠道独立、可移植的波形模型,并能够映射到不同的渠道上。这些东西也能支撑可刺进地第三方东西,以支撑彻底的SDR 东西链集成。

(2)源代码生成器。Spectra CX集成了特定言语组件源代码生成器、单元测验生成器等,为波形运用供给了一个完好的开发和测验环境。Spectra 源代码生成器为SDR 组件的针对特定言语代码、描绘器和测验代码生成供给了高功用的无错东西。经过将域特定的SDR 模型映射为一系列可履行的、言语特定的文件,这些文件包含了在Spectra OE 上运转的所需求的一切功用。多言语、高功率的主动代码生,从图形化模型生成源代码、描绘器和测验代码。与手写代码比较,进步开发功率高达50 倍(几个月的作业缩短到1 天或更少的时刻内完结),也使代码具有固有的规范兼容。

(3)测验与验证。供给模型的SCA 兼容性验证,能对对组件或子体系进行SCA 兼容性、功用进行测验,并能供给布置后的实时测验。验证包含运用、渠道、布置的验证:模型语法、语义验证;组件、运用、设备和节点的验证;完好SCA 布置的验证等。

(4)Spectra OE。Spectra OE 是一种高功用、低负载SDR 实时运转环境,它支撑SCA OE 的要求。它能超越典型的SCA 通用处理器(GPP)鸿沟,为DSP/FPGA 供给一起结构。Spectra OE 是先进和优化的实时运转渠道,将运用软件和硬件别离,使运用能够移植,一起也具有最小的可能尺度、分量和功耗。它为开发人员大幅度减少了实时运转环境的杂乱程度,供给了单一的运用程序编程接口(API)。Spectra OE 结合了PrismTech的中心结构(CF)和先进的中间件(e*ORB 与ICO),并依据彻底的实时运转结构(CF、中间件和用户传输)从尺度、分量和功用进行优化。

(5)波形布置监督器。该监督器用于将波形布置到硬件渠道上,并能在波形实时运转时,对波形组件参数进行查询、设置等,并能监督体系事情。Spectra CX 的Monitor 能够链接到任何SCA 兼容的操作环境,比方能够运转在配备了PC 兼容的中间件的PC开发主机上。经过这个特色,布置的测验能够在开发周期中大大提早。这个运转时监控器能跟嵌入式方针OE 通讯,以便在实在方针上测验。监督器能够经过点击按钮的办法发动或中止多种运用。这样可在SCA渠道上加载多种运用,以尽可能的描绘域要发作的情况(如组件特点的预设值能够随时修正)。Spectra CX 还能捕获CF 发生的日志,并在SpectraCX 的用户界面中显现出来。

3.1.3 依据Spectra CX 的SDR 开发

SCA SDR 能装置多种波形运用,每个波形运用完结一组特定的功用。在硬件渠道具有的基础上,各个波形运用以组件的办法布置到体系的不同节点中。因为不同的波形运用有不同功用和特性,需求分别对每个波形运用依照SCA 规范进行开发。

(1)波形运用开发流程:创立组件— 生成端口— 增加端口特点— 创立运用— 树立组件链接— 创立装置操控器。

(2)节点和渠道的开发流程:创立设备— 生成设备接口— 创立设备管理器— 创立域管理器— 创立节点— 将设备管理器、域管理器、设备增加到节点— 创立渠道— 将节点增加到渠道。

渠道是一些节点的调集,由域管理器操控,如图1所示。设备管理器驻留在其间的一个节点上。节点是核算节点的笼统,是一些设备和效劳的调集,由一个设备管理器操控。经过节点能够监督和操控节点的资源情况,完结OE,履行设备管理器以及装置OE&CF; 效劳,例如公共目标恳求署理体系结构(CORBA)、命名效劳、FileSystem、Log、事情效劳等。

图1、Spectra SCA SDR 波形开发环境

波形在Spectra SCA 架构上的运用的操作进程如下:

(1)发动硬件渠道,启用节点,发动域管理器、设备管理器等;

(2)翻开波形布置监督器,增加布置到监督器中;

(3)装置运用程序,创立运用程序,加载波形运用;

(4)中止运用程序,开释运用程序,卸载波形运用;

(5)能够重复进程3、4,加载、卸载其他波形运用。

用户依照进程操作,能够完结依据Spectra SCA 的波形布置。以FPGA器材为例,经过上位机操作软件装备不同功用的波形组件,能够完结底层FPGA 代码功用的加载和从头加载,即完结通讯功用的设置或改变,例如由发射改为接纳或许发射不同的调制信号;从操作人员片面上来看,咱们仅仅修正了软件指定的功用,就完结了底层硬件的各种运用切换,用户层和底层得到了较好的阻隔,这就体现出SDR 的软件性质。咱们经过软件晋级来完结更多的功用,而不用考虑底层的硬件渠道,工程师从硬件开发会集到了软件开发,有力地加速了运用开发;更有意义的是,这些软件波形运用关于SDR 硬件渠道具有完美的可移植性,避免了代码的重复开发,节省了时刻、人力、财力、物力。

3.2 依据USRP 的LabVIEW 软件

NI(美国国家仪器)公司的USRP是一款价位合理且灵敏的软件无线电渠道。它将一台规范核算机转变成一个无线通讯体系的快速原型开发渠道。结合NI USRP 射频收发器与NI LabVIEW 软件的优势,USRP 和LabVIEW 两者一起供给了一个可快速上手且功用强大的体系。以NIUSRP2920 为例,其支撑频带能够到达50 MHz~2.2 GHz,中心频率可调,掩盖FM 全球定位体系(GPS)、数字移动通讯体系(GSM)、雷达和ISM 频段;高达20 MHz 基带I/Q 带宽,读写速率达25 MSPS。凭借NI LabVIEW软件可进行频谱监测、快速开发无线通讯协议、灵敏的多输入多输出(MIMO)体系等运用。

3.2.1 LabVIEW 软件

LabVIEW开发环境供给了图形化编程办法和史无前例的硬件集成,旨在协助工程师和科学家快速规划和布置丈量和操控体系,加速产品开发。凭借这一灵敏的渠道,工程师能够开发大中小型体系,完结从规划到测验等一系列流程,一起重用IP 和简化流程,完结功用的最优化。

LabVIEW 运用程序分红前面板和程序框图两部分。前面板完结程序参数的设置以及界面可视化功用,它能够对程序进行手动操控和对成果进行图形化显现。在前面板单击右键能够增加需求的控件,完结程序参数的设置或许成果图形化显现,如图2 所示。

图2、前面板控件增加进程

程序框图是程序的功用完结部分,它选用图形言语来完结编程,如图3 所示。在程序框图面板单击右键增加需求的函数来完结程序的功用部分。

图3、程序框图函数增加进程

别的,LabVIEW 程序运转时是以数据流的方式运转的,这样程序的处理流程十分明晰,对程序编写和调试十分有用。

3.2.2 LabVIEW 的开发流程简介

LabVIEW 和USRP 渠道上手简略,并且供给了汉化窗口,不再做事例介绍。LabVIEW 依据结构式规划,依据发射和接纳程序流程结构装备即可,以下是收发通讯作业流程。

(1)发射:翻开设备发射会话—装备参数— 写入指定通道— 封闭会话句柄;

(2)接纳:翻开设备接纳会话—装备参数— 接纳捕获— 读出指定通道数据— 剖析处理— 中止捕获— 封闭句柄。

LabVIEW 和USRP 渠道,将算法会集到用户接口界面,常被通讯作业人员用来快速开发验证算法以及自界说信号测验源,例如用于软件无线电算法验证、频谱监测、认知无线电算法验证等。

3.3 BPS 体系级软硬件协同规划东西

3.3.1 BPS 软件简介

BPS(BEEcube 渠道作业室)是依据MathWorks 公司Simulink 上的一个体系级的、软硬件协同开发的环境。这个开发环境能够主动生成特定硬件接口和相应软件驱动。关于Matlab 算法规划人员,渠道中的体系级软硬件协同规划东西能够躲藏一切FPGA 规划细节,例如:高速I/O 的例化和装备,多时钟域的时序收敛,软硬件接口和IP 集成,加速了运用规划。用户中心算法模块的外部衔接可在BPS 用户界面中直接拜访。关于杂乱的DSP 算法工程使命,以往需求数月才干完结,而现在运用体系级软硬件协同规划东西在几天内就能够完结。

3.3.2 规划流程

BPS 软件是最简略、最快速和最牢靠的,用于硬件完结算法,并与实践运用相衔接的软件渠道。用户不用是一个FPGA 专家,只需将用户的规划输入到Matlab/Simulink,BPS 会主动将其映射到FPGA 内,其包含了渠道上一切的接口IP。

图4、BPS 根本规划流程

图4 所示为BPS 根本的规划流程,其规划思路环绕体系生成器(也称作完结开发东西)打开。体系生成器是Xilinx 公司进行数字信号处理开发的一种规划东西,它经过将Xilinx开发的一些模块嵌入到Simulink 的库中。在BEE 体系中,一起也需求将硬件接口的IP 和根本的运算IP 集成到Simulink 的IP 库中,能够在Simulink中进行定点仿真,生成HDL 文件(网表),能够在Xilinx FPGA 开发东西(ISE)中进行例化运用,也能够直接生成装备文件(.bit 文件)。因而,它能够加速信号处理体系的开发进程。

在图4 的规划流程中,除了能够运用Xilinx SysGen 本身供给的IP 库和BPS 参加的硬件接口IP 库之外,还能够将HDL 代码凭借ip_import 东西,将HDL 代码生成BPS 的IP 库增加到规划体系中。从而将BPS 牢靠的接口驱动与用于中心算法联系起来。接下来,只需履行BPS 的相关指令,即可完结终究.bit 文件的生成。在生成.bit 的进程中,依据Simulink 的工程会生成嵌入式开发套件(EDK)的工程,体系主动地增加MicroBlaze 到体系中,运用该软核运转NectorOS 自界说的操作体系,能够便利的拜访预置在规划里的寄存器,完结体系级操控。整个进程运转于Matlab 后台,如无特别改动之处,不用人为干涉。

3.3.3 软件装备简介

(1)开发环境:BPS

(2)需求预装软件:Matlab/Simulink、Xilinx ISE Design Suite

(3)装备进程见图5。

图18、装备进程

结束语

软件无线电是一种智能化无线通讯技能,它展示了一种全新的波形装备管理模式,并将本身与外部环境智能匹配,为从根本上处理日益增长的无线通讯需求与有限的无线频谱资源之间的对立拓荒一条卓有成效的途径,并给无线通讯带来了新的展开空间。而依据盲源别离的终极无线电的概念,是对软件无线电和认知无线电的进一步拓宽,完结还面对许多技能难题,需求进一步深入研讨。其概念是否精确也有待商讨。

从本系列文章对SDR 运用展开及渠道架构等技能的总述中能够看出,软件无线电技能是若干技能的高度归纳,已越来越广泛地被人们承受,其在军事和民用范畴的运用有着巨大的远景。但是,软件无线电从概念到运用尚面对许多应战,尤其是许多关键技能需求打破,实践运用起来还有适当一段长的路要走,这也使其成为了近年来无线通讯研讨的热门。该范畴及相关范畴的研讨人员应牢牢掌握展开机会,严密盯梢其展开意向,尽力展开技能攻关,力求尽早研制出具有自主知识产权的设备,为国家的展开和富足做出应有的奉献。

作者:宋腾辉、窦峥、林云,哈尔滨工程大学信息与通讯工程学院,《中兴通讯技能》

相关推荐
最新文章