一. SIB31信令概述
SystemInformationBlockType31 (SIB31) 是 3GPP网络中的一种特定系统信息块,用于为服务小区提供卫星辅助信息。这种信息特别适用于非地面网络(NTN, Non-Terrestrial Networks),包括基于卫星的通信系统。
1. 用途:
SIB31 用于向 NTN 小区中的用户设备(UE)提供卫星特定的辅助数据。这些信息帮助 UE 在基于卫星的网络中优化连接和性能,因为卫星通信中存在传播延迟、多普勒频移等特殊挑战。
2. 仅适用于 NTN:
SIB31 仅在 NTN 小区中广播。在传统的地面网络(蜂窝网络)中,不会传输此 SIB。
3. 内容:
SIB31 中的卫星辅助信息可能包括:
-
卫星星历数据:关于卫星位置和运动的信息。
-
定时信息:用于补偿由于卫星与 UE 之间长距离传播导致的延迟。
-
多普勒频移信息:帮助 UE 调整因卫星相对运动引起的频率偏移。
-
小区特定参数:针对卫星小区独特特性的参数。
4. UE 行为:
当 UE 接收到 SIB31 后,会利用提供的卫星辅助信息来改善同步、移动性管理以及整体通信性能,从而更好地适应 NTN 环境。
SIB31 是一种专为支持 5G 网络中的 NTN 操作而设计的系统信息块。它向 UE 提供关键的卫星辅助信息,使 UE 能够在基于卫星的小区中有效通信。这是将 5G 连接扩展到全球和偏远地区的重要功能。
SIB31消息的ASN.1编码结构如下:
二. SIB31信令详解
SIB31 ASN.1消息包含多个信令(IE)。这些IE根据功能的不同,可以分为以下几类:
distanceThresh
-
描述 :表示从服务小区参考位置的距离,用于在 RRC_IDLE 和 RRC_CONNECTED 状态下基于位置的测量启动(参见 TS 36.304 [4])。
-
单位 :每个步长代表 50 米。
epochTime
-
描述:表示卫星星历数据和公共 TA(Timing Advance)参数的纪元时间(参见 TS 36.213 [23])。如果存在地球移动小区的参考位置,该字段也指示其纪元时间。
-
参考点:纪元时间的参考点是上行链路时间同步参考点。
-
具体说明:
-
epochTime
是由startSFN
和startSubframe
指示的 DL(下行链路)子帧的起始时间。 -
对于服务小区,
startSFN
指示当前 SFN(系统帧号)或接收到epochTime
消息后的下一个 SFN。 -
如果该字段不存在,则纪元时间是承载 SIB31(-NB) 的 SI 消息传输结束时的 DL 子帧起始时间。
-
在切换或条件切换情况下,该字段基于目标小区的定时,即
startSFN
和startSubFrame
指示目标小区的 SFN 和子帧号。
-
-
专用信令 :当通过专用信令提供 SIB31(-NB) 时,E-UTRAN 始终包含
epochTime
。
k-Mac
-
描述:当下行链路和上行链路帧定时在 eNB 处未对齐时使用的调度偏移(参见 TS 36.213 [23])。
-
单位:毫秒(ms)。
-
默认值 :如果字段不存在,UE 使用默认值 0。
k-Offset
-
描述:用于 NTN 中定时关系的调度偏移(参见 TS 36.213 [23])。
-
单位:毫秒(ms)。
nta-Common
-
描述:网络控制的公共 TA(Timing Advance)参数(参见 TS 36.213 [23])。
-
单位:微秒(μs)。
-
步长 :每个步长为 32.55208 × 10⁻³ μs。实际值 = 字段值 × 32.55208 × 10⁻³。
-
默认值 :如果字段不存在,UE 使用默认值 0。
nta-CommonDrift
-
描述:公共 TA 的漂移率(参见 TS 36.213 [23])。
-
单位:微秒/秒(μs/s)。
-
步长 :每个步长为 0.2 × 10⁻³ μs/s。实际值 = 字段值 × 0.2 × 10⁻³。
-
默认值 :如果字段不存在,UE 使用默认值 0。
nta-CommonDriftVariation
-
描述:公共 TA 的漂移率变化(参见 TS 36.213 [23])。
-
单位:微秒/秒²(μs/s²)。
-
步长 :每个步长为 0.2 × 10⁻⁴ μs/s²。实际值 = 字段值 × 0.2 × 10⁻⁴。
-
默认值 :如果字段不存在,UE 使用默认值 0。
orbitalParameters
- 描述 :卫星轨道参数的瞬时值。这些值至少在
ul-SyncValidityDuration
和epochTime
定义的持续时间内有效。
referenceLocation
-
描述 :NTN(准)地球固定小区或地球移动小区的参考位置,用于在 RRC_IDLE 和 RRC_CONNECTED 状态下基于位置的测量启动(如果配置了
distanceThresh
)。对于地球移动小区,广播的参考位置对应于epochTime
,并用于评估事件 D2 和条件事件 D2。 -
UE 行为:UE 基于服务卫星星历数据推导实时参考位置(参见 TS 36.304 [4])。
stateVectors
- 描述 :卫星状态向量的瞬时值。这些值至少在
ul-SyncValidityDuration
和epochTime
定义的持续时间内有效。
ul-SyncValidityDuration
-
描述 :卫星星历数据和公共 TA 参数的有效期,即 UE 可以应用卫星星历数据而无需获取新星历数据的最大时间(从
epochTime
开始计算,参见 TS 36.213 [23])。 -
单位:秒(s)。
-
取值:
-
s5
对应 5 秒, -
s10
对应 10 秒, -
以此类推。
-
-
更新条件 :仅当
epochTime
、nta-CommonParameters
或ephemerisInfo
中的至少一个更新时,ul-SyncValidityDuration
才会更新。
三. 星历信令解析
EphemerisOrbitalParameters 用于以 轨道参数 的形式提供卫星星历数据,其坐标系为 地心惯性坐标系(ECI, Earth-Centered Inertial)。
关键点:
-
坐标系:
-
ECI(地心惯性坐标系):一种以地球为中心但不随地球旋转的坐标系,通常用于描述卫星轨道。
-
ECEF(地心地固坐标系):一种以地球为中心并随地球旋转的坐标系,通常用于地面定位。
-
关系 :在 纪元时间(Epoch Time),ECI 和 ECEF 坐标系是重合的(即它们的 x、y、z 轴对齐)。
-
-
用途:
-
提供卫星的轨道参数,用于计算卫星的位置和速度。
-
这些参数在 纪元时间 是有效的,并且可以用于推导卫星在特定时间点的状态。
-
EphemerisOrbitalParameters消息的ASN.1编码结构如下:
EphemerisOrbitalParameters 中的轨道参数(六根数)定义如下:
EphemerisOrbitalParameters 提供了卫星轨道的详细参数,包括平近点角、偏心率、倾角、升交点赤经、近地点幅角和半长轴。这些参数以特定的步长和单位进行编码,UE 可以通过字段值计算出实际值,从而推导卫星的轨道状态。这些信息对于 NTN 环境中的卫星通信至关重要。
EphemerisStateVectors 用于以 位置和速度状态向量 的形式提供卫星星历数据,其坐标系为 地心地固坐标系(ECEF, Earth-Centered Earth-Fixed)。
关键点:
-
坐标系 :
-
ECEF(地心地固坐标系):一种以地球为中心并随地球旋转的坐标系,通常用于地面定位和导航。
-
在 ECEF 坐标系中,卫星的位置和速度可以直接用于计算与地面站的相对关系。
-
-
用途 :
-
提供卫星的位置和速度状态向量,用于精确描述卫星在特定时间点的运动状态。
-
这些信息对于 UE 在 NTN 环境中的同步、测量和通信至关重要。
-
-
状态向量 :
-
位置向量(Position Vector):卫星在 ECEF 坐标系中的位置(x, y, z)。
-
速度向量(Velocity Vector):卫星在 ECEF 坐标系中的速度(vx, vy, vz)。
-
-
有效期 :
- 状态向量的有效期通常由 ul-SyncValidityDuration 字段定义,表示从 纪元时间(Epoch Time) 开始的最大有效时间。
EphemerisStateVectors 消息的ASN.1编码结构如下:
四. SIB31的应用场景
在 非地面网络(NTN, Non-Terrestrial Networks) 中,由于卫星与地面用户设备(UE)之间的距离较远且卫星高速运动,UE 需要处理 传播延迟 和 多普勒频移 问题。SystemInformationBlockType31 (SIB31) 提供了关键的信息,帮助 UE 实现传播延迟补偿和多普勒频移补偿。
1. 传播延迟补偿
传播延迟是由于信号在卫星与 UE 之间传播所需的时间引起的,尤其是在地球静止轨道(GEO)卫星中,延迟可能达到数百毫秒。SIB31 提供了以下信息来帮助 UE 补偿传播延迟:
SIB31 中的相关字段:
-
nta-Common:
-
表示网络控制的公共定时提前量(TA, Timing Advance)。
-
作用:UE 根据此值调整上行链路信号的发送时间,以补偿传播延迟。
-
-
epochTime:
-
表示卫星星历数据和公共 TA 参数的纪元时间。
-
作用:UE 使用此时间作为参考点,计算当前的传播延迟。
-
-
ul-SyncValidityDuration:
-
表示卫星星历数据和公共 TA 参数的有效期。
-
作用:UE 在此有效期内应用 TA 值,超出有效期后需要重新获取 SIB31。
-
UE 的处理流程:
-
接收 SIB31:
- UE 从服务小区接收 SIB31,提取
nta-Common
和epochTime
字段。
- UE 从服务小区接收 SIB31,提取
-
计算传播延迟:
-
UE 根据
nta-Common
提供的 TA 值,计算当前的上行链路定时调整量。 -
例如,如果
nta-Common
字段值为 100,则实际 TA 值 = 100 × 32.55208 × 10⁻³ = 3.255208 μs。
-
-
调整上行链路定时:
-
UE 根据计算出的 TA 值,提前发送上行链路信号,以补偿传播延迟。
-
例如,如果传播延迟为 10 ms,UE 会提前 10 ms 发送上行链路信号。
-
-
有效期管理:
- UE 在
ul-SyncValidityDuration
定义的有效期内使用当前的 TA 值,超出有效期后重新获取 SIB31 并更新 TA 值。
- UE 在
2. 多普勒频移补偿
多普勒频移是由于卫星与 UE 之间的相对运动引起的频率偏移。SIB31 提供了以下信息来帮助 UE 补偿多普勒频移:
SIB31 中的相关字段:
-
velocityVX, velocityVY, velocityVZ:
-
表示卫星在 ECEF 坐标系中的速度向量。
-
作用:UE 根据卫星速度计算多普勒频移。
-
-
stateVectors:
-
表示卫星的状态向量(位置和速度)。
-
作用:UE 使用此信息计算卫星与 UE 之间的相对速度。
-
-
orbitalParameters:
-
表示卫星的轨道参数。
-
作用:UE 使用此信息推导卫星的实时位置和速度。
-
UE 的处理流程:
-
接收 SIB31:
- UE 从服务小区接收 SIB31,提取
velocityVX
、velocityVY
、velocityVZ
和stateVectors
字段。
- UE 从服务小区接收 SIB31,提取
-
计算卫星速度:
- UE 根据
velocityVX
、velocityVY
、velocityVZ
字段计算卫星的实际速度。
- UE 根据
-
计算多普勒频移:
- UE 根据卫星速度和 UE 自身的运动状态,计算多普勒频移。
-
调整上行链路频率:
-
UE 根据计算出的多普勒频移,调整上行链路信号的发送频率,以补偿频率偏移。
-
例如,如果多普勒频移为 1 kHz,UE 会将上行链路频率增加 1 kHz。
-
-
动态更新:
- 由于卫星和 UE 的运动状态可能随时间变化,UE 需要定期接收 SIB31 并更新多普勒频移补偿值。
通过以上处理,UE 能够在 NTN 环境中实现高效同步和通信,克服卫星通信中的传播延迟和多普勒频移挑战。