一种面向卫星窄带平台的软件无线电解决方案

期刊: 环球科学 2026年第15期 DOI: 10.67328/wslwpp1202 PDF下载

一种面向卫星窄带平台的软件无线电解决方案

  李习龙

 中电科思仪科技(安徽)有限公司102000
摘要:面向卫星窄带平台基站侧仪表仿真需求,提出一种全部由软件实现的软件无线电方案:以独立进程和共享内存解耦射频链路与协议栈,通过性能调优,满足信号的实时处理。对同类大时延、强确定性要求的无线系统具有参考价值。

关键词:软件无线电;卫星窄带平台;实时性;确定性;共享内存;性能调优

一、引言

软件无线电(Software Defined Radio, SDR)的概念最早由 Joseph Mitola III 在 1992 年明确提出,其核心原因是:传统硬件无线电的灵活性太差,无法适应多频段、多制式、多标准的通信需求。

核心思想:构造一个具有开放性、标准化、模块化的通用硬件平台,将各种功能,如工作频段、调制解调类型、数据格式、加密模式、通信协议等用软件来完成,并使宽带A/D 和D/A转换器尽可能靠近天线,以研制出具有高度灵活性、开放性的新一代无线通信系统[1]。   

最大的好处是相比硬件平台来完成的各种调制/解调,编/解码功能开发,使用软件开发大幅缩短了开发的周期和降低了开发成本。

本文详细介绍了 SDR(纯 CPU 开发)在卫星窄带平台上的使用,并结合实际开发和使用中遇到的问题,提出了全新的解决方案。该方案同时适用于 4G 和 5G 等更高带宽通信制式的开发。

二、系统方案

(一)系统介绍

该卫星窄带平台应用于基站侧仪表的仿真开发,用于验证终端接入基站信令的正确性。这就要求系统对终端信号的处理必须足够实时,并且每一帧数据都不能有丢失,否则将直接影响信令交互的时序判断,导致测试结论失真。因此,系统设计的第一原则是确定性和及时性。本文重点介绍的是,如何对软件系统进行设计和优化,从而达到信号处理的确定性和实时性。本文采用的连接结构图如下图所示:

UE和仪表之间采用传导连接,仪表实现的是模拟卫星基站侧信令的处理。

图 1  终端(UE)与仪表(基站侧仿真)的连接结构

(二)方案设计

在数字通信系统中, 信息的传输都是以数字信号的形式进行的, 因此在发送端必须将模拟信号转换为数字信号, 在接收端将数字信号还原成模拟信号。 相应的转换过程就是编码/解码[2]。

图 2  典型的信息传输模型

整个仪表侧的系统结构如下图所示:

图 3  仪表系统结构

仪表通过市场上已有的通用射频前端完成射频收发与变频,基带由 FPGA 实现,FPGA 的功能被刻意保持得极为单一:仅按设定的采样率完成 A/D、D/A 转换、抽取/内插与带宽配置,并按固定帧节拍把数据搬移到主机内存。因此基带与射频部分具有很强的通用性和可复用性,几乎可以无缝迁移到未来宽带平台的开发。

软件实现的功能包括物理层与高层协议栈两大部分:物理层主要完成上下行同步、信道估计、解调、解交织、解扰、Turbo 译码、CRC 校验等功能;协议栈主要实现 MAC、RLC、PDCP、RRC 等功能。由于物理层处理 IQ 数据极为消耗 CPU,为了减少射频链路与物理层之间的相互影响,本方案采用”独立进程 + 共享内存”的方式实现数据的上送与下发。

1.数据面设计:从 PCIe 到共享内存

数据面自底向上由三段构成:第一段是 FPGA 与主机之间的 PCIe QDMA 通道,以硬件子包为单位搬运数据;第二段是数据搬移服务进程内部的处理与整形,完成取数、重采样、重建、上行重采样与下行 IQ 组装;第三段是进程间的共享内存接口,把 IQ 数据交给物理层与协议栈进程使用。

共享内存用于物理层收发,样本格式为 cf_t(8 字节/复样点),单向速率 92.16 MB/s,采用定长双缓冲并由标志位与信号量完成生产—消费同步。

图 4  纯 CPU 软件无线电处理架构与线程/核映射

2.时基与帧结构设计

本平台的基本调度单位是 60 ms 帧。每帧划分为 5 个 12 ms 时隙,每时隙含 96 个 125 µs 的符号间隔,每个符号间隔由 7 个 FPGA 子包承载;数据/控制信道采用 16 kHz 符号率,同步信道采用 80 kHz 符号率,频率栅格以 125 kHz(波位)和 31.25 kHz(载波)为步进。主要参数如下表 1 所示。

表 1 平台主要参数

参数项取值
基带采样率11.52 MHz
每毫秒复样点数11 520
数据帧长60 ms
帧内时隙5 × 12 ms
符号间隔96 × 125 µs/时隙
每帧复样点数691 200
  • 帧并发设计

为了满足第三章(一)提出的实时帧处理要求,同时还要兼顾帧发送的有序性,这里采用多线程并行处理,每来一帧信息都会申请一个空闲线程,同时抢占一个发送队列的数据空间。这样即使某一帧处理慢了,也不至于被后到的帧先发送。为了保证帧发送的连续性,在帧的发送队列增加2-3帧的缓存帧,这样即使某个帧偶尔处理超过了60ms的时间,仍然能保证数据发送的连续性。

图 5  帧并发处理与发送队列缓存示意图

帧级并发由三部分配合实现。第一,物理层维护一个 worker 线程池(本方案配置 3 个 worker),每到达一帧,主收发线程以阻塞方式申请一个空闲 worker(如上图所示),并把该帧的上下文(帧号与收发时间戳)与之绑定;第二,worker 在双线程并行区内同时完成上行接收与下行发送两路处理,处理结束后归还线程池;第三,下行数据在发送环形缓冲中按帧槽位存放。

多线程并行会带来帧序问题:各帧的处理完成时刻不同,若“谁先处理完谁先发”,空口帧序就会被扰乱,终端侧的信令时序判据随之失效。为此,本方案在发射环节引入按帧号排列的信号量链——每个 TTI 对应一个信号量,worker 完成处理后必须先取得本帧对应的信号量才能执行发射,发射完成后再释放并唤醒下一帧。该机制使“处理偏慢的帧”表现为对后续帧的背压(阻塞等待),而不会被后到的帧超越,从而在并行处理的前提下严格保持发送顺序;代价是慢帧的等待时间会计入后续帧的时间线,因此需要依靠缓存深度来吸收。

三、设计原理

对于满足实时数据计算,系统满足以下几种条件:

条件1: 系统对整个数据帧平均产出时间(从获取帧数据到计算到最终输出到发送队列)需要满足小于等于数据帧的时间长度(本文为60ms)。简单说就是60ms的帧数据系统的平均处理时间需小于等于60ms

条件2:所有帧累加处理时间延迟最大不能超过发送队列最大缓存的数据时间长度。

条件3:单帧的处理时间严格小于帧数据的时间长度。

条件1和2是必须遵循的,条件3则属于最佳设计,即使偶尔不满足条件3,也可以满足系统开发。

本方案设计是在严格满足1和2的基础上同时也满足了条件3.

为便于量化分析,把上述三个条件写成如下形式。记 T_frame 为数据帧时长(本方案为 60 ms),T_avg 为一帧的平均处理时间(自取得帧数据起、至处理结果写入发送队列止),T_max 为所有帧处理处理时间延迟的累加值,N_buf 为发送队列缓存的帧数(本方案为 2~3 帧),则有:

        条件 1(平均约束):  T_avg ≤ T_frame                                (1)

        条件 2(最坏约束):  T_max ≤ N_buf × T_frame                        (2)

        条件 3(理想约束):  T_max < T_frame                               (3)

三个条件的工程含义与相互关系是:条件 1 决定系统能否长期跟上帧节拍——若平均处理时间超过帧长,待处理数据将持续积压,系统必然发散;条件 2 决定系统能够容忍多大的偶发抖动——发送队列中缓存的 N_buf 帧数据(本方案为 3 帧,即 180 ms)为帧超时提供缓冲空间,只要帧处理时间不超过该缓存时长,后续帧仍可按 60 ms 节拍连续发出,空口不会断流;条件 3 则是最理想的情形,即每一帧都能在下一个帧节拍到来之前处理完毕,完全无需动用缓存。。

四、系统调优设计

本节按”问题—分析—措施—实测”的方式,给出平台研制过程中解决的三类工程问题。

(一)60 ms 帧预算调优

把上、下行处理映射为同一帧内的两条并行时间线。物理层工作在双线程并行区内执行,上行与下行分派到两个线程并发运行,并行区墙钟耗时等于两者的较大者;同时将物理层各线程分别绑定到不同物理核,并以实时调度策略避免被系统任务抢占。

(二)FFT 计算耗时

本方案实施了两项核心优化。第一,变换计划预建与复用:在进程初始化阶段一次性建立运行期所需的全部 FFT 计划,运行期只执行变换、不再重建计划。第二,把计划建立方式由估算型改为测量型,并把测量结果在进程启动时导入、退出时导出,使一次性测量开销摊薄到整个进程生命周期。第三,减少变换尺寸与调用次数:对高合成数采用 2、3、5 混合基分解,避免补零到 2 的幂所带来的额外运算;同时对同一帧内的同类变换进行合并,降低单位帧内的变换调用次数。第四,解除变换环节的全局串行化:上、下行及公共路径改用预建计划后,多载波与多方向的处理可以并发执行,与帧级并行形成配合。

(三)IQ 数据的搬运与进程间耦合

采用”独立进程 + 共享内存”的解耦设计。射频/PCIe 服务进程与协议栈进程分离,二者通过共享内存交换 IQ 数据:主数据面使用定长双缓冲结构,由原子标志配合命名信号量完成生产—消费同步,采用标志位轮询而不阻塞生产者。

五、总结与展望

本文面向卫星窄带平台的基站侧仪表需求,提出一种全部由软件实现的软件无线电方案:硬件侧仅保留通用射频前端与极简 FPGA 基带,软件侧以独立进程与共享内存解耦射频链路和协议栈。通过系统调优设计,大幅提高CPU的运算效率。该方案可迁移至 4G/5G 等更高带宽制式,对同类大时延、强确定性要求的无线系统具有参考价值。

参考文献

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

[2] 周炯槃, 庞沁华, 续大我, 等. 通信原理[M]. 北京: 北京邮电大学出版社.

[3] Mitola J. Software radio architecture: object-oriented approaches to wireless systems engineering[M]. New York: John Wiley & Sons, 2000.

[4] 陈爱军. 深入浅出通信原理[M]. 北京: 清华大学出版社.

[5] srsRAN Project. srsRAN 4G/5G software radio suite[EB/OL]. https://www.srsran.com.

...


阅读全文