|
Based on Table 8F : Time slot formats for the Downlink in 25.221 This page works through the downlink slot formats of 1.28 Mcps TDD, the TDD option that TD-SCDMA networks use. It starts with the slot format table and the position of the TFCI, SS and TPC fields in a slot. Then it takes the physical channel parameters of a 384 kbps downlink bearer and finds the slot formats that carry exactly the bits the bearer needs. The values are checked against 25.221 v19.0.0, 25.331 v19.0.1 and 34.108 v15.2.0. The topics on this page are listed below.
What does 25.221 Table 8F list ?Let's start with the table that every step on this page uses. A downlink slot can carry a TFCI, SS symbols and TPC symbols next to the data. Each combination of these fields, together with the spreading factor, is one slot format. 25.221 lists all of them in one table for QPSK. The table below has one row per slot format. The columns give the spreading factor, the midamble length, the TFCI code word bits, the SS and TPC bits, and the data bits per slot and per data field. Rows 0 to 9 use SF 16, and rows 10 to 24 use SF 1.
25.221 Table 8F. Time slot formats for the downlink, 1.28 Mcps TDD with QPSK. The SF sets the size of the slot, and the TFCI, SS and TPC fields take their bits out of it.
Where do the TFCI, SS and TPC sit in a slot ?The table gives only bit counts. To see why the two data fields of a slot can differ in size, we need the positions of the fields. 25.221 subclauses 5A.2.2.1 to 5A.2.2.3 give them, and the two figures below draw them for one slot of each sub-frame. Figure 1 shows a slot without SS and TPC. Each slot of 864 chips has a data field, a midamble, a second data field and a guard period. The TFCI parts, drawn in green, sit directly next to the midamble on both sides. The first sub-frame carries the 1st and 2nd parts of the TFCI code word, and the second sub-frame carries the 3rd and 4th parts.
Figure 1. Slot without SS and TPC. The TFCI code word is split into four parts, two on each side of the midamble in each sub-frame.
Figure 2 adds the SS and TPC symbols. The SS symbol, in red, comes directly after the midamble, and the TPC symbol, in light blue, follows it. The second TFCI part moves behind the TPC symbol. The label under the right half says "first subframe", but the parts drawn there are the 3rd and 4th, so that half shows the second sub-frame, as in Figure 1.
Figure 2. Slot with SS and TPC. The SS and TPC symbols follow the midamble, so they shorten only the second data field.
Which physical channel parameters does the example start from ?Now let's apply the table to a real bearer. The parameters below are the downlink physical channel parameters of the reference radio bearer for Interactive or background, UL 64 and DL 384 kbps PS RAB, in 34.108 subclause 6.11.5.4.1.32.2.2. They give the resources of one radio frame, but they do not name a slot format. How to select (figure out) slotformat ? Let's talk about following table as an example.
Each line of the table constrains the choice in a different way.
Steps 1 to 4 - which slot format fits the bearer ?The first four steps treat all six slots alike. Each step compares one line of the parameter table with one column of Table 8F and removes the rows that do not match. Step 1 - which slot formats use SF 1 ?The spreading factor splits Table 8F into two halves, so it is the first filter. Line No 1 gives SF 1, and the downlink of 1.28 Mcps TDD uses only SF 1 or SF 16. Step 1 : Find all the possible slot formats from Table 8F based on Line No (1). It says this is using SF1, so all the possible slot formats are 10,11,12,13,14,15,16,17,18,19,20,21,22,23,24. Step 2 - which of them carry 16 TFCI bits ?Line No 3 gives a TFCI code word of 16 bits per radio frame. In Table 8F, the TFCI column counts this whole code word, so we compare it with 16 directly. Step 2 : Find all the possible slot formats from the result of Step 1 based on Line No (3). It says the TFCI code word of the slot is 16 bits. so the possible slot formats are 13,18,23. Step 3 - which of them carry 2 and 2 SS and TPC bits ?Line No 4 and Line No 5 give 2 x 2 bits of TPC and of SS per radio frame. That is one QPSK symbol of each in every sub-frame, which is the 2 & 2 column of Table 8F. Step 3 : Find all the possible slot formats from the result of Step 2 based on Line No (4). It says the TPC of the slot is 2x2. so the possible slot formats are 18. Now we picked only one cadidate.. so no need for further checking. Step 4 - does slot format 18 give the right bit count ?A slot format that matches the columns can still carry the wrong number of data bits. So we multiply its data bits by the number of slots and compare the result with Line No 2. Step 4 : Based on Step 3 and Line No (1), (2).. check if this slot is valid. Ndata for slot : 1396 , based on Slotformat 18 in Table 8F Number of slots per radio frame : 6, based on line number (1) Total Number of Bits per radio frame = 1396 x 6 = 8376. This may be acceptable since it is less than 8424 (Line No (2)). But this may be a waste of small space (8424-8376 = 48 bits). The gap of 48 bits is 4 x 12 bits. Every slot in format 18 gives up 12 bits: 8 bits for its half of the TFCI code word and 4 bits for SS and TPC. But only one slot per sub-frame needs these fields. So four of the six slots give up 12 bits each without need, and the next steps use that.
Steps 5 to 7 - how can the frame carry exactly 8424 bits ?The first four steps gave every slot the same format. The last three steps drop that assumption. 25.221 lets the network decide per timeslot whether a slot carries the TFCI and the SS and TPC symbols. So only some slots need to pay for them. Step 5 - which slots can drop the TFCI, SS and TPC ?Let's see how often the control fields must appear. The TPC and the SS must be sent at least once per 5 ms sub-frame, and the TFCI is set per timeslot, so one slot in each sub-frame is enough. Step 5 : Now let's think if there is any way to fully fill out bits to the max allowed bit rate. According to Line No (1). This bearer uses 6 slots per radio frame. It means the bearer uses 3 slots per each subframe. It may not be a good idea to send data without Ntfci and TPC at the first slot, but we are allowed to send data without Ntfci and TPC at following slots within a subframe. In stead of removing the Ntfci and TPC, we can allocate a little bit larger Ndata for that slot and increase the throughput a little bit more. Let's find the slot format that meets the condition on Line No (1) and carries no TPC (TPC bit = 0) and Ntfci (Ntfci = 0). What is it ? You can find only one candidate for this. It is slot format 10. Now I am trying to allocate slot format as shown below. Figure 3 draws the result. Two sub-frames sit side by side, and each has Slot 0 to Slot 6 with the DwPTS, the guard period and the UpPTS in grey. The dlDPCH fills Slot 4, Slot 5 and Slot 6 of each sub-frame across all 16 code rows, because one SF 1 code fills the whole slot. Slot 4 uses slot format 18, and Slot 5 and Slot 6 use slot format 10.
Figure 3. Slot allocation of the DL 384 kbps DPCH. The first slot of each sub-frame carries the TFCI, SS and TPC, and the other two carry only data.
Step 6 - does the mixed allocation give 8424 bits ?Now we repeat the check of Step 4 with the mixed allocation. Each sub-frame contributes 1396 + 1408 + 1408 = 4212 bits, and two sub-frames give the total below. Step 6 : Based on the result of Step 4 and 5, Line No (1), (2).. check if this slot allocation is valid. i) Ndata for slot 4, subframe 1 (Slot format #18) = 1396 ii) Ndata for slot 5, subframe 1 (Slot format #10) = 1408 iii) Ndata for slot 6, subframe 1 (Slot format #10) = 1408 iv) Ndata for slot 4, subframe 2 (Slot format #18) = 1396 v) Ndata for slot 5, subframe 2 (Slot format #10) = 1408 vi) Ndata for slot 6, subframe 2 (Slot format #10) = 1408 ------------------------------------------------------- Total number of bits = 8424 This matches exactly with the number in Line No (2) Step 7 - how does RRC signal the mixed allocation ?The last step writes the allocation into the RRC message. Each timeslot needs its own tfci-Existence and ss-TPC-Symbols, so the three timeslots cannot share one set of parameters. Step 7 : Configure RB Setup according to this configuration. Decoded dl-CCTrCH-TimeslotsCodes from a tester log, +-dl-CCTrCH-TimeslotsCodes ::= SEQUENCE OPTIONAL:Exist
+-firstIndividualTimeslotInfo ::= SEQUENCE [0]
| +-timeslotNumber ::= INTEGER (0..6) [4]
| +-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 [0000000000000000]
+-moreTimeslots ::= CHOICE [additionalTimeslots]
+-additionalTimeslots ::= CHOICE [timeslotList]
+-timeslotList ::= SEQUENCE OF SIZE(1..maxTS-LCR-1[5]) [2]
+-DownlinkAdditionalTimeslots-LCR-r4 ::= SEQUENCE
| +-parameters ::= CHOICE [newParameters]
| +-newParameters ::= SEQUENCE
| +-individualTimeslotInfo ::= SEQUENCE [0]
| | +-timeslotNumber ::= INTEGER (0..6) [5]
| | +-tfci-Existence ::= BOOLEAN [FALSE]
| | +-midambleShiftAndBurstType ::= SEQUENCE
| | | +-midambleAllocationMode ::= CHOICE [defaultMidamble]
| | | | +-defaultMidamble ::= NULL
| | | +-midambleConfiguration ::= INTEGER (1..8) [4]
| | +-modulation ::= ENUMERATED [mod-QPSK]
| | +-ss-TPC-Symbols ::= ENUMERATED [zero]
| | +-additionalSS-TPC-Symbols ::= INTEGER OPTIONAL:Omit
| +-dl-TS-ChannelisationCodesShort ::= SEQUENCE
| +-codesRepresentation ::= CHOICE [bitmap]
| +-bitmap ::= BIT STRING [0000000000000000]
+-DownlinkAdditionalTimeslots-LCR-r4 ::= SEQUENCE
+-parameters ::= CHOICE [newParameters]
+-newParameters ::= SEQUENCE
+-individualTimeslotInfo ::= SEQUENCE [0]
| +-timeslotNumber ::= INTEGER (0..6) [6]
| +-tfci-Existence ::= BOOLEAN [FALSE]
| +-midambleShiftAndBurstType ::= SEQUENCE
| | +-midambleAllocationMode ::= CHOICE [defaultMidamble]
| | | +-defaultMidamble ::= NULL
| | +-midambleConfiguration ::= INTEGER (1..8) [4]
| +-modulation ::= ENUMERATED [mod-QPSK]
| +-ss-TPC-Symbols ::= ENUMERATED [zero]
| +-additionalSS-TPC-Symbols ::= INTEGER OPTIONAL:Omit
+-dl-TS-ChannelisationCodesShort ::= SEQUENCE
+-codesRepresentation ::= CHOICE [bitmap]
+-bitmap ::= BIT STRING [0000000000000000]
The tree follows DownlinkTimeslotsCodes-LCR-r4. The first timeslot, timeslot 4, carries tfci-Existence TRUE and ss-TPC-Symbols one, which gives slot format 18. The timeslotList then adds timeslot 5 and timeslot 6 with tfci-Existence FALSE and ss-TPC-Symbols zero, which gives slot format 10. Every bitmap is all zero, and 25.331 subclause 10.3.6.17 reads that as SF 1. The consecutive option of moreTimeslots would not work here, because it gives the additional timeslots the same parameters as the first one. Timeslot 6 could use sameAsLast instead of newParameters, because its parameters equal those of timeslot 5. The capture spells them out in full, which is also valid. Following is based on DownlinkTimeslotsCodes-LCR-r4 ::= SEQUENCE { firstIndividualTimeslotInfo IndividualTimeslotInfo-LCR-r4, dl-TS-ChannelisationCodesShort DL-TS-ChannelisationCodesShort, moreTimeslots CHOICE { noMore NULL, additionalTimeslots CHOICE { consecutive INTEGER (1..maxTS-LCR-1), timeslotList SEQUENCE (SIZE (1..maxTS-LCR-1)) OF DownlinkAdditionalTimeslots-LCR-r4 } } } DownlinkAdditionalTimeslots-LCR-r4 ::= SEQUENCE { parameters CHOICE { sameAsLast SEQUENCE { timeslotNumber TimeslotNumber-LCR-r4 }, newParameters SEQUENCE { individualTimeslotInfo IndividualTimeslotInfo-LCR-r4, dl-TS-ChannelisationCodesShort DL-TS-ChannelisationCodesShort } } }
Reference
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||