软件定义无线电部署管理器设计
来源:用户上传
作者:
摘要:为使应用波形不受电台软硬件平台影响,实现应用层波形与底层软、硬件解耦合,遵循SCA4.1规范设计一种软件定义无线电部署管理器,通过在电台上动态部署不同的波形,实现电台功能的软件定义。实验结果表明,部署管理器可在多通道上成功完成多个波形安装、部署、卸载和删除,且效率较高。基于SCA 4.1规范的软件定义无线电部署管理器可提高波形可移植性和可重用性,进一步提高电台可操作性、改善用户体验。
关键词:软件定义无线电;SCA4.1;波形部署
DOI:10.11907/rjdk.192126 开放科学(资源服务)标识码(OSID):
中图分类号:TP319文献标识码:A 文章编号:1672-7800(2020)006-0107-06
0 引言
软件定义无线电(Softw&re Defined Radio,SDR)技术具有互操作性强、易升级、绿色节能等优点,得到了广泛应用,特别是在舰船通信领域,软件无线电技术展示出独特优势。
传统舰船通信系统电台种类繁多、功能单一且灵活性差。外军已将软件无线电技术应用于舰船通信设备,构成了完全集成的通信系统。软件定义通信装备功能已成为一种趋势,我军须从实际出发,制定合适的目标和策略,利用现有技术不断提高装备性能,改变传统舰船通信系统结构,缩小系统体积,精简系统控制与管理,且确保与现有设备通信稳定。目前国内已开展软件无线电方面的研究,实现了设备向板卡集成、板卡向软件集成,提高了通信系统集成水平,正推动软件无线电应用向数字化、多模式、抗干扰性更强的方向发展。
美军联合战术无线电系统(Joint Tactical Radio System,JTRS)计划基于软件定义无线电的思想,制定软件通信体系架构(Software Communication Architecture,SCA)规范。目前应用最广泛的是SCA 2.2.2规范,该应用推动了第二代SDR技术的市场应用。目前该规范最新版本SCA 4.1于2015年8月发布。SCA4.1相比于SCA 2.2.2来说,能够支持不同的传输机制、不同量级的架构,可以根据具体应用场景优化核心框架,采用“推”模型,减少函数调用总次数,这些新特点可提高系统安全性、灵活性和可用性。
目前软件定义无线电装备还处于研制初期阶段,依托SCA架构的波形部署控制软件相关研究屈指可数,因此基于SCA 4.1规范的软件定义无线电部署管理器研究具有重要意义。
1 软件定义无线电部署管理器开发架构
从软件开发角度来看,SCA是一个基于组件开发的体系架构,允许不同波形在分布式处理单元上进行通信。基于组件开发的体系架构是一种允许创建、集成、重用波形组件的体系架构。其应用基于软件组件装配,软件组件特点是能实现规模较小、可重用的二进制代码模块和一个定义明确的功能;组件在被用于构建一个应用前,已被作为一个软件的单元被设计、实现和测试。用户可在软件组件产品说明书目录上选购所需软件组件,进行装配应用。
图1是SCA4.1版本的核心框架(Core Framework,CF)接口定义语言(Interface Definition Language,IDL)关系视图,使用统一建模语言(Unified Modeling Language,UML)描述组件之间的关系,调用波形应用无需知晓波形组件内部具体实现。SCA软件组件可分为3部分:逻辑设备、应用和电台部署管理器。
逻辑设备分为:设备(Devices)、可加载设备(LoadableDevice)、可执行设备(Executable Device);应用指可部署的通信标准软件实现,如FM、EPLRS、Linkl6等;电台部署管理器用来对波形应用实施安装、卸载、部署、配置、健康监视、自检等。
2 軟件定义无线电部署管理器设计
2.1 功能描述
波形部署是SCA软件无线电集成管理的关键之一,因此电台部署管理器是软件定义无线电装备软件平台的一个重要组成部分,其在软件无线电软件平台中的组成架构如图2所示,电台部署管理器功能如图3所示。
2.2 原理描述
部署管理器安装波形前,首先需启动域管理器和设备管理器,通过解析域管理器配置文件(Domain Manager Configuration Descriptor,DMD)和设备配置文件(Device Configuration Descriptor,DCD),明确管理器使用的服务,解析各设备相关域配置文件并启动组件,然后方可安装和创建波形应用。根据软件装配描述文件(Software Assembly Descriptor,SAD),波形应用的装配控制器把某波形包含的软件组件加载到硬件设备上,并对软件组件进行组装,通过connectUsesPorts建立组件之间的连接,并对波形应用进行启动、停止、配置和查询等控制。
2.3 波形应用软件部署设计要求
由于实际电台目标设备及相关性能在波形组件部署前是已知的,所以波形组件对部署对象进行相关属性描述和静态能力检查是波形应用软件可部署的前提。波形应用软件部署设计要求主要包括:
(1)波形组件与部署相关的能力检查,包括动态能力检查和静态能力检查。动态能力检查指在运行时查询,获取用于部署的潜在目标设备的能力;静态能力检查与之相反,运行时已不需查询,目标设备能力在使用前均已知。实际应用中电台目标设备及其能力不会动态改变,所以采用静态能力检查。
(2)波形组件与部署相关属性描述。在组件装配描述文件中详细描述待部署的组件集合。主要描述内容为:波形应用的每一个组件必须描述能力要求,能力属性是描述一个可部署的组件适用于目标平台的处理器、操作系统类型,并在编译时针对目标平台硬件需求进行编译。 波形应用的每一个组件必须描述容量要求,如内存、MIPS等。容量屬性要求在硬件平台中一些具有有限数量的物理资源在部署之前必须保留给待部署的组件,在容量属性中必须描述组件每一个不同编译(实现)版本对容量的要求。
同时还需描述波形应用所有组件的互联关系。一个波形应用是一组已装配的组件集合,将组件连接在一起建立一个装配好的组件间数据流。一个连接由一个源组件和目的组件组成,并通过将源组件的一个关联发布给目的组件建立连接。
2.4 SCA波形组件部署实现流程
该部分主要包括:目标设备匹配、组件部署和组件生命周期控制。
2.4.1 目标设备匹配
(1)执行能力属性检查。将注册设备声明的能力与待部署组件每个实例的能力要求进行比较,如图4所示。
(2)执行容量属性检查。无线电部署管理器按照组件描述符文件容量需求,查询设备容量属性是否匹配,执行容量属性检查。
为每个部署的组件(包括附属组件)设置保留容量,当遵循该方式保留失败,可进入回滚操作。当一个容量检查失败,无线电部署管理器必须找到一个新设备,重新执行组件容量匹配,如图5所示。
2.4.2 组件部署
组件部署是指将开发阶段组件生成的二进制代码传送给目标设备。一个波形应用组件可来自一个远程服务器节点,也可来自一个无线电台内部。安装过程需拷贝所有波形应用组件文件,包括:装配描述文件、组件描述文件、部署描述文件等。
待安装的波形应用组件必须通过域管理器获取,在一个波形应用组件被执行之前必须被部署,部署包括将所有资源的实现发送给目标设备。
2.4.3 组件生命周期控制
控制所有部署组件生命周期。电台部署管理器对每一个被部署的组件强制性赋予一个生命周期:Instantiation(实例化)→initialization(初始化)→configuration(配置)→connection(连接)→disconnection(断开连接)→release(释放资源)→termination(生命周期终止)。
2.5 相关功能组件
2.5.1 应用控制
(1)SCA应用。该应用特点为:①通过装配描述符描述如何装配和部署;②使用无线电部署管理器应用程序接口(Application Program Interface,API)将其安装到无线电台中;③使用无线电部署管理器执行应用部署;④一个应用可被看作单一的资源;⑤无线电部署管理器应用的操作分安装、部署、启动3个步骤进行。
(2)SCA资源。一个资源更像一个硬件器件,包含输出、输入及需要连接到其它组件的控制端口。若在一个应用程序中使用一个资源,该资源必须被部署到设备中,且设备必须满足性能要求和容量要求。
资源还可实现简单或复杂的信号处理功能,作为一个端口的提供者,端口由命名字符串定义,可提供连接其它组件的端口,还可提供让一个特定API访问的端口。
因为一个应用由许多资源组成。通过集合这些资源,应用包含了资源所有端口和配置属性。由无线电部署管理器软件部署程序赋予资源强制性生命周期。
(3)资源生命周期流程(见图6)包括:①当包含资源的应用被实例化时,资源处于激活状态;②告知资源可初始化其状态,如内存分配;③资源接收配置参数;④提供/接受与其它组件的对象关联,建立数据流;⑤资源再次接收配置参数;⑥开始数据处理;⑦停止数据处理;⑧通知资源不再使用在连接时刻建立的对象关联(中断数据流);⑨资源必须释放内存、终止执行;⑩无线电部署管理器中断资源执行。
(4)基本组件由基本应用接口组件标识、端口连接器、生命周期、可测试接口、属性设置和可控制接口组成,如图7所示。与SCA2.2.2中的资源接口类似,开发者必须在基本组件上继承组件。SCA 4.1采用选择性继承的方式,通过预编译与IDL指令定义组件待实现的接口,使组件更轻量化。
(5)SCA资源一装配控制器。无线电部署管理器将应用控制授权交予装配控制器,但需借助于代理执行控制或配置。
SCA应用代理组件由装配控制器调用,装配控制器组件必须实现资源接口,因为它是所有资源的代理。装配控制器的定义在应用装配描述符里,由应用开发者提供。
任何一个来自用户接口且与应用资源相互作用的请求必须被授权给装配控制器。装配控制器有自己的逻辑属性集、端口名,且知道哪些组件必须为应用输入和输出数据提供外部端口(在装配描述符里指明)。
2.5.2设备控制
有4种逻辑设备组件:设备组件、可执行设备组件、可加载设备组件、聚合设备组件。
设备组件由生命周期、可管理接口、容量管理、设备属性、聚合设备属性组成,这些接口均源自于SCA 2.2.2的逻辑设备接口,如图8所示。逻辑设备组件供软件组件部署所用,可作为软件部署目标机、硬件设备软件代理,且还提供对硬件设备的访问,如GPS接收机。
可执行设备组件提供对DSP的访问,可加载设备组件提供对FBGA的访问。作为组件部署的目标设备,SCA可加载设备组件和可执行设备组件需通告能力(OS、Processor等)和容量(MIPS、Memory)等。可执行设备组件与可加载设备组件在继承设备组件的同时,可实现各自接口。聚合设备组件继承设备组件的同时,实现可加载接口。
2.5.3 无线电管理
无线电管理由4个组件实现:域管理器组件(DomainManager Component)、应用工厂组件(Application FactoryComponent)、应用管理器组件(Application Manager Component)、设备管理器组件(Device Manager Component)。 域管理器组件是无线电管理器,应用工厂组件用来实例化一个应用并提供一个应用管理器组件组件,应用管理器组件控制一个部署的应用。
(1)域管理器组件是无线电管理中心组件。它可实现由设备管理器指定的节点组件间的互连,负责应用安装,供UI使用控制并监视电台;可用一个“脚本”或设备管理器在启动一个无线电期间的任何时刻启动;用来安装应用,为安装的应用创建一个应用工厂;提供两个事件通道,一个是每个设备必须用来报告状态改变的通道,另一个是报告电台管理事件的通道;用于电台内部检测,包括:侦听产生的事件、获取已装应用和已部署应用的清单。
(2)应用工厂组件的任务是:安装一个特定类型的应用;部署一个应用并为每个部署的应用创建一个应用管理器对象;域管理器组件为每种已安装的应用创建一个应用工厂,每个应用工厂管理一种类型的应用,如FMLoS;应用工厂能创建一种相同应用类型的几种实例,如FMLoS 1、FMLoS 2等;应用工厂组件按“执行能力检查→执行容量检查→传递结果到目标设备→控制已部署设备的生命周期”的步骤执行组件部署。
(3)應用管理器组件功能包括:启动/停止信号处理,通过配置改变应用的行为,释放终止的组件、归还“容量”资源的应用。
(4)设备管理器组件中,一个无线电由许多节点组成,每个节点运行单一的设备管理器组件,每个设备管理器组件按节点描述符描述的方式启动节点。
2.6软件设计
子模块包括网口模块、消息分发模块、波形安装模块、波形删除模块、波形部署模块、波形卸载模块、波形查询模块。设计流程如图11所示。
3 测试验证与结果
本文实验硬件平台包括一个装有Windows操作系统的台式计算机、一套四通道软件定义无线电设备,软件平台为Windows操作系统,开发平台是ReDe开发环境(实时嵌入式操作系统ReWorks4.7),编程语言为C/C。
本文部署管理器在ReDe开发环境下编写程序,并编译生成可在软件定义无线电设备上运行的.out文件,将该文件放在主控上运行并进行测试。
针对四通道设备的功能需求和硬件结构,按照软件无线电技术规范的技术要求,构建适用于设备的核心框架。部署管理器属于主控的一部分,部署管理器和波形应用的软件代码放在主控板上。部署波形时,把待安装的波形软件包拷贝到指定基带板上,在多通道上对多个波形进行安装、部署、卸载和删除。
部署管理器可在多通道上成功地完成多个波形安装、部署、卸载和删除,且效率较高。
4 结语
本文按照SCA 4.1规范设计了全量级软件无线电装备部署管理器,该管理器可实现对多种波形的安装、删除、部署和卸载等操作,提高波形可移植性和可重用性,增强电台可操作性和用户使用体验。下一步可通过对接口选择性继承等方式进一步优化核心框架,进而提高波形部署效率。
转载注明来源:https://www.xzbu.com/8/view-15277857.htm