|
|||||
SS Block in DetailSS Block(SSB) stands for Synchronization Signal Block and in reality it refers to Synchronization/PBCH block because Synchnronization signal and PBCH channel are packed as a single block that always moves together. The components of this block are as follows :
This is just two major components of SS Block and it carries a lot of details. Followings are the topics that will be explained in this page. LTE SS Block vs NR SS BlockFollowing illustrations shows some high level differences between LTE SS Block and NR SS Block (In LTE, we didn't use the term 'SS Block', but LTE also use PSS/SSS and PBCH which can be called as SS Block). Major difference between LTE SS/PBCH and NR SSH lies in the periodicity of each channel. In LTE, SS(PSS,SSS) are transmitted in every 5ms and PBCH is tranmitted in every 10ms. That is, the periodicity of SS and PBCH are different in LTE. However in NR, SS and PBCH are transmitted all at the same time, which means their perodicity is all same. Typical periodicity of SSB(SS+PBCH) in NR is 20ms, but the peridicity can vary in terms of 3gpp specification. Time Domain transmission pattern of SS Block in NR is more complicated than LTE SS Block (Actually LTE has only one pattern of SSB Transmission in Time Domain as shown in LTE Frame Structure. In LTE, the subframe number and OFDM symbol number within the subframe is always same in any cases). In NR, there are many different cases of Time Domain pattern of SSB Transmission as illustrated below. The transmission of SS/PBCHs within an SS/PBCH set is confined to a 5 ms window. SSB Transmission Pattern(SSB Bitmap)The illustration of SSB transmission shown above is the case where all the SSB is transmitted, but it is not required to transmit all the SSB. Depending on network requirement, it can selectively transmit only a few SSB and inform UE of which SSBs are transmitted and which are not transmitted. This transmission pattern is informed via a RRC IE(Information Element) called ssb-PositionInBurst. The structure of ssb-PositionInBurst is a little different depending on which message it is used.. I don't know why they designed the same thing in different way though. This is used for ServingCellConfigCommonSIB ::= SEQUENCE { ... }, }
This is used for ServingCellConfigCommon ::= SEQUENCE { ...., ssb-PositionsInBurst CHOICE { }, .. } Even though the structure of ssb-PositionInBurst is a little bit different depending cases, the way of interpretation is pretty similar. The first bit(the left most bit) indicates the first SSB, the second bit(the second from the left most bit) indicates the second SSB etc. It would be much easier if you go through some examples. Example 1 >If the bitmap is set as follows in RRC Connection Reconfiguration of LTE Anchor to add an NR cell is set as below, it means the SSB pattern of this NR cell is sub 3Ghz Case A or Case B since it defines only 4 bits (4 SSBs) and the NR Cell transmit every SSBs because every bit is set to be '1'.
}, Example 2 >If the bitmap is set as follows in RRC Connection Reconfiguration of LTE Anchor to add an NR cell is set as below, it means the SSB pattern of this NR cell is sub 3Ghz Case A or Case B since it defines only 4 bits (4 SSBs) and the NR Cell transmit the first SSB (SSB#0) and the third SSB(SSB#2).
}, Example 3 >If the bitmap is set as follows in RRC Connection Reconfiguration of LTE Anchor to add an NR cell is set as below, it means the SSB pattern of this NR cell is Case A or Case B between 3Ghz and 6Ghz since it defines 8 bits (8 SSBs) and every SSBs are transmitted because all the bits are set to be 1.
}, Example 4 >If the bitmap is set as follows in RRC Connection Reconfiguration of LTE Anchor to add an NR cell is set as below, it means the SSB pattern of this NR cell is Case A or Case B between 3Ghz and 6Ghz since it defines 8 bits (8 SSBs) and SSB#0,#2,#4,#6 are transmitted.
}, Example 5 >If the bitmap is set as follows in RRC Connection Reconfiguration of LTE Anchor to add an NR cell is set as below, it means the SSB pattern of this NR cell is Case A or Case B between 3Ghz and 6Ghz since it defines 8 bits (8 SSBs) and SSB#0,#1,#2,#3 are transmitted. }, Example 6 >If the bitmap is set as follows in RRC Connection Reconfiguration of LTE Anchor to add an NR cell is set as below, it means the SSB pattern of this NR cell is Case D or Case E in mmWave(over 6Ghz) since it defines 64 bits (64 SSBs) and every SSBs are transmitted because all the bits are set to be 1. }, Example 7 >If the bitmap is set as follows in RRC Connection Reconfiguration of LTE Anchor to add an NR cell is set as below, it means the SSB pattern of this NR cell is Case D or Case E in mmWave(over 6Ghz) since it defines 64 bits (64 SSBs) and SSB#0,#1,#2,#3,#4,#5,#6,#7 are transmitted.
}, Details on NR SS BlockEven though it is a small package sitting in a radio frame, it has many different components in it and the way it works is pretty complicated. So it would be too much to describe all the details of SS Block in a single page. In my notes, the detailed description of the SS Block is scattered among several different pages. This page is written in order to consolidate all of those separate pagesand help you to get a big picture on SS Block.
How SSB Subcarrier Spacing is determined ?The general tule for SSB SCS determination is specified in 38.213 - 4.1 as follows. if the SCS of SS/PBCH blocks is not provided by ssbSubcarrierSpacing, the applicable cases for a cell depend on a respective frequency band as specified in this table for FR1 and this table for FR2. In case of NSA, SSB subcarrierSpacing tend to be explicitely specified by RRC(i.e, ssbSubcarrierSpacing) but in SA case I think UE need to figure out from the combination of this table and blind search (i.e, try all SCS that are allowed in a specific band) How SSB is indexed and get informed to UE ?Each SSBlock within a SSBlot Set (ie, all of the SSblocks within the 5 ms period of the SSB transmission) is assigned with a unique numbers starting from 0 and increasing by 1. This number reset to 0 in the next SS Block Set (i.e, next 5 ms span after SSB transmission cycle(e.g, 20 ms). This unique number (i.e, SSBlock Index) is informed to UE via two different within SSBlock.
38.213 - 4.1 states as follows : The candidate SS/PBCH blocks in a half frame are indexed in an ascending order in time from 0 to L-1. A UE shall determine the 2 LSB bits, for L = 4, or the 3 LSB bits, for L > 4 , of a SS/PBCH block index per half frame from a one-to-one mapping with an index of the DM-RS sequence transmitted in the PBCH. For L = 64 , the UE shall determine the 3 MSB bits of the SS/PBCH block index per half frame by PBCH payload bits Beam Sweeping by SSBThis part is inspired by Dan Serbescu who has been doing a lot of proof reading for my notes and makes well use of the notes. He is posting many small tips on Linked in with revised figures from my notes. In many cases, I liked his revised figures(illustration) better than my original drawing. This is about how beam sweeping is implemented by changing beam direction for each SSB transmission. I think following illustration would be intuitive and self-sufficient. You may need much explanation on this. First take a look at this illustration and try to make your own story out of it. Let me make my own story out of this illustratioin (I hope you already had your version of stories). This is the mechanism by which UE measure and identifies the best beam for a UE. i) Multiple SSBs are being transmitted with a certain interval. ii) Each SSB can be identified by a unique number called SSB index iii) Each SSB is transmitted via a specific beam radiated in a certain direction iv) Multiple UEs are located at various places around a gNB. v) UE measures the signal strength of each SSB it detected for a certain period (a period of one SSB Set). vi) From the measurement result, UE can identifies the SSB index with the strongest signal strength. This SSB with the strongest signal strength is the best beam for the UE 1. (For example, Beam #1 is the best beam(the selected beam for UE1 and Beam#7 is the best beam for the UE 2) RRC Parameters Related to SS/PBCH BlockThe details of SS/PBCH block is informed to UE via various RRC parameters as listed below. It will take pretty much time and effort to fully understand the correlation between the low layer parameters listed above and RRC parameters listed below. 36.331-f30 MIB ::= SEQUENCE { systemFrameNumber BIT STRING (SIZE (6)), dmrs-TypeA-Position ENUMERATED {pos2, pos3}, pdcch-ConfigSIB1 INTEGER (0..255), cellBarred ENUMERATED {barred, notBarred}, intraFreqReselection ENUMERATED {allowed, notAllowed}, spare BIT STRING (SIZE (1)) }
SIB1 ::= SEQUENCE { cellSelectionInfo SEQUENCE { q-RxLevMin Q-RxLevMin, q-RxLevMinOffset INTEGER (1..8) OPTIONAL, -- Need R q-RxLevMinSUL Q-RxLevMin OPTIONAL, -- Need R q-QualMin Q-QualMin OPTIONAL, -- Need R q-QualMinOffset INTEGER (1..8) OPTIONAL -- Need R } OPTIONAL, -- Need S cellAccessRelatedInfo CellAccessRelatedInfo, connEstFailureControl ConnEstFailureControl OPTIONAL, -- Need R si-SchedulingInfo SI-SchedulingInfo OPTIONAL, -- Need R servingCellConfigCommon ServingCellConfigCommonSIB OPTIONAL, -- Need R ims-EmergencySupport ENUMERATED {true} OPTIONAL, -- Need R eCallOverIMS-Support ENUMERATED {true} OPTIONAL, -- Cond Absent ue-TimersAndConstants UE-TimersAndConstants OPTIONAL, -- Need R
uac-BarringInfo SEQUENCE { uac-BarringForCommon UAC-BarringPerCatList OPTIONAL, -- Need S uac-BarringPerPLMN-List UAC-BarringPerPLMN-List OPTIONAL, -- Need S uac-BarringInfoSetList UAC-BarringInfoSetList, uac-AccessCategory1-SelectionAssistanceInfo CHOICE { plmnCommon UAC-AccessCategory1-SelectionAssistanceInfo, individualPLMNList SEQUENCE (SIZE (2..maxPLMN)) OF UAC-AccessCategory1-SelectionAssistanceInfo } OPTIONAL } OPTIONAL, -- Need R
useFullResumeID ENUMERATED {true} OPTIONAL, -- Need N lateNonCriticalExtension OCTET STRING OPTIONAL, nonCriticalExtension SEQUENCE{} OPTIONAL }
UAC-AccessCategory1-SelectionAssistanceInfo ::= ENUMERATED {a, b, c}
ServingCellConfigCommonSIB ::= SEQUENCE { downlinkConfigCommon DownlinkConfigCommonSIB, uplinkConfigCommon UplinkConfigCommonSIB OPTIONAL, -- Need R supplementaryUplink UplinkConfigCommonSIB OPTIONAL, -- Need R n-TimingAdvanceOffset ENUMERATED { n0, n25560, n39936 } OPTIONAL, -- Need S }, tdd-UL-DL-ConfigurationCommon TDD-UL-DL-ConfigCommon OPTIONAL, -- Cond TDD ss-PBCH-BlockPower INTEGER (-60..50), ... }
ServingCellConfigCommon ::= SEQUENCE { physCellId PhysCellId OPTIONAL, downlinkConfigCommon DownlinkConfigCommon uplinkConfigCommon UplinkConfigCommon OPTIONAL, supplementaryUplinkConfig UplinkConfigCommon OPTIONAL, n-TimingAdvanceOffset ENUMERATED { n0, n25600, n39936 }, }, dmrs-TypeA-Position ENUMERATED {pos2, pos3}, lte-CRS-ToMatchAround SetupRelease { RateMatchPatternLTE-CRS } , rateMatchPatternToAddModList SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPattern rateMatchPatternToReleaseList SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPatternId subcarrierSpacing SubcarrierSpacing OPTIONAL, -- Cond HOAndServCellAdd tdd-UL-DL-ConfigurationCommon TDD-UL-DL-ConfigCommon OPTIONAL, ss-PBCH-BlockPower INTEGER (-60..50), ... }
FrequencyInfoDL ::= SEQUENCE { absoluteFrequencySSB ARFCN-ValueNR, ssb-SubcarrierOffset INTEGER (1..23) OPTIONAL, -- Need S frequencyBandList MultiFrequencyBandListNR, absoluteFrequencyPointA ARFCN-ValueNR, scs-SpecificCarrierList SEQUENCE (SIZE (1..maxSCSs)) OF SCS-SpecificCarrier, ... }
SCS-SpecificCarrier ::= SEQUENCE { offsetToCarrier INTEGER (0..2199), subcarrierSpacing SubcarrierSpacing, k0 ENUMERATED {n-6, n0, n6}, carrierBandwidth NTEGER (1..maxNrofPhysicalResourceBlocks), ... }
Reference : YouTube[1] 5G Explained: Synchronization Signal Blocks in 5G NR
|
|||||