NR measurement report configuration

The measurement report configuration of NR is quite similar to LTE. The measurement report configuration is composed of
1. measObejct: which defines the which frequency to measure
2. reportConfig: which defines the triggering criterion, like A2/A3/A5/B1…

The major difference is beam related measurements and which can be found from reportQuantityRS-Indexes IE.

In addition to beam related measurements, from the measurement report example we can see that the serving cell-ID and serving cell PCI are reported as well.

3GPP TS38.331

MeasObjectNR information element

  – ASN1START
  – TAG-MEASOBJECTNR-START

  MeasObjectNR ::= SEQUENCE {
      ssbFrequency ARFCN-ValueNR OPTIONAL, – Cond SSBorAssociatedSSB
      ssbSubcarrierSpacing SubcarrierSpacing OPTIONAL, – Cond SSBorAssociatedSSB
      smtc1 SSB-MTC OPTIONAL, – Cond SSBorAssociatedSSB
      smtc2 SSB-MTC2 OPTIONAL, – Cond IntraFreqConnected
      refFreqCSI-RS ARFCN-ValueNR OPTIONAL, – Cond CSI-RS
      referenceSignalConfig ReferenceSignalConfig,
      absThreshSS-BlocksConsolidation ThresholdNR OPTIONAL, – Need R
      absThreshCSI-RS-Consolidation ThresholdNR OPTIONAL, – Need R
      nrofSS-BlocksToAverage INTEGER (2..maxNrofSS-BlocksToAverage) OPTIONAL, – Need R
      nrofCSI-RS-ResourcesToAverage INTEGER (2..maxNrofCSI-RS-ResourcesToAverage) OPTIONAL, – Need R
      quantityConfigIndex INTEGER (1..maxNrofQuantityConfig),
      offsetMO Q-OffsetRangeList,
      cellsToRemoveList PCI-List OPTIONAL, – Need N
      cellsToAddModList CellsToAddModList OPTIONAL, – Need N
      blackCellsToRemoveList PCI-RangeIndexList OPTIONAL, – Need N
      blackCellsToAddModList SEQUENCE (SIZE (1..maxNrofPCI-Ranges)) OF PCI-RangeElement OPTIONAL, – Need N
      whiteCellsToRemoveList PCI-RangeIndexList OPTIONAL, – Need N
      whiteCellsToAddModList SEQUENCE (SIZE (1..maxNrofPCI-Ranges)) OF PCI-RangeElement OPTIONAL, – Need N
      … ,
      [[
      freqBandIndicatorNR-v1530 FreqBandIndicatorNR OPTIONAL, – Need R
      measCycleSCell-v1530 ENUMERATED {sf160, sf256, sf320, sf512, sf640, sf1024, sf1280} OPTIONAL – Need R
      ]]
  }

  ReferenceSignalConfig::= SEQUENCE {
      ssb-ConfigMobility SSB-ConfigMobility OPTIONAL, – Need M
      csi-rs-ResourceConfigMobility SetupRelease { CSI-RS-ResourceConfigMobility } OPTIONAL – Need M
  }

  SSB-ConfigMobility::= SEQUENCE {

      ssb-ToMeasure SetupRelease { SSB-ToMeasure } OPTIONAL, – Need M
      deriveSSB-IndexFromCell BOOLEAN,
      ss-RSSI-Measurement SS-RSSI-Measurement OPTIONAL, – Need M
      …
  }


  Q-OffsetRangeList ::= SEQUENCE {
      rsrpOffsetSSB Q-OffsetRange DEFAULT dB0,
      rsrqOffsetSSB Q-OffsetRange DEFAULT dB0,
      sinrOffsetSSB Q-OffsetRange DEFAULT dB0,
      rsrpOffsetCSI-RS Q-OffsetRange DEFAULT dB0,
      rsrqOffsetCSI-RS Q-OffsetRange DEFAULT dB0,
      sinrOffsetCSI-RS Q-OffsetRange DEFAULT dB0
  }


  ThresholdNR ::= SEQUENCE{
      thresholdRSRP RSRP-Range OPTIONAL, – Need R
      thresholdRSRQ RSRQ-Range OPTIONAL, – Need R
      thresholdSINR SINR-Range OPTIONAL – Need R
  }

  CellsToAddModList ::= SEQUENCE (SIZE (1..maxNrofCellMeas)) OF CellsToAddMod

  CellsToAddMod ::= SEQUENCE {
      physCellId PhysCellId,
      cellIndividualOffset Q-OffsetRangeList
  }




  – TAG-MEASOBJECTNR-STOP
  – ASN1STOP


ReportConfigNR information element

  – ASN1START
  – TAG-REPORTCONFIGNR-START

  ReportConfigNR ::= SEQUENCE {
      reportType CHOICE {
          periodical PeriodicalReportConfig,
          eventTriggered EventTriggerConfig,
          …,
          reportCGI ReportCGI
      }
  }

  ReportCGI ::= SEQUENCE {
      cellForWhichToReportCGI PhysCellId,
          …
  }

  EventTriggerConfig::= SEQUENCE {
      eventId CHOICE {
          eventA1 SEQUENCE {
              a1-Threshold MeasTriggerQuantity,
              reportOnLeave BOOLEAN,
              hysteresis Hysteresis,
              timeToTrigger TimeToTrigger
          },
          eventA2 SEQUENCE {
              a2-Threshold MeasTriggerQuantity,
              reportOnLeave BOOLEAN,
              hysteresis Hysteresis,
              timeToTrigger TimeToTrigger
          },
          eventA3 SEQUENCE {
              a3-Offset MeasTriggerQuantityOffset,
              reportOnLeave BOOLEAN,
              hysteresis Hysteresis,
              timeToTrigger TimeToTrigger,
              useWhiteCellList BOOLEAN
          },
          eventA4 SEQUENCE {
              a4-Threshold MeasTriggerQuantity,
              reportOnLeave BOOLEAN,
              hysteresis Hysteresis,
              timeToTrigger TimeToTrigger,
              useWhiteCellList BOOLEAN
          },
          eventA5 SEQUENCE {
              a5-Threshold1 MeasTriggerQuantity,
              a5-Threshold2 MeasTriggerQuantity,
              reportOnLeave BOOLEAN,
              hysteresis Hysteresis,
              timeToTrigger TimeToTrigger,
              useWhiteCellList BOOLEAN
          },
          eventA6 SEQUENCE {
              a6-Offset MeasTriggerQuantityOffset,
              reportOnLeave BOOLEAN,
              hysteresis Hysteresis,
              timeToTrigger TimeToTrigger,
              useWhiteCellList BOOLEAN
          },
          …
      },

      rsType NR-RS-Type,

      reportInterval ReportInterval,
      reportAmount ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity},

      reportQuantityCell MeasReportQuantity,
      maxReportCells INTEGER (1..maxCellReport),

      reportQuantityRS-Indexes MeasReportQuantity OPTIONAL, – Need R
      maxNrofRS-IndexesToReport INTEGER (1..maxNrofIndexesToReport) OPTIONAL, – Need R
      includeBeamMeasurements BOOLEAN,
      reportAddNeighMeas ENUMERATED {setup} OPTIONAL, – Need R
      …
  }

  PeriodicalReportConfig ::= SEQUENCE {
      rsType NR-RS-Type,

      reportInterval ReportInterval,
      reportAmount ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity},

      reportQuantityCell MeasReportQuantity,
      maxReportCells INTEGER (1..maxCellReport),

      reportQuantityRS-Indexes MeasReportQuantity OPTIONAL, – Need R
      maxNrofRS-IndexesToReport INTEGER (1..maxNrofIndexesToReport) OPTIONAL, – Need R
      includeBeamMeasurements BOOLEAN,
      useWhiteCellList BOOLEAN,
      …
  }

  NR-RS-Type ::= ENUMERATED {ssb, csi-rs}

  MeasTriggerQuantity ::= CHOICE {
      rsrp RSRP-Range,
      rsrq RSRQ-Range,
      sinr SINR-Range
  }

  MeasTriggerQuantityOffset ::= CHOICE {
      rsrp INTEGER (-30..30),
      rsrq INTEGER (-30..30),
      sinr INTEGER (-30..30)
  }


  MeasReportQuantity ::= SEQUENCE {
      rsrp BOOLEAN,
      rsrq BOOLEAN,
      sinr BOOLEAN
  }


  – TAG-REPORTCONFIGNR-STOP
  – ASN1STOP

MeasResults information element

  – ASN1START
  – TAG-MEASRESULTS-START

  MeasResults ::= SEQUENCE {
      measId MeasId,
      measResultServingMOList MeasResultServMOList,
      measResultNeighCells CHOICE {
          measResultListNR MeasResultListNR,
          …,
          measResultListEUTRA MeasResultListEUTRA
      } OPTIONAL,
      …
  }

  MeasResultServMOList ::= SEQUENCE (SIZE (1..maxNrofServingCells)) OF MeasResultServMO

  MeasResultServMO ::= SEQUENCE {
      servCellId ServCellIndex,
      measResultServingCell MeasResultNR,
      measResultBestNeighCell MeasResultNR OPTIONAL,
      …
  }

  MeasResultListNR ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultNR

  MeasResultNR ::= SEQUENCE {
      physCellId PhysCellId OPTIONAL,
      measResult SEQUENCE {
          cellResults SEQUENCE{
              resultsSSB-Cell MeasQuantityResults OPTIONAL,
              resultsCSI-RS-Cell MeasQuantityResults OPTIONAL
          },
          rsIndexResults SEQUENCE{
              resultsSSB-Indexes ResultsPerSSB-IndexList OPTIONAL,
              resultsCSI-RS-Indexes ResultsPerCSI-RS-IndexList OPTIONAL
          } OPTIONAL
      },
      …,
      [[
      cgi-Info CGI-Info OPTIONAL
      ]]
  }

  MeasResultListEUTRA ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultEUTRA

  MeasResultEUTRA ::= SEQUENCE {
      eutra-PhysCellId PhysCellId,
      measResult MeasQuantityResultsEUTRA,

      cgi-Info SEQUENCE {
          cgi-info-EPC SEQUENCE {
              cgi-info-EPC-legacy CellAccessRelatedInfo-EUTRA-EPC,
              cgi-info-EPC-list SEQUENCE (SIZE (1..maxPLMN)) OF CellAccessRelatedInfo-EUTRA-EPC OPTIONAL
          } OPTIONAL,

          cgi-info-5GC SEQUENCE (SIZE (1..maxPLMN)) OF CellAccessRelatedInfo-EUTRA-5GC OPTIONAL,
          freqBandIndicator FreqBandIndicatorEUTRA,
          multiBandInfoList MultiBandInfoListEUTRA OPTIONAL,
          freqBandIndicatorPriority ENUMERATED {true} OPTIONAL
      } OPTIONAL,
      …
  }

  MultiBandInfoListEUTRA ::= SEQUENCE (SIZE (1..maxMultiBands)) OF FreqBandIndicatorEUTRA

  MeasQuantityResults ::= SEQUENCE {
      rsrp RSRP-Range OPTIONAL,
      rsrq RSRQ-Range OPTIONAL,
      sinr SINR-Range OPTIONAL
  }


  MeasQuantityResultsEUTRA ::= SEQUENCE {
      rsrp RSRP-RangeEUTRA OPTIONAL,
      rsrq RSRQ-RangeEUTRA OPTIONAL,
      sinr SINR-RangeEUTRA OPTIONAL
  }


  ResultsPerSSB-IndexList::= SEQUENCE (SIZE (1..maxNrofIndexesToReport2)) OF ResultsPerSSB-Index

  ResultsPerSSB-Index ::= SEQUENCE {
      ssb-Index SSB-Index,
      ssb-Results MeasQuantityResults OPTIONAL
  }

  ResultsPerCSI-RS-IndexList::= SEQUENCE (SIZE (1..maxNrofIndexesToReport2)) OF ResultsPerCSI-RS-Index

  ResultsPerCSI-RS-Index ::= SEQUENCE {
      csi-RS-Index CSI-RS-Index,
      csi-RS-Results MeasQuantityResults OPTIONAL
  }

  – TAG-MEASRESULTS-STOP
  – ASN1STOP

Examples

measConfig

  - . . . . . . . . . . . . . . . . . . . . . .measConfig
  - . . . . . . . . . . . . . . . . . . . . . . .measObjectToAddModList [ 0 ]
  - . . . . . . . . . . . . . . . . . . . . . . . .measObjectId: 1
  - . . . . . . . . . . . . . . . . . . . . . . . .measObject:- measObjectNR
  - . . . . . . . . . . . . . . . . . . . . . . . . . .ssbFrequency: ******
  - . . . . . . . . . . . . . . . . . . . . . . . . . .ssbSubcarrierSpacing: 1 ( kHz30)
  - . . . . . . . . . . . . . . . . . . . . . . . . . .smtc1
  - . . . . . . . . . . . . . . . . . . . . . . . . . . .periodicityAndOffset:- sf20: 0
  - . . . . . . . . . . . . . . . . . . . . . . . . . . .duration: 4 ( sf5)
  - . . . . . . . . . . . . . . . . . . . . . . . . . .referenceSignalConfig
  - . . . . . . . . . . . . . . . . . . . . . . . . . . .ssb-ConfigMobility
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .deriveSSB-IndexFromCell: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . .absThreshSS-BlocksConsolidation
  - . . . . . . . . . . . . . . . . . . . . . . . . . . .thresholdRSRP: 36 (-121.00 dBm)
  - . . . . . . . . . . . . . . . . . . . . . . . . . .nrofSS-BlocksToAverage: 16
  - . . . . . . . . . . . . . . . . . . . . . . . . . .quantityConfigIndex: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . .offsetMO
  - . . . . . . . . . . . . . . . . . . . . . . . . . .freqBandIndicatorNR-v1530: 78
  - . . . . . . . . . . . . . . . . . . . . . . .reportConfigToAddModList [ 0 ]
  - . . . . . . . . . . . . . . . . . . . . . . . .reportConfigId: 1
  - . . . . . . . . . . . . . . . . . . . . . . . .reportConfig:- reportConfigNR
  - . . . . . . . . . . . . . . . . . . . . . . . . . .reportType:- eventTriggered
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .eventId:- eventA3
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .a3-Offset:- rsrp: 6
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .reportOnLeave: 0
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .hysteresis: 0
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .timeToTrigger: 8 ( ms320)
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .useWhiteCellList: 0
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .rsType: 0 ( ssb)
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .reportInterval: 0 ( ms120)
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .reportAmount: 2 ( r4)
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .reportQuantityCell
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . .rsrp: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . .rsrq: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . .sinr: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .maxReportCells: 8
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .reportQuantityRS-Indexes
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . .rsrp: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . .rsrq: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . . .sinr: 1
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .maxNrofRS-IndexesToReport: 8
  - . . . . . . . . . . . . . . . . . . . . . . . . . . . .includeBeamMeasurements: 1
  - . . . . . . . . . . . . . . . . . . . . . . .measIdToAddModList [ 0 ]
  - . . . . . . . . . . . . . . . . . . . . . . . .measId: 1
  - . . . . . . . . . . . . . . . . . . . . . . . .measObjectId: 1
  - . . . . . . . . . . . . . . . . . . . . . . . .reportConfigId: 1
  - . . . . . . . . . . . . . . . . . . . . . . .s-MeasureConfig:- ssb-RSRP: 91 (-66.00 dBm)
  - . . . . . . . . . . . . . . . . . . . . . . .quantityConfig
  - . . . . . . . . . . . . . . . . . . . . . . . .quantityConfigNR-List [ 0 ]
  - . . . . . . . . . . . . . . . . . . . . . . . . .quantityConfigCell
  - . . . . . . . . . . . . . . . . . . . . . . . . . .ssb-FilterConfig
  - . . . . . . . . . . . . . . . . . . . . . . . . . .csi-RS-FilterConfig
  - . . . . . . . . . . . . . . . . . . . . . . . . .quantityConfigRS-Index
  - . . . . . . . . . . . . . . . . . . . . . . . . . .ssb-FilterConfig
  - . . . . . . . . . . . . . . . . . . . . . . . . . .csi-RS-FilterConfig

NR Measurement Report

  NR_Uu_RRC: UL_DCCH_Message
  - . .message:- c1:- measurementReport
  - . . . . .criticalExtensions:- measurementReport
  - . . . . . . .measResults
  - . . . . . . . .measId: 1
  - . . . . . . . .measResultServingMOList [ 0 ]
  - . . . . . . . . .servCellId: 8
  - . . . . . . . . .measResultServingCell
  - . . . . . . . . . .physCellId: 393 (393)
  - . . . . . . . . . .measResult
  - . . . . . . . . . . .cellResults
  - . . . . . . . . . . . .resultsSSB-Cell
  - . . . . . . . . . . . . .rsrp: 84 (-73.00 dBm)
  - . . . . . . . . . . . . .rsrq: 61 (-12.50 dB)
  - . . . . . . . . . . . . .sinr: 61 (7.00 dB)
  - . . . . . . . . . . .rsIndexResults
  - . . . . . . . . . . . .resultsSSB-Indexes [ 0 ]
  - . . . . . . . . . . . . .ssb-Index: 5
  - . . . . . . . . . . . . .ssb-Results
  - . . . . . . . . . . . . . .rsrp: 89 (-68.00 dBm)
  - . . . . . . . . . . . . . .rsrq: 66 (-10.00 dB)
  - . . . . . . . . . . . . . .sinr: 71 (12.00 dB)
  - . . . . . . . . . . . .resultsSSB-Indexes [ 1 ]
  - . . . . . . . . . . . . .ssb-Index: 4
  - . . . . . . . . . . . . .ssb-Results
  - . . . . . . . . . . . . . .rsrp: 77 (-80.00 dBm)
  - . . . . . . . . . . . . . .rsrq: 60 (-13.00 dB)
  - . . . . . . . . . . . . . .sinr: 46 (-0.50 dB)
  - . . . . . . . . . . . .resultsSSB-Indexes [ 2 ]
  - . . . . . . . . . . . . .ssb-Index: 1
  - . . . . . . . . . . . . .ssb-Results
  - . . . . . . . . . . . . . .rsrp: 71 (-86.00 dBm)
  - . . . . . . . . . . . . . .rsrq: 52 (-17.00 dB)
  - . . . . . . . . . . . . . .sinr: 34 (-6.50 dB)
  - . . . . . . . .measResultNeighCells:- measResultListNR
  - . . . . . . . . .measResultListNR [ 0 ]
  - . . . . . . . . . .physCellId: 395 (395)
  - . . . . . . . . . .measResult
  - . . . . . . . . . . .cellResults
  - . . . . . . . . . . . .resultsSSB-Cell
  - . . . . . . . . . . . . .rsrp: 92 (-65.00 dBm)
  - . . . . . . . . . . . . .rsrq: 65 (-10.50 dB)
  - . . . . . . . . . . . . .sinr: 72 (12.50 dB)
  - . . . . . . . . . . .rsIndexResults
  - . . . . . . . . . . . .resultsSSB-Indexes [ 0 ]
  - . . . . . . . . . . . . .ssb-Index: 0
  - . . . . . . . . . . . . .ssb-Results
  - . . . . . . . . . . . . . .rsrp: 98 (-59.00 dBm)
  - . . . . . . . . . . . . . .rsrq: 67 (-9.50 dB)
  - . . . . . . . . . . . . . .sinr: 92 (22.50 dB)
  - . . . . . . . . . . . .resultsSSB-Indexes [ 1 ]
  - . . . . . . . . . . . . .ssb-Index: 1
  - . . . . . . . . . . . . .ssb-Results
  - . . . . . . . . . . . . . .rsrp: 83 (-74.00 dBm)
  - . . . . . . . . . . . . . .rsrq: 66 (-10.00 dB)
  - . . . . . . . . . . . . . .sinr: 64 (8.50 dB)
  - . . . . . . . . . . . .resultsSSB-Indexes [ 2 ]
  - . . . . . . . . . . . . .ssb-Index: 4
  - . . . . . . . . . . . . .ssb-Results
  - . . . . . . . . . . . . . .rsrp: 76 (-81.00 dBm)
  - . . . . . . . . . . . . . .rsrq: 65 (-10.50 dB)
  - . . . . . . . . . . . . . .sinr: 60 (6.50 dB)
  - . . . . . . . . . . . .resultsSSB-Indexes [ 3 ]
  - . . . . . . . . . . . . .ssb-Index: 3
  - . . . . . . . . . . . . .ssb-Results
  - . . . . . . . . . . . . . .rsrp: 75 (-82.00 dBm)
  - . . . . . . . . . . . . . .rsrq: 62 (-12.00 dB)
  - . . . . . . . . . . . . . .sinr: 50 (1.50 dB)