Quick Reference - SlotFormat Determination from RRC

 

 

 

 

This page is to give you a general idea of how you can figure out (determin) from RRC message (higher layer information) which slot format (PHY parameter) should be used.

 

Let's assume that you have a RRC message (e.g, Radio Bearer Setup) and 25.221 Table 8F as reference, what is the slot format this RRC message refering to ?

 

 

            | +-dl-InformationPerRL-List ::= SEQUENCE OF SIZE(1..maxRL[8]) [1] OPTIONAL:Exist

            |   +-DL-InformationPerRL-r4 ::= SEQUENCE [100]

            |     +-modeSpecificInfo ::= CHOICE [tdd]

            |     | +-tdd ::= CHOICE [tdd]

            |     |   +-tdd ::= SEQUENCE [1]

            |     |     +-tddOption ::= CHOICE [tdd128]

            |     |     | +-tdd128 ::= SEQUENCE

            |     |     |   +-tstd-Indicator ::= BOOLEAN [FALSE]

            |     |     +-cellParametersID ::= INTEGER (0..127) [127] OPTIONAL:Exist

            |     |     +-sctd-Indicator ::= BOOLEAN [FALSE]

            |     +-dl-DPCH-InfoPerRL ::= CHOICE [tdd] OPTIONAL:Exist

            |     | +-tdd ::= SEQUENCE [10]

            |     |   +-dl-CCTrChListToEstablish ::= SEQUENCE OF SIZE(1..maxCCTrCH[8]) [1] OPTIONAL:Exist

            |     |   | +-DL-CCTrCh-r4 ::= SEQUENCE [110]

            |     |   |   +-tfcs-ID ::= INTEGER (1..8) [1] OPTIONAL:Exist

            |     |   |   +-timeInfo ::= SEQUENCE [10]

            |     |   |   | +-activationTime ::= INTEGER (0..255) [0] OPTIONAL:Exist

            |     |   |   | +-durationTimeInfo ::= INTEGER OPTIONAL:Omit

            |     |   |   +-commonTimeslotInfo ::= SEQUENCE [11] OPTIONAL:Exist

            |     |   |   | +-secondInterleavingMode ::= ENUMERATED [frameRelated]

            |     |   |   | +-tfci-Coding ::= ENUMERATED [tfci-bits-16] OPTIONAL:Exist

            |     |   |   | +-puncturingLimit ::= ENUMERATED [pl0-56]

            |     |   |   | +-repetitionPeriodAndLength ::= CHOICE [repetitionPeriod1] OPTIONAL:Exist

            |     |   |   |   +-repetitionPeriod1 ::= NULL

            |     |   |   +-tddOption ::= CHOICE [tdd128]

            |     |   |   | +-tdd128 ::= SEQUENCE [1]

            |     |   |   |   +-dl-CCTrCH-TimeslotsCodes ::= SEQUENCE OPTIONAL:Exist

            |     |   |   |     +-firstIndividualTimeslotInfo ::= SEQUENCE [0]

            |     |   |   |     | +-timeslotNumber ::= INTEGER (0..6) [6]

            |     |   |   |     | +-tfci-Existence ::= BOOLEAN [TRUE]

            |     |   |   |     | +-midambleShiftAndBurstType ::= SEQUENCE

            |     |   |   |     | | +-midambleAllocationMode ::= CHOICE [defaultMidamble]

            |     |   |   |     | | | +-defaultMidamble ::= NULL

            |     |   |   |     | | +-midambleConfiguration ::= INTEGER (1..8) [4]

            |     |   |   |     | +-modulation ::= ENUMERATED [mod-QPSK]

            |     |   |   |     | +-ss-TPC-Symbols ::= ENUMERATED [one]

            |     |   |   |     | +-additionalSS-TPC-Symbols ::= INTEGER OPTIONAL:Omit

            |     |   |   |     +-dl-TS-ChannelisationCodesShort ::= SEQUENCE

            |     |   |   |     | +-codesRepresentation ::= CHOICE [bitmap]

            |     |   |   |     |   +-bitmap ::= BIT STRING  [0000000011111111]

            |     |   |   |     +-moreTimeslots ::= CHOICE [noMore]

            |     |   |   |       +-noMore ::= NULL

 

 

There can be many different ways.. but following is my approach.

 

Step 1 : Determine Spreading Factor.

    The information (hints) on Spreading Factor in RRC message is not clear, it requires some other background knowledge around this. In case of DL DPCH, only two SF can be used. SF = 16 or SF = 1.

    Which one of these two we have to pick ?

    You can find some hints on this from following IE. According to 3GPP spec, if SF = 1, you MUST set all 0 at the bitmap field. If it is 'Not All 0', it means SF is 16.

     

                |     |   |   |     +-dl-TS-ChannelisationCodesShort ::= SEQUENCE

                |     |   |   |     | +-codesRepresentation ::= CHOICE [bitmap]

                |     |   |   |     |   +-bitmap ::= BIT STRING  [0000000011111111]

     

    In this example, SF turned out to be 16. So the slot format candiates are 0,1,2,3,4,5,6,7,8,9.

 

Step 2 : Check TFCI Field.

    As shown below, TFCI 'Exists' and the size of the field is 16 bits.

                |     |   |   | +-tfci-Coding ::= ENUMERATED [tfci-bits-16] OPTIONAL:Exist

     

    Now the number of candiates get down to only two, slot format 3 and 8.

 

Step 3 : Check Nss & TPC field

    As shown below, SS & TPC field Exists and the size of field 2 & 2. ('one' means one SS field and one TPC field, each of which needs 2 bits to represent its value).

     

    |     |   |   |     | +-ss-TPC-Symbols ::= ENUMERATED [one]

     

    Now you get only one candidate which is Slot Format 8. This is the final answer of this tutorial.