LTE Quick Reference                                 Go Back To Index    Home :





LTE-NB MIB/SIB and Scheduling  


It seems there is pretty big difference in terms of design concept between LTE and LTE-NB MIB/SIBs. To me, LTE-NB design concept seems closer to WCDMA MIB/SIB logic.


Overall operation of MIB/SIB for LTE-NB is described in 36.300 7.4 as summarized below.

  • MIB-NB and SystemInformationBlockType-NB uses fixed scheduling (Same as legacy LTE)
  • The periodicity of MIB-NB is 640 ms (The periodicity of MIB in legacy LTE is 40 ms)
  • The periodicity of SIB1-NB is 2560 ms (The periodicity of MIB in legacy LTE is 80 ms)
  • MIB-NB contains all the information required to aquire SIB1 (In legacy LTE, SIB1 decoding information is configured by DCI 1A, not by MIB)
  • SIB1-NB contains all the information to aquire other SIBs (In legacy LTE, SIB1 carries only periodicity information of other SIBs, all other information required to decode other SIBs are carried by DCI 1A, not by SIB1)
  • BCCH and other logical channel cannot be transmitted in the same subframe (Different from Legacy LTE)
  • UE is not required to detect SIB changes in RRC_CONNECTED state (Different from legacy LTE. So, if network wants the UE to aquire the changed SIB, it may trigger RRC Release to put UE into IDLE mode and detect the changed SIBs.)


Followings are the topics with the details.



MIB/SIB Decoding Procedure


When we think of MIB/SIB decoding, we usually think of following factors

  • i) In what order each of the SIB is decoded ?
  • ii) What kind of configuration information UE need to get to decode SIBs
  • iii) How a UE get those configuration information (by DCI ? or Higher layer signaling message ? )

The answer to all of these questions may be answered (hopefully) by a single illustration shown below. First, just take a look at this figure and see if you can make your own story to explain the process to others. (This kind of practice would be very helpful for you to learn anything new)



As you see, in terms of sequence of decoding SIB LTE-NB has no special differences from the legacy LTE or LTE-BL/CE(M1). It goes as MIB decoding --> SIB1 --> SIB2 and others.


In terms of SIB1 decoding, LTE-NB(M2) take a similar approach to LTE-M1 which is a little different from the legacy LTE. In LTE-NB, a parameter in MIB (as shown in (2)) determines the exact transmission timing and periodicity and PHY/MAC configuration. This is similar concept to LTE BL/CE(M1). It is a little bit different from legacy LTE in which SIB1 decoding information is predefined by 3GPP specification and DCI.


In terms of SIB2 and other SIB decoding, all the information that is required to decode these SIBs are informed to UE via SIB 1 parameters as shown in (3). DCI is not used here.


The most outstanding difference between LTE-NB(M2) and the legacy LTE SIB decoding is that DCI is not used in LTE-NB SIB decoding.  All the information (even PHY/MAC) that is required to decode SIBs are notified to UE over MIB or SIB1 as illustrated above.





In normal LTE, MIB carries very simple set of information. However, in LTE-NB MIB carries relatively large set of information. It carries following high level information.

  • i) System Timing : SFN(Partial data), HyperSFN(Partial data)
  • ii) Scheduling Information for SIB1-NB
  • iii) Access Barring
  • iv) Operation Mode Information for LTE-NB


Followings are from 36.331 Scheduling for NB-IoT MIB scheduling.

  • Uses a fixed schedule with a periodicity of 640 ms and repetitions made within 640 ms.
  • The first transmission of the MIB-NB is scheduled in subframe #0 of radio frames for which the SFN mod 64 = 0
  • Repetitions are scheduled in subframe #0 of all other radio frames.
  • The transmissions are arranged in 8 independently decodable blocks of 80 ms duration


MasterInformationBlock-NB ::=   SEQUENCE {

    systemFrameNumber-MSB-r13       BIT STRING (SIZE (4)),

    hyperSFN-LSB-r13                BIT STRING (SIZE (2)),

    schedulingInfoSIB1-r13          INTEGER (0..15),

    systemInfoValueTag-r13          INTEGER (0..31),

    ab-Enabled-r13                  BOOLEAN,

    operationModeInfo-r13           CHOICE {

        inband-SamePCI-r13              Inband-SamePCI-NB-r13,

        inband-DifferentPCI-r13         Inband-DifferentPCI-NB-r13,

        guardband-r13                   Guardband-NB-r13,

        standalone-r13                  Standalone-NB-r13


    spare                           BIT STRING (SIZE (11))



ChannelRasterOffset-NB-r13 ::= ENUMERATED {khz-7dot5, khz-2dot5, khz2dot5, khz7dot5}


Guardband-NB-r13 ::=            SEQUENCE {

    rasterOffset-r13                ChannelRasterOffset-NB-r13,

    spare                            BIT STRING (SIZE (3))



Inband-SamePCI-NB-r13 ::=       SEQUENCE {

    eutra-CRS-SequenceInfo-r13      INTEGER (0..31)



Inband-DifferentPCI-NB-r13 ::=  SEQUENCE {

    eutra-NumCRS-Ports-r13          ENUMERATED {same, four},

    rasterOffset-r13                ChannelRasterOffset-NB-r13,

    spare                           BIT STRING (SIZE (2))



Standalone-NB-r13 ::=           SEQUENCE {

    spare                           BIT STRING (SIZE (5))




ab-Enabled : It stands for "access barring Enabled". If this IE is enabled, UE shall wait for SystemInformationBlockType14-NB before initiating RRC connection establishment or resume


operationModeInfo : This IE indicates the operation mode of the LTE-NB. There are four different types of Operation Mode as listed below.

  • Inband-SamePCI : indicates an in-band deployment and that the NB-IoT and LTE cell share the same physical cell id and have the same number of NRS and CRS ports.
  • Inband-DifferentPCI : indicates an in-band deployment and that the NB-IoT and LTE cell have different physical cell id.
  • guardband : indicates a guard-band deployment.
  • standalone : indicates a standalone deployment


schedulingInfoSIB1 : This IE indicates the index of the following table. The IE value itself is indicates I_TBS for SIB1-NB transmission and for each I_TBS different number of repetition occurs as mapped in the second column (Number of NPDSCH repetitions).


< 36.213 Table Number of repetitions for NPDSCH carrying SystemInformationBlockType1-NB >


< 36.213 Table block size (TBS) table for NPDSCH carrying SystemInformationBlockType1-NB >



systemFrameNumber-MSB : We need 10 bits to represents SFN(0~1023). This IE represents 4 MSB of SFN and 6 remaining bits are derived implicitely from PBCH decoding process.


Example 1 >



  +-message ::= SEQUENCE

    +-systemFrameNumber-MSB-r13 ::= BIT STRING SIZE(4) [0000]

    +-hyperSFN-LSB-r13 ::= BIT STRING SIZE(2) [00]

    +-schedulingInfoSIB1-r13 ::= INTEGER (0..15) [0]

    +-systemInfoValueTag-r13 ::= INTEGER (0..31) [0]

    +-ab-Enabled-r13 ::= BOOLEAN [FALSE]

    +-operationModeInfo-r13 ::= CHOICE [inband-SamePCI-r13]

    | +-inband-SamePCI-r13 ::= SEQUENCE

    |   +-eutra-CRS-SequenceInfo-r13 ::= INTEGER (0..31) [16]

    +-spare ::= BIT STRING SIZE(11) [00000000000]





Like in normal (Legacy) LTE, SIB1-NB also carries the information as follows :

  • i) Cell Access Related Information - PLMN Identity List, PLMN Identity, TA Code, Cell identity & Cell Status
  • ii) Cell Selection Information - Minimum Receiver Level
  • iii) Scheduling Information (Scheduling Information for other SIBs) - SI message type & Periodicity, SIB mapping Info, SI Window length

In terms of transmission schedule, SIB1-NB is transmitted as follows (based on 36.331 Scheduling for NB-IoT MIB scheduling)

  • Transmitted at a fixed schedule with a periodicity of 2560 ms (256 Radio Frames)
  • Transmitted in subframe #4 of every other frame in 16 continuous frames
  • The starting frame for the first transmission of the SIB1-NB is derived from the cell PCID and the number of repetitions within the 2560 ms period and repetitions are made, equally spaced, within the 2560 ms period
  • TBS for SystemInformationBlockType1-NB and the repetitions made within the 2560 ms are indicated by schedulingInfoSIB1 field in the MIB-NB


As mentioned above, SIB1 periodicity is predefined to be same in all eNB, but the offset (Starting subframe = the subframe where the first SIB1 is transmitted) gets different depending on schedulingInfoSIB1 in MIB based on following tables.




Following is ASN structure of SIB1 defined in 3GPP 36.331.


SystemInformationBlockType1-NB ::=  SEQUENCE {

    hyperSFN-MSB-r13                    BIT STRING (SIZE (8)),

    cellAccessRelatedInfo-r13           SEQUENCE {

        plmn-IdentityList-r13               PLMN-IdentityList-NB-r13,

        trackingAreaCode-r13                TrackingAreaCode,

        cellIdentity-r13                    CellIdentity,

        cellBarred-r13                      ENUMERATED {barred, notBarred},

        intraFreqReselection-r13            ENUMERATED {allowed, notAllowed}


    cellSelectionInfo-r13               SEQUENCE {

        q-RxLevMin-r13                      Q-RxLevMin,

        q-QualMin-r13                       Q-QualMin-r9


    p-Max-r13                           P-Max                   OPTIONAL,   -- Need OP

    freqBandIndicator-r13               FreqBandIndicator-NB-r13,

    freqBandInfo-r13                    NS-PmaxList-NB-r13              OPTIONAL,   -- Need OR

    multiBandInfoList-r13               MultiBandInfoList-NB-r13        OPTIONAL,   -- Need OR

    downlinkBitmap-r13                  DL-Bitmap-NB-r13                OPTIONAL,   -- Need OP, 

    eutraControlRegionSize-r13          ENUMERATED {n1, n2, n3}         OPTIONAL,   -- Cond inband

    nrs-CRS-PowerOffset-r13             ENUMERATED {dB-6,      dB-4dot77, dB-3,

                                                    dB-1dot77, dB0,       dB1,

                                                    dB1dot23,  dB2,       dB3,

                                                    dB4,       dB4dot23,  dB5,

                                                    dB6,       dB7,       dB8,

                                                    dB9}        OPTIONAL,   -- Cond inband-SamePCI

    schedulingInfoList-r13              SchedulingInfoList-NB-r13,

    si-WindowLength-r13                 ENUMERATED {ms160,  ms320,  ms480,  ms640,

                                                    ms960,  ms1280, ms1600, spare1},

    si-RadioFrameOffset-r13             INTEGER (1..15)     OPTIONAL,   -- Need OP

    systemInfoValueTagList-r13          SystemInfoValueTagList-NB-r13   OPTIONAL,   -- Need OR

    lateNonCriticalExtension            OCTET STRING                    OPTIONAL,

    nonCriticalExtension                SEQUENCE {}                     OPTIONAL



PLMN-IdentityList-NB-r13 ::=        SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-NB-r13


PLMN-IdentityInfo-NB-r13 ::=        SEQUENCE {

    plmn-Identity-r13                       PLMN-Identity,

    cellReservedForOperatorUse-r13          ENUMERATED {reserved, notReserved},

    attachWithoutPDN-Connectivity-r13       ENUMERATED {true}   OPTIONAL    -- Need OP



SchedulingInfoList-NB-r13 ::= SEQUENCE (SIZE (1..maxSI-Message-NB-r13)) OF SchedulingInfo-NB-r13


SchedulingInfo-NB-r13::=        SEQUENCE {

    si-Periodicity-r13              ENUMERATED {rf64, rf128, rf256, rf512,

                                                rf1024, rf2048, rf4096, spare},

    si-RepetitionPattern-r13        ENUMERATED {every2ndRF, every4thRF,  

                                                every8thRF,  every16thRF},

    sib-MappingInfo-r13             SIB-MappingInfo-NB-r13,

    si-TB-r13                       ENUMERATED {b56, b120, b208, b256, b328, b440, b552, b680}



SystemInfoValueTagList-NB-r13 ::=   SEQUENCE (SIZE (1.. maxSI-Message-NB-r13)) OF



SIB-MappingInfo-NB-r13 ::=          SEQUENCE (SIZE (0..maxSIB-1)) OF SIB-Type-NB-r13


SIB-Type-NB-r13 ::=                 ENUMERATED {

                                      sibType3-NB-r13, sibType4-NB-r13, sibType5-NB-r13,

                                      sibType14-NB-r13, sibType16-NB-r13, spare3, spare2, spare1}



downlinkBitmap : This indicate which subframe can be used for downlink transmission. If this IE is missing, it is assumed that any subframe except NPSS/NSSS/NPBCH/SIB1-NB subframe can be used for downlink transmission.


eutraControlRegionSize : This applies only to in-band Operation mode. It indicates how many OFDM symbols are used for control region.


si-RadioFrameOffset : This indicates the Offset to calculate the start of the SI window in the unit of radio frames. If the field is absent, no offset is applied.


si-Periodicity : This sepcifies periodicity of SI message (SIB message other than SIB1) in the unit of radio frames.


si-WindowLength : This specifies the SI window size for all SI messages (SIB message other than SIB1) in the unit of ms.  


si-RepetitionPattern : This Indicates the starting radio frames within the SI window used for SI message transmission.


si-TB : This specifies the transport block size for all SI messages (SIB message other than SIB1) in the unit of bits.



Example 1 >


+-systemInformationBlockType1-r13 ::= SEQUENCE [1001111000]

  +-hyperSFN-MSB-r13 ::= BIT STRING SIZE(8) [00000000]

  +-cellAccessRelatedInfo-r13 ::= SEQUENCE

  | +-plmn-IdentityList-r13 ::= SEQUENCE OF SIZE(1..maxPLMN-r11[6]) [1]

  | | +-PLMN-IdentityInfo-NB-r13 ::= SEQUENCE [1]

  | |   +-plmn-Identity-r13 ::= SEQUENCE [1]

  | |   | +-mcc ::= SEQUENCE OF SIZE(3) OPTIONAL:Exist

  | |   | | +-MCC-MNC-Digit ::= INTEGER (0..9) [0]

  | |   | | +-MCC-MNC-Digit ::= INTEGER (0..9) [0]

  | |   | | +-MCC-MNC-Digit ::= INTEGER (0..9) [1]

  | |   | +-mnc ::= SEQUENCE OF SIZE(2..3) [2]

  | |   |   +-MCC-MNC-Digit ::= INTEGER (0..9) [0]

  | |   |   +-MCC-MNC-Digit ::= INTEGER (0..9) [1]

  | |   +-cellReservedForOperatorUse-r13 ::= ENUMERATED [reserved]

  | |   +-attachWithoutPDN-Connectivity-r13 ::= ENUMERATED [true] OPTIONAL:Exist

  | +-trackingAreaCode-r13 ::= BIT STRING SIZE(16) [0000000000000001]

  | +-cellIdentity-r13 ::= BIT STRING SIZE(28) [0000000000000000000000000001]

  | +-cellBarred-r13 ::= ENUMERATED [notBarred]

  | +-intraFreqReselection-r13 ::= ENUMERATED [allowed]

  +-cellSelectionInfo-r13 ::= SEQUENCE

  | +-q-RxLevMin-r13 ::= INTEGER (-70..-22) [-70]

  | +-q-QualMin-r13 ::= INTEGER (-34..-3) [-34]

  +-p-Max-r13 ::= INTEGER (-30..33) [-30] OPTIONAL:Exist

  +-freqBandIndicator-r13 ::= INTEGER (1..maxFBI2[256]) [1]

  +-freqBandInfo-r13 ::= SEQUENCE OF OPTIONAL:Omit

  +-multiBandInfoList-r13 ::= SEQUENCE OF OPTIONAL:Omit

  +-downlinkBitmap-r13 ::= CHOICE [subframePattern10-r13] OPTIONAL:Exist

  | +-subframePattern10-r13 ::= BIT STRING SIZE(10) [1111111111]

  +-eutraControlRegionSize-r13 ::= ENUMERATED [n3] OPTIONAL:Exist

  +-nrs-CRS-PowerOffset-r13 ::= ENUMERATED [dB-6] OPTIONAL:Exist

  +-schedulingInfoList-r13 ::= SEQUENCE OF SIZE(1..maxSI-Message-NB-r13[8]) [2]

  | +-SchedulingInfo-NB-r13 ::= SEQUENCE

  | | +-si-Periodicity-r13 ::= ENUMERATED [rf64]

  | | +-si-RepetitionPattern-r13 ::= ENUMERATED [every2ndRF]

  | | +-sib-MappingInfo-r13 ::= SEQUENCE OF SIZE(0..maxSIB-1[31]) [0]

  | | +-si-TB-r13 ::= ENUMERATED [b680]

  | +-SchedulingInfo-NB-r13 ::= SEQUENCE

  |   +-si-Periodicity-r13 ::= ENUMERATED [rf64]

  |   +-si-RepetitionPattern-r13 ::= ENUMERATED [every2ndRF]

  |   +-sib-MappingInfo-r13 ::= SEQUENCE OF SIZE(0..maxSIB-1[31]) [1]

  |   | +-SIB-Type-NB-r13 ::= ENUMERATED [sibType3-NB-r13]

  |   +-si-TB-r13 ::= ENUMERATED [b56]

  +-si-WindowLength-r13 ::= ENUMERATED [ms160]

  +-si-RadioFrameOffset-r13 ::= INTEGER (1..15) [1] OPTIONAL:Exist

  +-systemInfoValueTagList-r13 ::= SEQUENCE OF OPTIONAL:Omit

  +-lateNonCriticalExtension ::= OCTET STRING OPTIONAL:Omit

  +-nonCriticalExtension ::= SEQUENCE OPTIONAL:Omit






SystemInformationBlockType2-NB-r13 ::=  SEQUENCE {

    radioResourceConfigCommon-r13           RadioResourceConfigCommonSIB-NB-r13,

    ue-TimersAndConstants-r13               UE-TimersAndConstants-NB-r13,

    freqInfo-r13                            SEQUENCE {

        ul-CarrierFreq-r13                      CarrierFreq-NB-r13              

        additionalSpectrumEmission-r13          AdditionalSpectrumEmission


    timeAlignmentTimerCommon-r13            TimeAlignmentTimer,

    multiBandInfoList-r13   SEQUENCE (SIZE (1..maxMultiBands)) OF AdditionalSpectrumEmission 

    lateNonCriticalExtension                    OCTET STRING                   





RadioResourceConfigCommonSIB-NB-r13 ::= SEQUENCE {

    rach-ConfigCommon-r13                   RACH-ConfigCommon-NB-r13,

    bcch-Config-r13                         BCCH-Config-NB-r13,

    pcch-Config-r13                         PCCH-Config-NB-r13,

    nprach-Config-r13                       NPRACH-ConfigSIB-NB-r13,

    npdsch-ConfigCommon-r13                 NPDSCH-ConfigCommon-NB-r13,

    npusch-ConfigCommon-r13                 NPUSCH-ConfigCommon-NB-r13,

    dl-Gap-r13                              DL-GapConfig-NB-r13         

    uplinkPowerControlCommon-r13            UplinkPowerControlCommon-NB-r13,




RACH-ConfigCommon-NB-r13 ::=        SEQUENCE {

    preambleTransMax-CE-r13             PreambleTransMax,

    powerRampingParameters-r13          PowerRampingParameters,

    rach-InfoList-r13                   RACH-InfoList-NB-r13,

    connEstFailOffset-r13               INTEGER (0..15)                 OPTIONAL,   -- Need OP




RACH-InfoList-NB-r13 ::=    SEQUENCE (SIZE (1.. maxNPRACH-Resources-NB-r13)) OF RACH-Info-NB-r13


RACH-Info-NB-r13    ::=     SEQUENCE {

    ra-ResponseWindowSize-r13           ENUMERATED {

                                            pp2, pp3, pp4, pp5, pp6, pp7, pp8, pp10},

    mac-ContentionResolutionTimer-r13   ENUMERATED {

                                            pp1, pp2, pp3, pp4, pp8, pp16, pp32, pp64}




NPRACH-ConfigSIB-NB-r13 ::=         SEQUENCE {

    nprach-CP-Length-r13                ENUMERATED {us66dot7, us266dot7},

    rsrp-ThresholdsPrachInfoList-r13    RSRP-ThresholdsNPRACH-InfoList-NB-r13   

    nprach-ParametersList-r13           NPRACH-ParametersList-NB-r13   



NPRACH-ParametersList-NB-r13 ::=    SEQUENCE (SIZE (1.. maxNPRACH-Resources-NB-r13))

                                        OF NPRACH-Parameters-NB-r13


NPRACH-Parameters-NB-r13::=         SEQUENCE {

    nprach-Periodicity-r13                  ENUMERATED {ms40, ms80, ms160, ms240,

                                                        ms320, ms640, ms1280, ms2560},

    nprach-StartTime-r13                    ENUMERATED {ms8, ms16, ms32, ms64,

                                                        ms128, ms256, ms512, ms1024},

    nprach-SubcarrierOffset-r13             ENUMERATED {n0, n12, n24, n36, n2, n18, n34, spare1},

    nprach-NumSubcarriers-r13               ENUMERATED {n12, n24, n36, n48},

    nprach-SubcarrierMSG3-RangeStart-r13    ENUMERATED {zero, oneThird, twoThird, one},

    maxNumPreambleAttemptCE-r13             ENUMERATED {n3, n4, n5, n6, n7, n8, n10, spare1},

    numRepetitionsPerPreambleAttempt-r13    ENUMERATED {n1, n2, n4, n8, n16, n32, n64, n128},

    npdcch-NumRepetitions-RA-r13            ENUMERATED {r1, r2, r4, r8, r16, r32, r64, r128,

                                                        r256, r512, r1024, r2048,

                                                        spare4, spare3, spare2, spare1},

    npdcch-StartSF-CSS-RA-r13               ENUMERATED {v1dot5, v2, v4, v8, v16, v32, v48, v64},

    npdcch-Offset-RA-r13                    ENUMERATED {zero, oneEighth, oneFourth, threeEighth}



RSRP-ThresholdsNPRACH-InfoList-NB-r13 ::= SEQUENCE (SIZE(1..2)) OF RSRP-Range




Reference :


[1] 3GPP TS 36.331


[3] LTE evolution for IoT connectivity