全阴影卫星信道高效硬件数字孪生方法
作者: 房晨 赵子坤 张宁 柳涛 朱秋明 毛通宝 毛开
摘要:卫星信道的硬件数字孪生技术是卫星通信场景中物理层或数据链路层通信性能评估的重要手段,本文提出了一种适用于全阴影卫星信道的硬件实时模拟架构。首先,基于现场可编程门阵列(Field Programmable Gate Array, FPGA)平台,设计了一种基于迭代算法的复高斯序列产生方法。然后,基于坐标旋转数字计算(Coordinate Rotation Digital Computer, CORDIC)算法实现了幂指数与平方根函数的硬件计算,并结合时分复用思想研制了全阴影卫星信道衰落模拟器。与传统查找表(Look Up Table, LUT)方法和CORDIC算法相比,复高斯序列产生模块的资源消耗率分别降低了6.21%和5.23%。硬件测试结果表明,信道模拟器输出的衰落统计特性如概率密度函数与理论结果吻合,并且不同类型卫星信道多普勒形状也与理论结果符合,可用于全阴影卫星信道的硬件模拟。
关键词:全阴影衰落;卫星信道模型;硬件数字孪生;FPGA;CORDIC
0引言
卫星通信具有组网灵活、可实现全球覆盖的优点,是未来空天地一体化通信网络的重要组成部分[1]。卫星信道作为卫星通信的传输媒介,由于同时存在传播损耗和时延、多径效应以及阴影衰落,严重影响了数字信号传输的可靠性,已成为当前通信领域的研究热点之一。利用实际卫星链路进行试验成本昂贵,并且测试环境单一,测试结果不全面且准确度低。相比之下,采用数字孪生技术将卫星通信的物理信道映射到数字空间,是在实验室环境下进行卫星通信系统物理级或链路级的性能评估的一种有效方法[2-3]。
在卫星通信系统中,由于卫星应答器与地面终端之间的距离较远,多径衰落和阴影效应严重影响了卫星通信的通信质量和系统的频谱效率。常用的卫星衰落信道模型包括Suzuki,Corazza,NLN以及Lutz等[4-7]。其中,Suzuki,Corazza和NLN模型在软硬件仿真实现时比Lutz模型更加简单。由于这三种信道衰落模型都与阴影衰落有关,又统称为全阴影卫星信道衰落模型[8]。
全阴影卫星信道模型的硬件孪生复现的关键在于复高斯序列的模拟。最传统的方法是基于查找表(Look Up Table, LUT)方法,其实现原理简单,但需要大量的随机存储器(Random Access Memory, RAM)资源[9];坐标旋转数字计算(Coordinate Rotation Digital Computer, CORDIC)算法是另一种低成本的硬件实现方案[10]。文献[10-12]提出了基于传统CORDIC算法的信道模拟方法,但需要较多的迭代运算, 存在很长的延迟,影响系统的实时性。为了减少迭代次数,文献[13-14]提出了一种高基数算法,但其硬件电路复杂,不易实现。
本文提出了一种基于现场可编程门阵列(Field Programmable Gate Array, FPGA)的全阴影卫星信道衰落的通用硬件架构,该方案基于调频信号叠加(Sum of Frequency Modulation, SoFM)原理[15],采用迭代算法实现复高斯序列,通过CORDIC算法[16]实现信道衰落中初等函数的硬件实时计算。此外,本文还分析了硬件输出信道衰落的实测结果,包括幅值分布、定点化增益以及频谱形状等, 与仿真结果进行对比分析, 验证了本文方法的正确性。
1全阴影卫星信道模型
电磁波在传播过程中,到达接收端的信号通常由多条具有不同时延和入射角度的路径叠加而成,包括直射路径分量和受到反射、折射以及障碍物衍射等影响的散射路径分量。由于受到山脉、楼宇等遮挡导致的阴影衰落,在不考虑信道噪声时,全阴影卫星信道冲激响应可以表示为
h~(t, τ)=∑Mm=1{αm(t)·r~jm(t)·ejm(t)δ(t-τm)} (1)
航空兵器2022年第29卷第3期
房晨,等:全阴影卫星信道高效硬件数字孪生方法
式中:M为有效路径的数目;m(t), τm, r~jm(t)分别为第m条路径的随机初始相位、时延和信道衰落因子;αm(t)为路径传播损耗;r~jm(t)的j表示Suzuki,Corazza以及NLN三种全阴影卫星信道衰落类型。各种信道衰落模型分别针对不同的地面端通信场景,其中,Suzuki衰落[10]适用于城市场景,Corazza衰落适用于高速公路、郊区、乡村以及城市等各种通信场景[2],NLN衰落[6]则适用于乡村及郊区场景。进一步地:
r~jm(t)=βm(t)·ξ~im(t)(2)
式中:ξ~im(t)的i表示Rayleigh,Rice以及Nakagami三种小尺度衰落类型;βm(t)为阴影衰落,可建模为对数正态分布,即
fβm(β)=12πσlogmβe-(lnβ-μlogm)22(σlogm)2(3)
式中:σlogm和μlogm分别为阴影衰落的标准差和均值。
2基于FPGA的卫星信道数字孪生
2.1基于迭代算法的复高斯变量模拟
基于随机变量分解思想,上述三种全阴影卫星信道衰落的离散化表达式可由相互独立的复高斯序列组合或非线性变换表示。Suzuki衰落可表示为[10]
r~Sum(l)=u~m(l)exp(σlogmum(l)+μlogm)(4)
式中:u~m(l)=um(l)+j·u^m(l)为复高斯序列;um(l), u^m(l)分别为复高斯序列的同相和正交分量;l为离散时间序列。
Corazza衰落可表示为[2]
r~Com(l)=(ρm·exp(j(2πfm, ρl+θm, ρ))+u~m(l))·exp(σlogmum(l)+μlogm)(5)
式中:ρm, fm, θm分别为直射径的幅值、多普勒频率和随机初始相位。
NLN衰落可表示为[6]
r~NLNm(l)=u2m, 1(l)+u2m, 2(l)+…+u2m, 2q(l)·
exp(σlogmum(l)+μlogm)(6)
式中:2q为相互独立的同相分量数目。
全阴影卫星信道模拟的关键在于复高斯变量的产生,本文采用改进的调频谐波叠加方法实现连续相位的离散复高斯序列,为了便于FPGA定点化实现,复高斯序列离散化模型可表示为[15]
u~m(l)=∑Nn=11Nej(2π∑lh=0Tsfm, n[h]+θm, n)=∑Nn=11Nη~m, n(l)(7)
式中:N为谐波总数;fm, n为第m个路径的复高斯序列的第n个谐波的多普勒频率;θm, n为随机初始相位;η~m, n(l)为l时刻的复指数信号。
模拟复高斯序列的关键在于产生大量的复指数信号,目前大多采用LUT方法或CORDIC算法。其中,LUT方法需要把频率值以及正余弦信号的幅值表存于RAM中,再通过相位累加得到查找表地址,利用地址和幅值映射关系产生。LUT方法易于硬件实现,但是随着模拟的路径数以及衰落类型复杂度的提高,会受限于硬件中的RAM资源。CORDIC算法消耗RAM资源较少,但需要对相位值迭代运算,影响系统的实时性。为解决该问题,本文提出了一种基于迭代思想的产生算法,利用复指数信号前一时刻值,便可以通过迭代得到下一时刻的值,可大大减小硬件存储资源[17]:
η~m, n(l+1)=ej(2π∑l+1k=0Tsfm, n[k]θm, n)=η~m, n(l)ej(2πTsfm, n(l))
(8)
图1给出了基于迭代算法的复指数信号硬件实现框图,选择器读取ROM表中预存的迭代因子,通过复数乘法器实时计算出下一时刻的迭代值。此外,该方案还结合时分复用思想,采用串行架构,进一步减少系统资源需求。
2.2基于CORDIC的非线性变换实现
经典CORDIC算法的核心思想是将所需的角度划分为一组固定角度的集合,通过有限数目的旋转,实现时变相位映射为一组角度集合的线性组合过程。CORDIC算法有旋转和向量两个模式,图2给出了旋转模式的双曲坐标系示意图。
在双曲坐标系下, 将初始二维向量A(x0, y0)逆时针旋转角度θ得到B(x1, y1)。其变换关系可用矩阵表示为
x1y1=coshθ-sinhθsinhθcoshθx0y0(9)
提取公因子coshθ,式(9)改写为
x1y1=coshθ1-tanhθtanhθ1x0y0(10)
双曲坐标系旋转过程,旋转角度θ可表示为满足近似关系为tanhθi≈2-i的一组角度集合{1≤i≤L-1∣θi=artanh(2-i)},其中: L为定点化数据位宽长度;i为当前迭代的次数。同样的,可以通过移位和加减操作完成双曲正余弦函数值的计算,旋转过程可以表示为
xi+1=xi-di·yi·2-iyi+1=yi+di·xi·2-izi+1=zi-di·θi (11)