大家好,又见面了,我是你们的朋友全栈君。
SSB概念
SSB包含了PSS,SSS,PBCH
同步信号和PBCH块(Synchronization Signal and PBCH block, 简称SSB),它由主同步信号(Primary Synchronization Signals, 简称PSS)、辅同步信号(Secondary Synchronization Signals, 简称SSS)、PBCH三部分共同组成。
通过PSS和SSS,UE可以获得定时信息,频偏信息,小区ID等信息;
通过PBCH可以获得无线帧号,与空口进行对齐,以及调度SIB1的一些信息。
SSB特征
SSB时域上共占用4个OFDM符号,频域共占用240个子载波(20个PRB),编号为0~239,如下图所示:
SSB的时频结构示意图
1、PSS位于符号0的中间127个子载波。
2、SSS位于符号2的中间127个子载波;为了保护PSS、SSS,它们的两端分别有不同的子载波Set 0。
3、PBCH位于符号1/3,以及符号2,其中符号1/3上占0~239所有子载波,符号2上占用除去SSS占用子载波及保护SSS的子载波Set 0以外的所有子载波。
4、DM-RS位于PBCH中间,在符号1/3上,每个符号上60个,间隔4个子载波,其中子载波位置偏移为:(其中物理小区总共为1008个)。
5、其中PSS、SSS、PBCH及其DM-RS占用不同的符号
PSS、SSS、PBCH及其DM-RS在SSB中占用资源(协议38.211)如下图所示:
注:
1) 其中和分别表示SSB内的频域索引和时域索引;
2) 其中的含义参见上面DM-RS的描述;
3) 其中“Set 0”表示UE可假定上图的该部分的RE被设置为0。
SSB频域
对于SSB频域位置的确定,两种确定方式:
1、 UE在没收到显性指示SSB频域位置时,UE确定SSB的频域位置
2、 UE在收到显性指示SSB的频域位置时,UE确定SSB的频域位置
未搜到SIB1之前的SSB频域位置
- 首先根据同步栅格(同步栅格指示当不存在SSB位置的显示信令时,UE可用于系统获取的SSB的频域位置(UE开机时可根据同步栅格得到SSB的大致范围,然后进行盲搜))确定SSB的频域位置(参考协议38.104)
其中同步栅格定义了所有频率,SSB的频率位置定义为:SSBEF,其编号为GSCN(Global Synchronization Channel Number,简称GSCN),定义所有频率范围的SSREF和GSCN的参数如下图所示:
2) 然后UE根据频点(对应GSCN)得到SSB pattern(该值可得到SSB的频域位置),其每个频带的同步栅格如下图所示
A、对应FR1(Frequnecy Range)
NOTE 1: SS Block pattern is defined in section 4.1 in TS 38.213 [10].
B、对应FR2(Frequnecy Range)
NOTE 1: SS Block pattern is defined in section 4.1 in TS 38.213 [10].
对于一个SSB,UE将认为:
- 天线端口p = 4000用于传输PSS、SSS、PBCH及其DMRS;
- 对于PSS、SSS、PBCH及其DMRS具有相同CP长度和子载波;
- 对于SSB typeA(Sub6G),子载波间隔(即对应15/30KHz)、的取值为,并且以15KHz子载波间隔表示;
- 对于SSB typeB(mmWave),子载波间隔(即对应120/240KHz)、(由高层subCarrierSpacingCommon提供的子载波间隔所表示)的取值为,并且以60KHz子载波间隔表示;
- 资源块的子载波0的中心与公共资源块的子载波0的中心一致,其中子载波间隔由高层参数subCarrierSpacingCommon提供,该公共资源块与SSB块的第一个资源块的子载波0重叠。
注:
1) 其中表示公共资源块,即SSB所在的CRB编号,其由SIB1->ServingCellConfigCommonSIB->DownlinkConfigCommonSIB->FrequencyInfoDL-SIB->offsetToPointA参数获得;
2)表示公共资源块中的子载波0到SSB的子载波0的子载波偏移,其中的低4位由MIB参数ssb-SubcarrierOffset给出;对于SSB typeA,的最高有效位由PBCH净载荷给出。如果ssb-SubcarrierOffset没有被高层提供,则的低4位来源于SSB和offsetToPointA之间的频域差;
3) 接收到SIB1后确定周期SSB的频域位置,其SSB的周期频域位置示意图如下图所示:
SSB时域位置
未搜到SIB1之前的SSB时域位置
根据GSCN得到了5种SSB pattern(下文的CaseA~CaseE),其对应SSB的时域关系如下所述:
对于具有SSB的半帧(5ms),候选SSB的数目和第一个符号索引位置根据SSB的子载波间隔确定如下(注:1)下面的case都是针对半帧而言;2){}中指示的是第1个OFDM符号位置):
- CaseA-15KHz间隔:候选SSB的第一个符号的索引为{2, 8} + 14*n(注:由于{}有两个数,则每个1ms 1个slot内有2个SSB)。对于F(Frequent) <= 3GHz,n = 0,1(注:占2个sot,{}中也是两个数,则2ms总共有4个SSB,故Lmax = 4)。对于3GHz < F <= 6GHz,n = 0,1,2,3(即占4个slot,4ms内Lmax = 8)。
- CaseB-30KHz间隔:候选SSB的第一个符号的索引为{4, 8, 16, 20} + 28*n(1ms内2个slot,1 slot内有2个SSB)。对于F(Frequent) <= 3GHz,n = 0(即占2个slot,1ms内故Lmax = 4)。对于3GHz < F <= 6GHz,n = 0,1,2,3(即占4个slot,2ms内Lmax = 8)。
- CaseC-30KHz间隔:候选SSB的第一个符号的索引为{2, 8} + 14*n(1ms内2个slot,1 slot内有2个SSB)。对于F(Frequent) <= 3GHz,n = 0, 1(即占2个slot,2ms内故Lmax = 4)。对于3GHz < F <= 6GHz,n = 0,1,2,3(即占4个slot,4ms内Lmax = 8)。
- CaseD-120KHz间隔:候选SSB的第一个符号的索引为{4, 8, 16, 20} + 28*n,对于F > 6GHz,n = 0, 1, 2, 3, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 18(1ms内8个slot,1个slot内2个SSB,1ms占16个SSB,共4组,则4ms内Lmax = 64)。
- CaseE-240KHz间隔:候选SSB的第一个符号的索引为{8, 12, 16, 20, 32, 36, 40, 44} + 56*n,对于F > 6GHz,n = 0, 1, 2, 3, 5, 6, 7, 8 (1ms内16个slot,1个slot内2个SSB,1ms占32个SSB,共2组,则2ms内Lmax = 64)。
5种SSB pattern的每个SSB的起始符号以及在不同频率下的SSB个数如下图所示:
- 每个子载波间隔和频率的SSB时域的起始符号
注:表中S表示不同SSB在半帧中的起始位置。
举例:子载波间隔为15KHz,对应CaseA,在频率f <= 3GHz,则1 slot中有两个SSB,半帧中共4个SSB,从表6.5中可以得知,其4个SSB的起始符号分别为s = 2,8,16,22,其示意图如下图所示:
caseA,f <= 3GHz下的SSB时域位置示意图
搜到SIB1之后的SSB时域位置
- 首先通过SIB1得到SSB在时域的周期SIB->ServingCellConfigCommonSIB->ssb->periodicityServingCellSIB参数获得;
- 然后在根据上述描述5个SSB pattern的时域位置确定方式进行SSB具体的时域位置。
A:当UE接收到第一个SSB从PBCH中得到MIB之后就确定了SIB1的位置,而接收到SIB1之后会确定之后SSB周期的频域位置,而UE不需要去整个频带上进行盲检。同时也确定了SSB在时域的周期,此时在时域上看,还是有多个候选的SSB,则在SIB1中通过SIB1->ServingCellConfigCommonSIB->ssb-PositionsInBurst参数进行描述,其描述如下图所示:
举例说明:
如果子载波间隔为15KHz,频率小于等于3GHz,对应SSB时域部分CaseA,其中SSB的个数Lmax = 4,则其其意图如上述图所示。
ssb-PositionInBurst中inOneGroup高4为有效,低4位无效,而此时频率是小于等于3GHz的,那么groupPresence的8bits应全为0。假如inOneGroup的8bits = 1010 0000,UE就会去检测第1个SSB0和SSB2,而此时UE不会去检测SSB1和SSB3的位置。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148413.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...