卫星通信系统两步随机接入技术研究
2021-11-30聂玉卿崔高峰王卫东
聂玉卿,崔高峰,王卫东
(北京邮电大学 电子工程学院,北京 100876)
0 引 言
目前,分立的卫星通信系统逐步向着天地异构网络互联互通、天地一体化的方向发展[1]。卫星与地面5G技术的融合能够连通空、天、地、海多维空间,为用户提供更为可靠的一致性服务体验,形成一体化网络格局。为了实现地面终端的一体化,卫星与地面5G的空中接口逐步趋向融合,随机接入、非正交多址接入等技术在卫星通信中的应用也是目前的研究热点,然而受限于星上处理能力以及星地链路长时延的特点,地面5G中的关键技术在卫星系统中的适应性改造与优化是实现星地融合需要解决的重点问题。
作为地面用户终端与卫星进行交互的第一步,随机接入技术在卫星通信系统中具有不可或缺的重要意义。通过随机接入过程,使得用户自身发送帧时序与网络上行帧对齐,用户与网络取得上行同步后,才能被调度并进行上行传输。对于高轨(Geosynchronous Earth Orbit,GEO)卫星通信系统,卫星轨道高度为35 786 km,通信距离远远大于地面5G系统,星地链路长时延的特点使得完成一次上行接入过程所需的时间大大增加,这给一些具有低访问延迟需求的应用带来了挑战。
为了实现卫星通信系统低延迟以及高可靠性的接入,目前已有部分文献对卫星场景下的随机接入技术展开了研究。文献[2]探讨了5G中的随机接入过程在非地面网络(Non-Terrestrial Network,NTN)中的应用,并给出了可行的解决方案。文献[3-4]研究了卫星通信系统多用户场景下的随机接入信号检测算法,从提高用户接入成功率的角度,避免多次接入产生的较长接入时延。文献[5]研究了多个用户发起的随机接入过程发生碰撞后的退避算法,使系统能在更短的时间内有更多的用户成功实现上行接入。然而,上述文献均是在采用传统四步随机接入方案的基础上进行优化,用户与卫星通过四次消息交换导致接入过程较长延时的问题仍然存在。目前,3GPP及其工作组针对地面场景提出了两步随机接入方案[6],该方案通过两次消息传递完成上行随机接入,与传统的四步随机接入相比大大降低了接入过程的时延。但是目前关于两步随机接入技术的研究仅考虑了地面场景,且仍处于标准化过程中,尚未有相关研究将该方案应用于卫星场景并做出适应性的设计。
本文对卫星场景下两步随机接入方案中的信道设计以及多用户信号检测问题进行研究,提出了一种两步随机接入信道设计方案,对两步随机接入信道中数据部分的信道结构以及前导和数据之间的映射方式进行了设计。此外,针对多个用户发起接入时两步随机接入信号中数据部分发生碰撞导致解码性能降低的问题,采用多用户共享接入(Multi-user Shared Access,MUSA)方式发送数据部分,并提出一种多判决排序串行干扰消除(Multi-decision Ordered Successive Interference Cancellation,MD-OSIC)算法对发生碰撞的数据进行检测,降低误差传播对检测性能造成的影响,实现高效率低延时接入。
1 系统模型
考虑卫星场景上行随机接入过程,该场景包括一个GEO卫星和N个用户,N≥1。N个用户采用两步随机接入方案向卫星发起上行接入请求,两步随机接入流程如图1所示。
图1 两步随机接入流程
在传统四步随机接入过程中,步骤1和步骤3分别传输一个随机选择的前导序列以及一个数据包,在两步随机接入过程中这两个步骤被合并为步骤1。两步随机接入中的步骤2为GEO卫星向用户终端发送一个反馈信号,告知用户终端接入是否成功。通过简化随机接入过程,两步随机接入与四步随机接入过程相比在降低延迟以及信令开销方面更有优势[7]。步骤1中,用户终端发送给GEO卫星的消息定义为消息A(message A,msgA)。msgA包含前导码以及数据部分两部分,其中,前导码在物理随机接入信道(Physical Random Access Channel,PRACH)传输,数据部分在物理上行共享信道(Physical Uplink Shared Channel,PUSCH)传输[8],msgA的前导码和数据部分时分复用[6],并在PRACH与PUSCH之间预留一定的时间间隔[9]。msgA信道结构如图2所示。
图2 msgA信道结构
考虑到用于传输msgA数据部分的时频资源有限,并且在未完成上行同步时基站无法统一对用户终端进行调度,因此在数据部分采用具有免调度特性的MUSA技术。本文设计的多用户两步随机接入系统模型如图3所示。
图3 多用户两步RACH系统模型
首先,用户随机选择一个根索引值以及循环移位值,生成具有良好自相关性与互相关性的ZC序列,经过离散傅里叶变换(Discrete Fourier Transform,DFT)、子载波映射、离散傅里叶逆变换(Inverse Discrete Fourier Transform,IDFT)等模块生成msgA前导码信号。其中,根据前导序列根索引值及循环移位值确定解调参考信号(Demodulation Reference Signal,DMRS)产生所需的参数,生成与用户选择的前导序列相对应的DMRS。然后,对数据部分进行编码调制,并将调制后的符号与该用户随机选择的扩展序列相乘进行扩频,扩展序列采用序列长度为4的复数三元序列[10]。根据前导序列索引值确定DMRS及数据部分的映射位置,对DMRS与扩频后的数据进行资源映射,经过快速傅里叶逆变换(Inverse Fast Fourier Transform,IFFT) 生成msgA数据信号,完成msgA信号的发送。接收端首先对msgA的前导码进行检测,若检测成功,则根据检测得到的前导索引值进行msgA的数据部分检测,数据部分采用MD-OSIC方案对多用户叠加数据进行逐一检测。
2 msgA信道设计方案
与传统四步随机接入不同,两步随机接入在第一步中除了传输前导码以外,还需要传输一部分承载上层信息的数据比特,这给msgA的信道设计带来了难点。首先,需要设计前导序列与对应数据之间的映射关系,使得接收端检测到该用户的前导序列之后可以通过前导索引信息确定数据部分的映射位置以及检测所需的相关参数;此外,考虑到用于msgA数据传输的资源有限,需要采用非正交方式提升频谱利用率,这会使得接收端各个用户的数据相互混叠,不但需要在接收端设计有效的接收算法实现多用户检测,也需要在发送端对数据信道进行设计保证用户数据检测的准确性。
2.1 msgA PRACH设计
根据图2所示的msgA信道结构可知,msgA信道中包含PRACH与PUSCH两部分,其中关于卫星场景下随机接入前导格式的设计已有很多文献展开了研究。本文在msgA PRACH部分采用时延预补偿方案[11],前导信号长度为3 ms,其中循环前缀(Cyclic Prefix,CP)长度为0.3 ms,前导序列长度为2.4 ms,保护时间(Guard Time,GT)长度为0.3 ms,PRACH信道时域上占用无线帧中的前3个子帧,频域占用1.08 MHz带宽,64个前导码在同一时频资源中码分复用。msgA PRACH时域结构如图4所示。
图4 msgA PRACH时域结构示意图
2.2 msgA PUSCH设计
通过参考目前3GPP已采纳的msgA PUSCH参数配置[12],令msgA PUSCH频域上占用1.08 MHz带宽,即6PRB(Physical Resource Block),与PRACH占用相同的频域资源[13];时域上为14个OFDM符号。
关于DMRS的设计,在目前地面场景的讨论中一般使用不同的DMRS端口,通过将前导码映射到不同的DMRS端口,降低PUSCH冲突的概率。由于地面支持多天线传输,接收端可配置的天线数[13]为2、4、8,而本文考虑的卫星场景中不支持多接收天线,即只有一个天线端口配置,目前地面通过多个DMRS端口降低PUSCH冲突的方案在卫星通信中无法适用。因此,本文提出了如图5所示的msgA PUSCH结构。
图5 msgA PUSCH时频结构示意图
为了与地面5G系统融合,在DMRS设计上参考5G中的DMRS导频类型,采用梳状加码分正交复用方式,双符号DMRS结构。其中,第三个符号中子载波索引为奇数(假设编号从1开始)的RE(Resource Element)定义为DMRS index0,子载波索引为偶数的RE定义为DMRS index1;第四个符号中子载波索引为奇数(假设编号从1开始)的RE定义为DMRS index2,子载波索引为偶数的RE定义为DMRS index3。通过这种配置方式,将前导码映射到不同时频位置的DMRS index,当数据部分发生碰撞时,接收端可以通过独立的DMRS信道估计进行多用户检测,分别进行解码,提高检测的成功率。
在PUSCH资源后需要添加GT,避免符号间干扰。根据时延预补偿方案[12],GT应大于0.3 ms。考虑到5G中OFDM符号持续时间为66.67 μs,为了保证帧对齐,令GT长度为5个OFDM符号,即0.33 ms。
2.3 PRACH与PUSCH之间映射关系
在传统的四步随机接入中,步骤3中用户发送给基站的数据所占用的资源由基站进行调度分配,多个用户对应的数据可能会被分配相互正交的时频资源。然而在基于竞争的两步随机接入过程中,msgA中用于传输数据的PUSCH资源是预先分配好的,多个用户对应的数据部分可能会被分配到相同的PUSCH资源,这种情况下,不同用户的数据之间有一定的概率发生碰撞,需要采用非正交多址接入技术及相应的干扰消除方案,在接收端解码每个用户对应的数据部分。若无法正确检测msgA的数据部分,则需要重新传输msgA或者回退到四步随机接入。
为了降低不同用户数据部分的碰撞概率,同时提高频谱利用率,本文对msgA的信道进行了设计。首先,将有限的msgA PUSCH资源进行划分,通过对用户所有可能选择的前导码进行分组,使得不同组内的前导码对应的数据映射到正交的时频资源块,从而降低数据部分发生碰撞的概率。在本文中将msgA PUSCH资源划分得到的正交资源定义为PUSCH occasion(PO)。对于给定的6个PRB的msgA PUSCH资源,划分为两组的性能更好[14]。尽管划分更多的PO可以使不同前导码对应的数据具有更低的碰撞概率,但是低码率可以弥补性能损失的整体影响。因此,拟采用将msgA PUSCH资源划分为2个PO,每个PO频域上占用3个PRB,如图6所示。
图6 前导码到PUSCH/DMRS映射关系
此外,为了避免数据部分的盲解码,设计了用户所有可能选择的64个前导码与其对应数据部分之间的一一映射关系。其中,前导码0~31对应的数据部分映射到PO 0,前导码32~63对应的数据部分映射到PO 1。每个PO中有4个具有不同时频位置的DMRS index,即同一PO中的32个前导码对应的数据映射到4个不同的DMRS index,使得每个DMRS index有8个前导码对应的数据部分复用。对于每一个DMRS index,设定8个不同的DMRS序列,即对于PO与DMRS index均发生碰撞的数据,通过不同的DMRS序列进行区分。具体映射关系如表1所示,其中,PO指示数据映射到不同的频率位置,如图6所示;DMRS位置为0表示DMRS位于当前子帧的第3个符号,DMRS位置为1表示DMRS位于当前子帧的第4个符号;映射图样为0表示DMRS映射到奇数子载波,映射图样为1表示DMRS映射到偶数子载波。根据上述配置,通过对前导码对应的数据部分以及DMRS的时/频/码分复用,实现一一映射关系。
表1 映射关系配置表
3 多用户检测算法
接收端接收到msgA信号后,首先检测msgA PRACH部分,确定用户发送的前导码索引。若前导码检测成功,相关联的PUSCH资源可以通过前导码和PUSCH/DMRS之间的映射关系识别。然后,接收端将检测PUSCH部分。其中,接收端可以通过PRACH检测估计时偏,并在PUSCH检测前根据估计的定时偏移量调整接收信号的时间窗口。接收框图如图7所示。
图7 msgA接收框图
PRACH检测算法与传统四步随机接入中的检测算法相同[15],本文重点在于提出了与所设计信道结构对应的PUSCH数据部分的检测流程以及改进算法。
3.1 数据碰撞情况分析
当多个用户发起两步随机接入时,由于多用户选择的前导码对应的数据可能映射到相同的时频资源导致发生数据碰撞,因此下面首先对msgA PUSCH检测时可能出现的情况进行分析。如图6所示,以两个用户选择不同前导码为例。
(1)情况1:两个前导码对应的数据映射到不同PO。
如用户0选择了前导码索引#1,用户1选择了前导码索引#60,此时两个前导码对应的数据部分映射到正交资源上,没有发生碰撞,可以通过解码不同频域位置的PO得到相应的数据信息。
(2)情况2:两个前导码对应的数据映射到相同的PO、不同的DMRS index。
如用户0选择了前导索引#1,用户1选择了前导索引#15,此时两个前导码对应的数据部分都映射到PO0,但是用户0对应DMRS index0,用户1对应DMRS index1。这种情况下,虽然数据部分在时频域发生重叠,但是接收端通过不同位置的DMRS信道估计进行多用户检测,根据不同的信道估计结果进行串行干扰消除,可以对碰撞数据进行解码。
(3)情况3:两个前导码对应数据映射到相同的PO、相同的DMRS index。
如用户0选择了前导码索引#1,用户1选择了前导码索引#7,此时两个前导码都映射到PO 0、DMRS index 0。但是由于一个DMRS index位置有8个正交的DMRS码分复用,前导码#1 与前导码#7对应了不同的DMRS。DMRS由具有良好自相关与互相关性质的ZC序列生成,因此可以利用码分复用的正交DMRS进行信道估计,通过串行干扰消除技术对碰撞数据进行解码。
对于情况1,首先根据检测到的前导码根索引值和循环移位值确定前导码的索引号,取值范围为{0,1,…,63},根据msgA PRACH与msgA PUSCH/DMRS的映射关系可以确定数据部分以及DMRS所在的时频位置,然后直接对该位置的数据进行解码。
对于情况2和情况3,根据图6所示的前导码与PUSCH/DMRS之间的映射关系可知,32个前导码共用一个PO资源,当多个用户选择了不同前导码但是相同PO资源时,会发生数据碰撞。因此,当多用户发送随机接入请求时,接收端需要采用串行干扰消除技术逐一对PUSCH数据进行解码。
3.2 msgA PUSCH检测流程
为了更好地进行描述,首先定义如下变量:
num:发起两步随机接入的用户数。
preamble_index:发送的前导索引集合。
detect_preamble_index:检测到的前导索引集合。
pusch_occasion:msgA PUSCH数据映射到的时频位置,取值为[0,1]。
pusch_occasion_num:msgA PUSCH数据可以映射到的时频位置数量,取值为2。
num_index:映射到 pusch_occasion 0或pusch_occasion 1的用户数,num_index≤num。
根据3.1节的分析,可以将检测流程整理如下:
Step1 PRACH判决。若判决正确,即preamble_index = detect_preamble_index,则继续进行Step 2;否则判决失败,结束流程。
Step2 根据检测到的前导索引集合确定num个用户的数据映射位置pusch_occasion。
Step3 pusch_occasion从0到1循环开始
Step3.1 判断映射到该位置的用户数num_index。
Step3.2 如果num_index=0,则返回Step 3;如果num_index=1,则跳到Step 3.3,如果num_index>1,则跳到Step 3.4。
Step3.3 只有一个用户数据映射到该时频资源位置,进行单用户检测,得到该用户的解调信号。其中,单用户检测流程与5G中PUSCH接收端流程相同。
Step3.4 有多个用户数据映射到该时频资源位置,进行多用户检测,依次得到每个用户的解调信号。本文提出的多用户检测算法在3.3节进行介绍。
Step4 对num个用户的解调信号进行信道解码,并统计误码率。
3.3 多判决排序串行干扰消除算法
MUSA采用非正交复数扩展序列,各用户的数据也是非正交地混叠在相同的时频资源中。为了应对用户间的多址干扰,在接收端通常采用基于线性检测的干扰消除算法MMSE-SIC进行多用户检测。然而,MMSE-SIC算法会存在误差传播的现象,即利用已检测用户的错误估计信息进行干扰消除,会给后续未检测用户引入新的干扰,导致系统性能恶化。为了克服传统MMSE-SIC算法存在的误差传播问题,提高用户检测信息的可靠度,文献[16]针对MIMO系统提出了一种多反馈串行干扰消除(Multiple Feedback Successive Interference Cancellation,MF-SIC)算法,该算法通过预先定义阈值进行阴影区域约束,对位于阴影区域内的符号进行多次反馈判决,以提高估计信号的准确性。然而该算法在待检测用户的选择策略上未进行优化,没有在进行串行干扰消除前对用户进行可靠性排序。本文针对MUSA系统提出了一种MD-OSIC算法。首先计算所有用户的信干噪比(Signal to Interference plus Noise Ratio,SINR)并进行排序,优化用户的选择策略;然后进行MMSE线性检测,并对位于不可靠区域内的符号进行多次判决,增大分集增益,从而有效减轻由于误差传播带来的影响。
3.3.1 不可靠区域判决
以QPSK为例,图8为QPSK星座图的不可靠区域示意图,其中D为两个星座点之间的距离,d为不可靠区域大小,令dth=d/D,当MMSE检测得到的符号位于该区域,即判决不可靠,需要进行下一步的多判决排序串行干扰消除,否则直接对该符号进行硬判决。dth越大,不可靠区域范围越大,需要进行多判决的符号数越多,相应的算法耗时也会增加。
图8 不可靠区域示意图
3.3.2 算法流程设计
首先计算所有未检测用户的SINR,并选取SINR最大的用户作为待检测用户,进行线性MMSE检测。然后对该符号进行不可靠区域判决,若该符号没有落在该区域内,则认为判决可靠,重构该用户数据并从叠加符号中删除,继续进行下一个用户的检测;若该符号位于该区域内,则认为判决不可靠,需要进行多判决过程。算法框架如图9所示,其中候选集合为该调制方式所有星座点的集合。
图9 MD-OSIC算法框图
本节描述的流程是在3.2节中Step 3.4基础上进行,即当前PO上有多个用户数据发生碰撞时,进行下述MD-OSIC算法流程。
为了更好地进行描述,首先定义如下变量:
m:当前检测的符号索引,m∈{1,2,…,M}。
k:当前检测的用户索引,k∈{1,2,…,K}。
Sm:接收到的第m个叠加信号。
xk,m:用户k实际发送的第m个符号。
sk,m:多反馈MMSE-SIC后确定的用户k的第m个符号。
vi:候选符号,i∈{1,2,…,I},I为调制阶数,v为该调制方式所有星座点的集合。
P[·]:调制。
Q[·]:解调。
MD-OSIC算法伪代码如下:
1符号m从1到M循环开始
2 计算K个用户的SINR,并按照从大到小的顺序排序为检测顺序
3 用户k从1到K循环开始
6 候选符号vi从v1到vI循环开始
7 假设xk,m为vi
8 进行MMSE-SIC,确定用户k+1到K的判决符号为[gk+1,M,gk+2,M,…,gK,M]
9 得到bm,i=[s1,m,s2,m,…,sk-1,m,vi,gk+1,M,gk+2,M,…,gK,M]
11 对sk,m进行解调解码,得到用户数据
12 更新Sm=Sm-h·sk,m,返回第3步
13 返回第1步
4 仿真与分析
在本文中,msgA PRACH的检测性能用漏检概率和虚警概率评估,msgA PUSCH的检测性能通过误码率评估。仿真过程中,数据部分的误码率统计是在前导码检测成功的基础上进行的。仿真参数配置如表2所示。
表2 仿真参数配置
卫星信道下msgA PRACH的检测性能如图10所示。当Es/No=-16 dB时,检测概率达到99.8%,虚警概率为0.01%,满足3GPP所规定检测概率在99%以上时虚警概率低于0.1%的指标要求。
图10 msgA PRACH 漏检及虚警概率
理想信道估计方案下,msgA PUSCH检测性能如图11所示。其中,传统方案为MMSE-SIC算法,本文方案为MD-OSIC算法,dth=0.2。
图11 msgA PUSCH误码率(理想信道估计)
当有两用户发起两步随机接入时,传统方案在Es/No=6.2 dB时误码率达到10-4,本文方案在Es/No=2.8 dB时误码率达到10-4,本文方案相比于传统方案在用户数为2时有大约3.4 dB的性能增益。对于用户数为4和6时,本文方案同样具有更优的检测性能。
图12给出了分别采用理想信道估计与LMMSE信道估计方案时MD-OSIC算法误码率性能曲线。由于信道估计误差的存在,在用户数为1和2时,LMMSE算法相比于理想信道估计有大约1.2 dB的性能损失。
图12 msgA PUSCH误码率(MD-OSIC算法)
在本文方案中,不可靠区域的大小会影响检测性能,因此本文对4用户采用理想信道估计方案时不同dth对误码率性能的影响进行了仿真评估,如图13所示。与dth=0.1相比,dth=0.2时其不可靠区域范围更大,会有更多的符号需要进行多次判决,因此其检测性能优于dth=0.1的情况;当继续增大不可靠区域至dth=0.3 时,其性能与dth=0.2接近,对误码率性能的提升较小,这是由于继续增大不可靠区域后,该区域内增加的多判决符号判决失败原因并非由误差传播问题导致,因此dth的取值并非越大对性能提升越明显。通过对算法计算量和系统性能的折中考虑,在本文仿真条件下,令dth=0.2可获得更优的检测性能。
图13 dth对误码率性能的影响
5 结 论
本文针对卫星场景提出了一种两步随机接入信道设计方案,对数据部分信道结构以及前导与数据部分之间的映射关系进行了重新设计,并给出了该信道设计方案下详细的收发两端信号处理及检测流程。针对传统串行干扰消除算法由于存在误差传播问题导致解码性能降低的问题,提出了一种MD-OSIC检测算法。仿真结果表明,本文提出的信道设计方案以及收发两端的信号处理流程能够实现多用户的两步随机接入过程,本文提出的接收端改进算法能够有效改善数据部分的误码率性能。仿真结果验证了所设计信道及检测算法在典型卫星通信场景下应用的可行性。