Amarisoft

NR SA - SSB / CSI RS

 

The purpose of this tutorial is a little straightforward. it is about how to change SSB bitmap, but implementation is not that simple because just increasing the number of active bits in SSB bitmap may cause collision of other signals for example coliision with CSI RS as shown below.

NR SA SSB CSI RS CommonError 01

To resolve this kind of collision, you may need to change the resource allocation of other signals (e.g, CSI RS) to avoid the collision with the SSB. What I am going to show you in this tutorial is to change the resource allocation of CSI RS when the number of active bits in SSB bitmap is increased.

 

 

Table of Contents

 

 

Test Setup

 

Test setup for this tutorial is as shown below.  This is just for low layer testing, you may not need any complicated IP layer setup.

TestSetup Callbox UE 1sdr 01

 

 

 

Key Configuration Parameters

 

Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.

 

 

 

Test 1 : n78, Case C - SSB bitmap 11111111

 

In this test, I will show you the case where all of the SSB bits are enabled. Enabling the ssb bit is very simple.. changing just one parameter is enough but the problem rises in the case where the enabled SSB bit collides with other signals especially with CSI-RS.  You may need to change CSI-RS so that it does not collide with the enabled SSB. It would not be easy to change CSI-RS properly without clear picture in your mind. So my recommendation is to draw some picture showing the physical resources for various physical signals as shown below. In this test, it is assumed that TDD_Config 2 of our sample configuration : gnb-sa.cfg.

 

First draw a picture showing all the major physical signal resources except CSI-RS and mark which slots/symbols are allowed for CSI-RS and which are not allowed as shown below.

NR SA SSB CSI RS Test 1 Overview 01

Then allocate the various CSI-RS to any of the allowed slots/symbols. There can be many possibilities, but following diagram shows only one of those possibilities and this will configured into the configuration file for this test.

NR SA SSB CSI RS Test 1 Overview 02

 

 

Configuration

 

The configuration shown here is common configuration for all the subtests belonging to Test 1 and I will not show this configuration repeatedly for every subtest.

I have used gnb-sa-ssb-11111111.cfg which is copied and modified from gnb-sa.cfg

NR SA SSB CSI RS Test 1 Config 01

I am using the default mme, ims config as shown below. ims.default.cfg is used for ims.cfg and mme-ims.cfg is used for mme.cfg

NR BWP Test1 Configuration 02

In gnb-sa-ssb-11111111.cfg , it is configured as follows.

TDD is used for duplex mode and TDD DL/UL configuration is set to NR_TDD_CONFIG 2. This is one of the preconfigured set in the configuration file provided by sample configuration.

NR SA SSB CSI RS Test 1 Config 02

In this example, ssb_pos_bitmap is set to "11111111" meaning that every SSB burst is activated.

NR SA SSB CSI RS Test 1 Config 03

Followings are configurations for csi-rs. Just looking at the numbers would not make much sense.  Check out the resource allocation diagram above again and check out the symbol number (OFDM symbol number) and offset (slot) in this configuration and compare them with the diagram shown above.

The parameters to be noted in this example are as follows : (NOTE : the detailed meaning of each of these parameter in terms of 3GPP, check out this note)

NR SA SSB CSI RS Test 1 Config 04

NR SA SSB CSI RS Test 1 Config 05

NR SA SSB CSI RS Test 1 Config 06

This is the configuration for interference measurement. symbol_location and offset are configured not to collide with SSB and all other settings are set to be same as in the original sample configuration file.

NR SA SSB CSI RS Test 1 Config 07

This is for blank resource elements configuration within PDSCH RB. Set first_symb and offset so that it does not collide with the SSB burst.

NR SA SSB CSI RS Test 1 Config 08

 

 

Perform Test

 

Check out the cell phy configuration and see if overall configuration is set as intended

NR SA SSB CSI RS Test 1 Run 01

Power on UE and wait until the initial attach is complete and some phy data goes through

NR SA SSB CSI RS Test 1 Run 02

 

 

Log Analysis

 

Sample Log

This is just for showing the association between the configuration shown above and IE (Information Elements) in RRC.

You can confirm on ssb position with ssb-PositionInBurst IE in SIB1. Check out if this is properly set as you configured in the configuration file.

NR SA SSB CSI RS Test 1 Log 01

Now check out all the elements related to CSI reference signal and make it sure that they are not colliding with SSB burst in terms of slots and symbols.

First check out the IE zp-CSI-RS-ResourceToAddModList in RRC Setup. Make it sure that it does not collide with SSB burst by checking periodicityAndOffset IE.

NR SA SSB CSI RS Test 1 Log 02

Then check out the IE nzp-CSI-RS-ResourceToAddModList in RRC Setup. Make it sure that noe of the nzp CSI RS does collide with SSB burst by checking firstDMRSSymbolInTimeDomain and periodicityAndOffset IE.  

NR SA SSB CSI RS Test 1 Log 04

Now check out the IE csi-IM-ResourceToAddModList in RRC Setup. Make it sure that it does not collide with SSB burst by checking csi-IM-ResourceElementPattern and periodicityAndOffset IE.  

NR SA SSB CSI RS Test 1 Log 05t

Just to confirm the CSI report is not interruped by SSB burst configuration, check if all the CSI report is being received at the expected timing.

NR SA SSB CSI RS Test 1 Log 06

 

 

 

RRC / NAS Signaling

 

SIB1 (SA)

: This is the SIB1 message sent by gNB  to configure NR SA. (NOTE : You would see some IEs that has a specific assigned vale here, but consider it as just an example value. Those values should vary depending on test requirement)

{

  message c1: systemInformationBlockType1: {

    ...

    servingCellConfigCommon {

      ...

      ssb-PositionsInBurst {

        inOneGroup 'FF'H

      },

      ssb-PeriodicityServingCell ms20,

 

|

 

 

RrcSetup (SA)

: This is the RrcSetup message sent by gNB  to configure NR SA. (NOTE : You would see some IEs that has a specific assigned vale here, but consider it as just an example value. Those values should vary depending on test requirement)

{

  message c1: rrcSetup: {

    rrc-TransactionIdentifier 0,

    ...

        spCellConfig {

          spCellConfigDedicated {

              ...

            csi-MeasConfig setup: {

              nzp-CSI-RS-ResourceToAddModList {

                {

                  nzp-CSI-RS-ResourceId 0,

                  resourceMapping {

                    frequencyDomainAllocation other: '100000'B,

                    nrofPorts p2,

                    firstOFDMSymbolInTimeDomain 3,

                    cdm-Type fd-CDM2,

                    density one: NULL,

                    freqBand {

                      startingRB 0,

                      nrofRBs 52

                    }

                  },

                  powerControlOffset 0,

                  powerControlOffsetSS db0,

                  scramblingID 500,

                  periodicityAndOffset slots80: 4,

                  qcl-InfoPeriodicCSI-RS 0

                },

                {

                  nzp-CSI-RS-ResourceId 1,

                  resourceMapping {

                    frequencyDomainAllocation row1: '1'H,

                    nrofPorts p1,

                    firstOFDMSymbolInTimeDomain 6,

                    cdm-Type noCDM,

                    density three: NULL,

                    freqBand {

                      startingRB 0,

                      nrofRBs 52

                    }

                  },

                  powerControlOffset 0,

                  powerControlOffsetSS db0,

                  scramblingID 500,

                  periodicityAndOffset slots40: 4,

                  qcl-InfoPeriodicCSI-RS 0

                },

                {

                  nzp-CSI-RS-ResourceId 2,

                  resourceMapping {

                    frequencyDomainAllocation row1: '1'H,

                    nrofPorts p1,

                    firstOFDMSymbolInTimeDomain 10,

                    cdm-Type noCDM,

                    density three: NULL,

                    freqBand {

                      startingRB 0,

                      nrofRBs 52

                    }

                  },

                  powerControlOffset 0,

                  powerControlOffsetSS db0,

                  scramblingID 500,

                  periodicityAndOffset slots40: 4,

                  qcl-InfoPeriodicCSI-RS 0

                },

                {

                  nzp-CSI-RS-ResourceId 3,

                  resourceMapping {

                    frequencyDomainAllocation row1: '1'H,

                    nrofPorts p1,

                    firstOFDMSymbolInTimeDomain 6,

                    cdm-Type noCDM,

                    density three: NULL,

                    freqBand {

                      startingRB 0,

                      nrofRBs 52

                    }

                  },

                  powerControlOffset 0,

                  powerControlOffsetSS db0,

                  scramblingID 500,

                  periodicityAndOffset slots40: 5,

                  qcl-InfoPeriodicCSI-RS 0

                },

                {

                  nzp-CSI-RS-ResourceId 4,

                  resourceMapping {

                    frequencyDomainAllocation row1: '1'H,

                    nrofPorts p1,

                    firstOFDMSymbolInTimeDomain 10,

                    cdm-Type noCDM,

                    density three: NULL,

                    freqBand {

                      startingRB 0,

                      nrofRBs 52

                    }

                  },

                  powerControlOffset 0,

                  powerControlOffsetSS db0,

                  scramblingID 500,

                  periodicityAndOffset slots40: 5,

                  qcl-InfoPeriodicCSI-RS 0

                }

              },

              nzp-CSI-RS-ResourceSetToAddModList {

                {

                  nzp-CSI-ResourceSetId 0,

                  nzp-CSI-RS-Resources {

                    0

                  }

                },

                {

                  nzp-CSI-ResourceSetId 1,

                  nzp-CSI-RS-Resources {

                    1,

                    2,

                    3,

                    4

                  },

                  trs-Info true

                }

              },

              csi-IM-ResourceToAddModList {

                {

                  csi-IM-ResourceId 0,

                  csi-IM-ResourceElementPattern pattern1: {

                    subcarrierLocation-p1 s8,

                    symbolLocation-p1 12

                  },

                  freqBand {

                    startingRB 0,

                    nrofRBs 52

                  },

                  periodicityAndOffset slots80: 5

                }

              },

              csi-IM-ResourceSetToAddModList {

                {

                  csi-IM-ResourceSetId 0,

                  csi-IM-Resources {

                    0

                  }

                }

              },

              csi-ResourceConfigToAddModList {

                {

                  csi-ResourceConfigId 0,

                  csi-RS-ResourceSetList nzp-CSI-RS-SSB: {

                    nzp-CSI-RS-ResourceSetList {

                      0

                    }

                  },

                  bwp-Id 0,

                  resourceType periodic

                },

                {

                  csi-ResourceConfigId 1,

                  csi-RS-ResourceSetList csi-IM-ResourceSetList: {

                    0

                  },

                  bwp-Id 0,

                  resourceType periodic

                },

                {

                  csi-ResourceConfigId 2,

                  csi-RS-ResourceSetList nzp-CSI-RS-SSB: {

                    nzp-CSI-RS-ResourceSetList {

                      1

                    }

                  },

                  bwp-Id 0,

                  resourceType periodic

                }

              },

              csi-ReportConfigToAddModList {

                {

                  reportConfigId 0,

                  resourcesForChannelMeasurement 0,

                  csi-IM-ResourcesForInterference 1,

                  reportConfigType periodic: {

                    reportSlotConfig slots80: 9,

                    pucch-CSI-ResourceList {

                      {

                        uplinkBandwidthPartId 0,

                        pucch-Resource 13

                      }

                    }

                  },

                  reportQuantity cri-RI-PMI-CQI: NULL,

                  reportFreqConfiguration {

                    cqi-FormatIndicator widebandCQI,

                    pmi-FormatIndicator widebandPMI

                  },

                  timeRestrictionForChannelMeasurements notConfigured,

                  timeRestrictionForInterferenceMeasurements notConfigured,

                  codebookConfig {

                    codebookType type1: {

                      subType typeI-SinglePanel: {

                        nrOfAntennaPorts two: {

                          twoTX-CodebookSubsetRestriction '111111'B

                        },

                        typeI-SinglePanel-ri-Restriction '03'H

                      },

                      codebookMode 1

                    }

                  },

                  groupBasedBeamReporting disabled: {

                  },

                  cqi-Table table2,

                  subbandSize value1

                }

              }

            },

            tag-Id 0

          }