4G/LTE - DCI

 

 

 

 

DCI

 

When you study the physical frame structure of LTE, you may be impressed by flexibility (meaning complexity in other way) of all the possible ways of resource allocation. It was combination of Time Domain, Frequency Domain and the modulation scheme. Especially in frequency domain, you have so many resource blocks you can use (100 Resource Blocks in case of 20 Mhz Bandwidth) and if you think of all the possible permutation of these variables, the number of possible resource allocation will be very huge. Then you would have this question (At least I had this question).. How can the other party (the recieving side) can figure out exactly where in the slot and in which modulation scheme that the sender (transmitter) transmit the data(subframe)? I just captured the physical signal but how can I (the reciever) decode this signal. This is where the term called 'DCI(Downlink Control Indicator)' comes in.

 

It is DCI which carries those detailed information like "which resource block carries your data ?" and "what kind of demodulation scheme you have to use to decode data ?" and some other additional information. It means you (the reciever) first have to decode DCI and based on the information you got from the DCI you can decode the real data. It means without DCI, decodingthe data delivered to you is impossible.

Not only in LTE, but also in most of wireless communication the reciever requires special information structure like DCI. For example, in WCDMA R99, Slot format and TFCI carries those information and in HSDPA HS-SCCH carried those information and in HSUPA E-TFCI carries it.

Comparing to control channel in other technology (WCDMA, HSPA), LTE DCI has a lot more additional information in it. In addition to resource allocation, it can carry Power Control Command, CSI Report Request or CQI Report Request etc. There are several different DCI format, each of which has different set of intormations it can carry. Then Question would be which DCI format we have to use for a specific situation. This question will be answered in later part in this page.

 

In terms of protocol implementation with respect to carrying these information, R99 seems to be the most complicated one. You had to define all the possible combination of resource allocation in the form of TFCS (a kind of look-up table for TFCI) and you have to convey those information through L3 message (e.g, Radio Bearer Setup message and RRC Connection Setup message) and the transmitteralso have to configure itself according to the table. A lot of error meaning headache came from the mismatches between the TFCS information you configured in L3 message and the configuration the transmitter applied to itself (transmitter's lower layer configuration). It has been too much headache to me. HSDPA relieved the headache a lot since it carries these information directly on HS-SCCH and this job is done by MAC layer. The resource allocation information carried by HS-SCCH is called 'TFRI'. So I don't have to care much about L3 message.. but still I need to jump around the multiple different 3GPP document to define any meaningful TFRIs. And other complication was that even in HSDPA we still using R99 DPCH for power control and signaling purpose, so I cannot completely remove the headache of handling TFCS.Now in LTE, this information is carried by DCI as I explained above and we only have to care about just a couple of parameters like Number of RBs, the starting point of RBs and the modulation scheme and I don't have to care anything about configuring these things in RRC messages. This is a kind of blessing to me.

 

As one example showing how/when DCI is used, refer to "Uplink Data Transmission Scheduling - Persistent Scheduling"

 

 

 

Types of DCIs

 

DCI carries the following information :

    i) UL resource allocation (persistent and non-persistent)

    ii) Descriptions about DL data transmitted to the UE.

 

L1 signaling is done by DCI and Up to 8 DCIs can be configured in the PDCCH. These DCIs can have 6 formats : 1 format for UL scheduling, 2 formats for Non-MIMO DL scheduling, 1 format for MIMO DL Scheduling and 2 formats for UL power control.

 

DCI has various formats for the information sent to define resource allocations. The DCI formats defined in LTE are as follows.

 

DCI Format

Usage

Major Contents

Format 0

UL Grant. Resource Allocation for UL Data

RB Assignment,TPC,PUSCH Hopping Flag

Format 1

DL Assignment for SISO

RB Assignment,TPC, HARQ

Format 1A

DL Assignment for SISO (compact)

RB Assignment,TPC, HARQ

Format 1A

Triggering RACH in Connected States

PRACH Sequence Index

Format 1B

DL Assignment for MIMO with Rank 1

RB Assignment,TPC, HARQ,TPMI, PMI

Format 1C

DL Assignment for SISO (minimum size)

RB Assignment

Format 1D

DL Assignment for Multi User MIMO

RB Assignment,TPC, HARQ,TPMI,DL Power Offset

Format 2

DL Assignment for Closed Loop MIMO

RB Assignment,TPC, HARQ, Precoding Information

Format 2A

DL Assignment for Open Loop MIMO

RB Assignment,TPC, HARQ, Precoding Information

Format 2B

DL Assignment for TM8 (Dual Layer Beamforming)

RB Assignment,TPC, HARQ, Precoding Information

Format 2C

DL Assignment for TM9

RB Assignment,TPC, HARQ, Precoding Information

Format 3

TPC Commands for PUCCH and PUSCH with 2 bit power adjustment Power Control Only

Format 3A

TPC Commands for PUCCH and PUSCH with 1 bit power adjustment Power Control Only

Format 4

UL Assignment for UL MIMO (up to 4 layers)

RB Assignment,TPC, HARQ, Precoding Information

 

L1 signaling is done by DCI and Up to 8 DCIs can be configured in the PDCCH. These DCIs can have 6 formats : 1 format for UL scheduling, 2 formats for Non-MIMO DL scheduling, 1 format for MIMO DL Scheduling and 2 formats for UL power control.

 

 

 

DCI in Action

 

At early LTE (before Rel 10), the operation mode in DCI (Resource Allocation) was pretty simple and straightforward (at least in FDD) as in < Case 1 >. However, as the technology evolves we started setting different variations of DCI operation. Now we have special types of LTE specially designed for IoT/M2M application and DCI operation has been changed even further. In this section, I will try to visualize several typical types of DCI operations as examples just to give you some big picture on how DCI works for PDSCH and PUSCH scheduling.

 

< Case 1 >

 

 

< Case 2 >

 

 

 

< Case 3 >

 

 

 

< Case 4 >

 

 

 

< Case 5 >

 

 

 

 

What kind of information is carried by each DCI ? 

 

The best way to understand this in very detail is to take one example of each of DCI bit string and decode manually based on 3GPP specification. But this section can be a good summary for quick reference. And the DCI decode examples at the end of this page would give you a good/detailed picture of DCI strutures.

 

Type 0 : A bitmap indicating the resource block groups(RBGs) that are allocated to the scheduled UE. (An RBG is a set of consecutive physical resource blocks(PRBs). This type has following informations

  • Flag for format 0/format1A differentiation
  • Hoping flag
  • Resource block assignment and hopping resource allocation
  • New data indicator
  • TPC command for scheduled PUSCH
  • Cyclic shift for DM RS
  • CQI request
  • Number of appended zeros to format 0

Type 1 : A bitmap indicating PRBs from a set of PRBs from a subset of resource block groups determined by the system bandwidth.

  • Resource allocation header (resource allocation type 0/type 1)
  • Resource block assignment
  • Modulation and coding scheme
  • HARQ process number
  • New data indicator
  • Redundancy version
  • TPC command for PUCCH

Type 2 : A set of contiguously allocated physical or virtual resource blocks. The allocations vary from a single PRB upto the maximum number of PRBs spanning the system bandwidth.

 

 

 

What determines a DCI Format for the specific situation ?

 

There are two major factors to determine a DCI format for a specific situation as follows :

    i) RNTI Type

    ii) Transmission Mode

 

This means that you cannot change only one of these parameters arbitrarily and you always have to think of the relationships among these when you change one of these parameters. Otherwise you will spend a long time for troubleshooting -:)

 

Those tables from 3GPP 36.213 shows the relationships between RNTI Type, Transmission Mode and DCI format. (You would notice that same information (same RNTI type) can have multiple candidates of DCI format. Then, the question is "How network determine which DCI format it has to use at a specific moment ?". In some case, you can find a clear criteria from following table, but some other case the selection criteria is not clear. For example, if you ask "Do I have to use DCI format 1A or 2A when I am using TM3, C-RNTI ?". You may say "Use DCI format 2A in MIMO configuration and use 1 A in non-MIMO configuration". But the answer would not be clear if you ask "What kind of DCI format (1A or 1C) for Paging message (P-RNTI) ?". At least table 7.1-2 does now show any different selection criteria and I haven't found anywhere else in the spec about this selection criteria. In this case, I just ask to several other people who is working on that specific area and trying to draw conclusion by a kind of 'vote'. For this specific case (DCI format for P-RNTI), I got the response saying "There is no clear criteria, it is just upto network on which one to pick".)

 

 

< 38.213-v14.6.0 Table 7.1-1: PDCCH and PDSCH configured by SI-RNTI >  

DCI format

Search Space

Transmission scheme of PDSCH corresponding to PDCCH

DCI format 1C

Common

If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used , otherwise Transmit diversity .

DCI format 1A

Common

If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used , otherwise Transmit diversity .

 

 

< 38.213-v14.6.0 Table 7.1-2: PDCCH and PDSCH configured by P-RNTI > 

DCI format

Search Space

Transmission scheme of PDSCH corresponding to PDCCH

DCI format 1C Common If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used, otherwise Transmit diversity
DCI format 1A Common If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used , otherwise Transmit diversity

 

 

< 38.213-v14.6.0 Table 7.1-3: PDCCH and PDSCH configured by RA-RNTI > 

DCI format

Search Space

Transmission scheme of PDSCH corresponding to PDCCH

DCI format 1C Common If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used , otherwise Transmit diversity
DCI format 1A Common If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used , otherwise Transmit diversity

 

 

< 38.213-v14.6.0 Table 7.1-5: PDCCH and PDSCH configured by C-RNTI> 

Transmission mode

DCI format

Search Space

Transmission scheme of PDSCH corresponding to PDCCH

Mode 1

DCI format 1A

Common and UE specific by C-RNTI

Single-antenna port, port 0 

DCI format 1

UE specific by C-RNTI

Single-antenna port, port 0 

Mode 2

DCI format 1A

Common and UE specific by C-RNTI

Transmit Diversity

DCI format 1

UE specific by C-RNTI

Transmit Diversity

Mode 3

DCI format 1A

Common and UE specific by C-RNTI

Transmit Diversity

DCI format 2A

UE specific by C-RNTI

Large delay CDD or Transmit Diversity

Mode 4

DCI format 1A

Common and UE specific by C-RNTI

Transmit Diversity

DCI format 2

UE specific by C-RNTI

Closed-loop multiplexing or Transmit Diversity

Mode 5

DCI format 1A

Common and UE specific by C-RNTI

Transmit Diversity

DCI format 1D

UE specific by C-RNTI

Multi-user MIMO

Mode 6

DCI format 1A

Common and UE specific by C-RNTI

Transmit Diversity

DCI format 1B

UE specific by C-RNTI

Closed-loop multiplexing using a single transmission layer

Mode 7

DCI format 1A

Common and UE specific by C-RNTI

If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used , otherwise Transmit diversity 

DCI format 1

UE specific by C-RNTI

Single-antenna port, port 5

Mode 8

DCI format 1A

Common and UE specific by C-RNTI

If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used , otherwise Transmit diversity 

DCI format 2B

UE specific by C-RNTI

Dual layer transmission, port 7 and 8  or single-antenna port, port 7 or 8

Mode 9

DCI format 1A

Common and UE specific by C-RNTI

Non-MBSFN subframe: If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used, otherwise Transmit diversity
MBSFN subframe: Single-antenna port, port 7

DCI format 2C

UE specific by C-RNTI

Transmit diversity, port 7-8,  or dual layer transmission port 7-8 , if UE is configured with higher layer parameter semiOpenLoop, up to 8 layer transmission, ports 7-14  otherwise; or single-antenna port, port 7, 8, 11, or 13  if UE is configured with higher layer parameter dmrs-tableAlt, single-antenna port, port 7 or 8 otherwise

Mode 10

DCI format 1A

Common and UE specific by C-RNTI

Non-MBSFN subframe: If the number of PBCH antenna ports is one, Single-antenna port, port 0 is used, otherwise Transmit diversity
MBSFN subframe: Single-antenna port, port 7

DCI format 2D

UE specific by C-RNTI

Transmit diversity, port 7-8,  or dual layer transmission port 7-8 , if UE is configured with higher layer parameter semiOpenLoop, up to 8 layer transmission, ports 7-14  otherwise; or single-antenna port, port 7, 8, 11, or 13  if UE is configured with higher layer parameter dmrs-tableAlt, single-antenna port, port 7 or 8 otherwise

 

 

< 38.213-v14.6.0 Table 7.1-7: PDCCH and PDSCH configured by Temporary C-RNTI>

DCI format

Search Space

Transmission scheme of PDSCH corresponding to PDCCH

DCI format 1A Common and UE specific by C-RNTI

If the number of PBCH antenna port is one, Single-antenna port, port 0 is used , otherwise Transmit diversity

DCI format 1 UE specific by C-RNTI

If the number of PBCH antenna port is one, Single-antenna port, port 0 is used , otherwise Transmit diversity

 

 

Corner Case Situation

 

Even though all the tables listed above provide the selection criteria for various situation, there still be some cases which sounds like a corner case or gray area.

 

Case 1 : Single Transport Block Scheduling with 2, 2A, 2B, 2C and 2D

    Q1 > In terms of fields in these DCI format, they all carries the scheduling for two transport blocks. Can I still schedule single transport block PDSCH with these DCI format ? If yes, what should I set for the field of Transport block where are not scheduled ?

    A1> Yes, it is possible. Both MCS and RV of unscheduled transport should be set to 0 in this case as per following statement at 36.213-7.1.7.2 :

      DCI formats 2, 2A, 2B, 2C and 2D a transport block is disabled if 0 MCS I = and if rvidx = 1 otherwise the transport block is enabled

     

    Q2 > Assuming CQI is not reported, which PUCCH format should be used for this case ? 1a or 1b?

    A2> 1a

 

 

 

Any relations between DCI format and Layer 3 signaling message ?

 

Yes, there is a relationship. You have to know which DCI format is required for which RRC message. Following tables from 3GPP 36.321 shows the relationship between RNTI and logical channel and you would know which RRC message is carried by which logical channel. So with two step induction, you will figure out the link between RRC message and it's corresponding DCI format.

 

For example, if you see the "Security Mode Command" message of section 6.2.2 of 36.331, it says

 

Signalling radio bearer: SRB1

RLC-SAP: AM

Logical channel: DCCH

Direction: UE to E-UTRAN

 

If you see the table, you would see this message is using C-RNTI. and you will figure out the possible candiates from table 7.1-5 of 36.213 and if you would have detailed information of the transmission mode, you can pinpoint out exactly which DCI format you have to use for this message for a specific case. Assuming TM mode in this case is TM1 and scheduling is dynamic scheduling, if you see Table 7.1-2 you will figure out that this is using C-RNTI. With this RNTI Type and TM mode, if you see table 7.1-5, this case use DCI Format 1 or DCI Format 1A.

 

 

 

RNTI vs DCI Format

 

Just for Convenience, I created a table that shows RNTI types and DCI Format that can be used for each RNTI. (You can figure this out by combining the descriptions of various tables in previous section.)

 

RNTI Types

DCI Format Applicable to the RNTI Type

SI-RNTI, P-RNTI, RA-RNTI

1A, 1C

C-RNTI, SPS C-RNTI

0, 1A, 1B, 1D, 2, 2A, 2B, 2C, 4 (2B,2C,4 is for Rel 10 or later)

M-RNTI

1C

TPC-RNTI

3, 3A

 

 

 

Full Details of Each DCI Contents

 

A lot of complications resides in the composition (structure) of each DCI Format. This is a huge topic and requires a lot of cross referencess among multiple specification. I would just start with DCI format 0 and I think it would take a couple of weeks to complete this section.

 

NOTE 1: The structure of each DCI format is defined in  36.212 5.3.3.1 DCI formats but many of the fields in a DCI are defined in many other specifications. I tried to consolidate all the different specifications in this single page, so that you can get all the informations here without opening multiple specifications.

 

NOTE 2: Most of these tables are based on Release 8 specification. Some of field name might have been changed in later specification.

 

NOTE 3 : DCI for LTE Advanced is not described here. I wrote a separate pages for DCI for LTE Advanced.

 

 

DCI Format 0 :--------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.1 Format 0.

 

Format 0 (Release 8) - C-RNTI, SPS C-RNTI

Field Name

Length

Comment

Flag for format0/format1A differentiation

1  

Hopping flag

1  

N_ULhop

1 (1.4 Mhz)

1 (3 Mhz)

1 (5 Mhz)

2 (10 Mhz)

2 (15 Mhz)

2 (20 Mhz)

Applicable only when Hopping flag is set.(Refer to 36.213 Table 8.4-1 and Table 8.4-2)is.

Resource block assignment

5 (1.4 Mhz)

7 (3 Mhz)

7 (5 Mhz)

11 (10 Mhz)

12 (15 Mhz)

13 (20 Mhz)

See 36.213 8.1

MCS and RV

5  

NDI (New Data Indicator)

1  

TPC for PUSCH

2 See Power Control section

Cyclic shift for DM RS

3

See 36.211 Table Table 5.5.2.1.1-1

UL index (TDD only)

2

This field is present only for TDD operation with uplink-downlink configuration 0

Downlink Assignment Index (DAI)

2

set only in TDD

Operation with uplink-downlink configurations 1-6

CSI request (1 or 2 bit)

1,2,3,4,5

(Refer to this table)

This field is used to trigger Aperiodic CSI report from UE based on 36.213 7.2.1.

In case of Aperiodic Report in Carrier Aggregation, Refer to this page.

 

< 36.213 Table 8.4-1: Number of Hopping Bits NUL_hop vs. System Bandwidth >

 

< 36.213 Table 8.4-2: PDCCH DCI Format 0 Hopping Bit Definition >

 

< 36.213 8.1 Resource Allocation for PDCCH DCI Format 0 >

 

< 36.211 Table 5.5.2.1.1-1: Mapping of Cyclic Shift Field in DCI format 0 to DMRS(2)_n Values >

 

< 36.213 Table 7.3-X: Value of Downlink Assignment Index >

 

 

< CSI bit length decision table >

NOTE : This table is summary of 36.212 v17.1 - 5.3.3.1.1 Format 0 - CSI request

CSI-RS-ConfigNZPAperiodic

numberActivatedAperiodicCSI-RS-Resources

Search Space

No of DL Cell

CSI process

CSI measurement setst

No of CSI bits

Not Configured

N/A

uss

<= 5

N/A

N/A

2

Not Configured

N/A

uss

<= 5

> 1

N/A

2

Not Configured

N/A

uss

<= 5

> 1

2

2

Configured

1

uss

<= 5

N/A

N/A

2

Configured

1

uss

<= 5

> 1

N/A

2

Configured

1

uss

<= 5

> 1

2

2

Configured

1

otherwise

1

Not Configured

N/A

otherwise

1

Not Configured

N/A

uss

>= 6

N/A

N/A

3

Configured

1

uss

>= 6

N/A

N/A

3

Configured

>1

uss

<= 5

N/A

N/A

4

Configured

>1

uss

<= 5

> 1

N/A

4

Configured

>1

uss

<= 5

> 1

2

4

Configured

>1

uss

>= 6

N/A

N/A

5

Configured

>1

otherwise

3

 

 

 

DCI Format 1 :--------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.2 Format 1.

 

Format 1 (Release 13) - C-RNTI, SPS C-RNTI

Field Name

Length (Bits)

Comment

Resource allocation header

1

RA Type 0 or RA Type 1

Resource block assignment for RA Type 0

6 (1.4 Mhz)

8 (3 Mhz)

13 (5 Mhz)

17 (10 Mhz)

19 (15 Mhz)

25 (20 Mhz)

Applicable only when Resource allocation header = 0 (RA Type 0)

Refer to RA Type page

Subset

N/A (1.4 Mhz)

1 (3 Mhz)

1 (5 Mhz)

2 (10 Mhz)

2 (15 Mhz)

2 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

Shift

N/A (1.4 Mhz)

1 (3 Mhz)

1 (5 Mhz)

1 (10 Mhz)

1 (15 Mhz)

1 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

Resource block assignment for RA Type 1

N/A (1.4 Mhz)

6 (3 Mhz)

13 (5 Mhz)

14 (10 Mhz)

16 (15 Mhz)

22 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

MCS

5  

HARQ Process

3 (FDD)

4 (TDD)

 

RV

2  

TPC for PUCCH

2 See Power Control section

Downlink Assignment Index

X

Set only in TDD

See 36.212 - Table 5.3.3.1.2-2

See DAI page for the details of DAI concept

HARQ-ACK resource offset

2 Set only when DCI is carried by EPDCCH

 

< 36.212 - Table 5.3.3.1.2-2: Number of bits for Downlink Assignment Index. >

No of Bits

Description

4

For UEs configured by higher layers with codebooksizeDetermination-r13 = dai and when a DCI format scheduling PDSCH is mapped onto the UE specific search space given by the C-RNTI as defined in 36.213, the 4-bit DAI consists of a 2-bit counter DAI and a 2-bit total DAI.

- Counter DAI – 2 bits as defined in section 7.3 of 36.213

- Total DAI – 2 bits as defined in section 7.3 of 36.213

2

For UEs configured with no more than five DL cells, or for UEs configured by higher layers with

codebooksizeDetermination-r13 = cc, or for UEs configured by higher layers with codebooksizeDetermination-r13 = dai and when a DCI format scheduling PDSCH is not mapped

onto the UE specific search space given by the C-RNTI as defined in 36.213, this field is present forFDD or TDD operation, for cases with TDD primary cell.

If the UL/DL configuration of all TDD serving cells is same and the UE is not configured to decode PDCCH with CRC scrambled by eimta-RNTI, then this field only applies to serving cell with UL/DL configuration 1-6

If at least two TDD serving cells have different UL/DL configurations or the UE is configured to decode PDCCH with CRC scrambled by eimta-RNTI, then this field applies to a serving cell with DL-reference UL/DL configuration 1-6 as defined in section 10.2 of 36.213

0

For UEs configured with no more than five DL cells, or for UEs configured by higher layers with

codebooksizeDetermination-r13 = cc, or for UEs configured by higher layers with codebooksizeDetermination-r13 = dai and when a DCI format scheduling PDSCH is not mapped

onto the UE specific search space given by the C-RNTI as defined in 36.213, this field is not present for FDD or TDD operation, for cases with FDD primary cell.

 

 

DCI Format 1A :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.3 Format 1A.

 

Format 1A (Release 13) - C-RNTI, SPS C-RNTI

Field Name

Length (Bits)

Comment

Flag for format0/format1A differentiation

1  

Localized/Distributed VRB assignment flag

1  

N_Gap

1

Applicable only when Localized/Distributed VRB assignment flag is 1 (Distributed) and BW >= 10 Mhz

   0 = N-Gap 1

   1 = N-Gap 2

Resource block assignment for Localized DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

11 (10 Mhz)

12 (15 Mhz)

13 (20 Mhz)

See 36.213 8.1

Resource block assignment for Distributed DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

10 (10 Mhz)

11 (15 Mhz)

12 (20 Mhz)

See 36.213 8.1

MCS

5  

HARQ Process

3 (FDD)

4 (TDD)

 

RV

2  

TPC for PUCCH

2 See Power Control section

Downlink Assignment Index

X

Set only in TDD

See 36.212 - Table 5.3.3.1.2-2

See DAI page for the details of DAI concept

SRS Request 0 or 1 only for DCI/PDCCH in UE specific Search space

HARQ-ACK resource offset

2 Set only when DCI is carried by EPDCCH

 

Format 1A (Release 13) - C-RNTI : PDCCH Order

Field Name

Length (Bits)

Comment

Flag for format0/format1A differentiation

1  

Localized/Distributed VRB assignment flag

0  

Resource block assignment for Localized DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

11 (10 Mhz)

12 (15 Mhz)

13 (20 Mhz)

All bit should be 1

Preamble Index

6  

PRACH Mask Index

4

 

All the remaining bits

  All 0

 

Format 1A (Release 13) - RA-RNTI, P-RNTI, or SI-RNTI

Field Name

Length (Bits)

Comment

Flag for format0/format1A differentiation

1  

Localized/Distributed VRB assignment flag

1  

N_Gap

1

Applicable only when Localized/Distributed VRB assignment flag is 1 (Distributed) and BW >= 10 Mhz

   0 = N-Gap 1

   1 = N-Gap 2

Resource block assignment for Localized DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

11 (10 Mhz)

12 (15 Mhz)

13 (20 Mhz)

See 36.213 8.1

Resource block assignment for Distributed DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

10 (10 Mhz)

11 (15 Mhz)

12 (20 Mhz)

 

MCS

5  

HARQ Process

3 (FDD)

4 (TDD)

 
NDI

1

Applicable only if DL BW >≥ 5 Mhz and Localized/Distributed VRB assignment flag is set to 1

RV

2  

TPC (MSB)

1 (Reserved)  

TPC (LSB)

1

Downlink Assignment Index

X

Set only in TDD

See 36.212 - Table 5.3.3.1.2-2

See DAI page for the details of DAI concept

HARQ-ACK resource offset

2 Set only when DCI is carried by EPDCCH

 

 

DCI Format 1B :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.3A Format 1B.

 

Format 1B (Release 8) - C-RNTI, SPS C-RNTI

Field Name

Length (Bits)

Comment

Flag for format0/format1A differentiation

1  

Localized/Distributed VRB assignment flag

1  

N_Gap

1

Applicable only when Localized/Distributed VRB assignment flag is 1 (Distributed) and BW >= 10 Mhz

   0 = N-Gap 1

   1 = N-Gap 2

Resource block assignment for Localized DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

11 (10 Mhz)

12 (15 Mhz)

13 (20 Mhz)

See 36.213 8.1

Resource block assignment for Distributed DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

10 (10 Mhz)

11 (15 Mhz)

12 (20 Mhz)

See 36.213 8.1

MCS

5  

HARQ Process

3 (FDD)

4 (TDD)

 

RV

2  

TPC for PUCCH

2 See Power Control section

TPMI information for precoding

2 (2 Antenna)

4 (4 Antenna)

Refer to following pages for details :

 Codebook selection for Precoding-2 Antenna

 Codebook selection for Precoding-4 Antenna

PMI confirmation for precoding

1

See 36.212 Table 5.3.3.1.3A-2 for details

 

< 36.212 Table 5.3.3.1.3A-2: Content of PMI confirmation >

 

 

DCI Format 1C :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.4 Format 1C.

 

Format 1C (Release 8) - RA-RNTI, P-RNTI, or SI-RNTI

Field Name

Length (Bits)

Comment

N_Gap

1

Applicable only when Localized/Distributed VRB assignment flag is 1 (Distributed) and BW >= 10 Mhz

   0 = N-Gap 1

   1 = N-Gap 2

Resource block assignment

3 (1.4 Mhz)

5 (3 Mhz)

7 (5 Mhz)

6 (10 Mhz)

8 (15 Mhz)

9 (20 Mhz)

 

MCS

5  

 

 

Format 1C (Release 8) - M-RNTI

Field Name

Length (Bits)

Comment

MCCH Change Notification

8

 

Reserve

N/A (1.4 Mhz)

2 (3 Mhz)

4 (5 Mhz)

5 (10 Mhz)

6 (15 Mhz)

7 (20 Mhz)

 

 

 

DCI Format 1D :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.4A Format 1D.

 

Format 1D (Release 8) - C-RNTI, SPS C-RNTI

Field Name

Length (Bits)

Comment

Flag for format0/format1A differentiation

1  

Localized/Distributed VRB assignment flag

1  

N_Gap

1

Applicable only when Localized/Distributed VRB assignment flag is 1 (Distributed) and BW >= 10 Mhz

   0 = N-Gap 1

   1 = N-Gap 2

Resource block assignment for Localized DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

11 (10 Mhz)

12 (15 Mhz)

13 (20 Mhz)

See 36.213 8.1

Resource block assignment for Distributed DRB

5 (1.4 Mhz)

7 (3 Mhz)

9 (5 Mhz)

10 (10 Mhz)

11 (15 Mhz)

12 (20 Mhz)

See 36.213 8.1

MCS

5  

HARQ Process

3 (FDD)

4 (TDD)

 

RV

2  

TPC for PUCCH

2 See Power Control section

TPMI information for precoding

2 (2 Antenna)

4 (4 Antenna)

Refer to following pages for details :

 Codebook selection for Precoding-2 Antenna

 Codebook selection for Precoding-4 Antenna

Downlink power offset

1

See 36.213 Table 7.1.5-1 for details

 

< 36.213 Table 7.1.5-1: Mapping of downlink power offset field in DCI format 1D to the delta power-offset value >

 

 

DCI Format 2 :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.5 Format 2.

 

Format 2 (Release 13) - C-RNTI, SPS C-RNTI

Field Name

Length (Bits)

Comment

Resource allocation header

1

RA Type 0 or RA Type 1

Resource block assignment for RA Type 0

6 (1.4 Mhz)

8 (3 Mhz)

13 (5 Mhz)

17 (10 Mhz)

19 (15 Mhz)

25 (20 Mhz)

Applicable only when Resource allocation header = 0 (RA Type 0)

Refer to RA Type page

Subset

N/A (1.4 Mhz)

1 (3 Mhz)

1 (5 Mhz)

2 (10 Mhz)

2 (15 Mhz)

2 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to  RA Type page

Shift

N/A (1.4 Mhz)

1 (3 Mhz)

1 (5 Mhz)

1 (10 Mhz)

1 (15 Mhz)

1 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

Resource block assignment for RA Type 1

N/A (1.4 Mhz)

6 (3 Mhz)

13 (5 Mhz)

14 (10 Mhz)

16 (15 Mhz)

22 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

TPC for PUCCH

2 See Power Control section

Downlink Assignment Index

X

Set only in TDD

See 36.212 - Table 5.3.3.1.2-2

See DAI page for the details of DAI concept

HARQ Process

3 (FDD)

4 (TDD)

 

Transport block to codeword swap flag

1  

MCS for Transport Block 1

5  

NDI for Transport Block 1

1  

RV for Transport Block 1

2  

MCS for Transport Block 1

5  

NDI for Transport Block 1

1  

RV for Transport Block 1

2  

Precoding information

3 (2 Antenna)

6 (4 Antenna)

Refer to Precoding Information Field in Precoding Page

HARQ-ACK resource offset

2 Set only when DCI is carried by EPDCCH

 

 

DCI Format 2A :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.5A Format 2A.

 

Format 2A (Release 13) - C-RNTI, SPS C-RNTI

Field Name

Length (Bits)

Comment

Resource allocation header

1

RA Type 0 or RA Type 1

Resource block assignment for RA Type 0

6 (1.4 Mhz)

8 (3 Mhz)

13 (5 Mhz)

17 (10 Mhz)

19 (15 Mhz)

25 (20 Mhz)

Applicable only when Resource allocation header = 0 (RA Type 0)

Refer to RA Type page

Subset

N/A (1.4 Mhz)

1 (3 Mhz)

1 (5 Mhz)

2 (10 Mhz)

2 (15 Mhz)

2 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

Shift

N/A (1.4 Mhz)

1 (3 Mhz)

1 (5 Mhz)

1 (10 Mhz)

1 (15 Mhz)

1 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

Resource block assignment for RA Type 1

N/A (1.4 Mhz)

6 (3 Mhz)

13 (5 Mhz)

14 (10 Mhz)

16 (15 Mhz)

22 (20 Mhz)

Applicable only when Resource allocation header = 1 (RA Type 1)

Refer to RA Type page

TPC for PUCCH

2 See Power Control section

Downlink Assignment Index

X

Set only in TDD

See 36.212 - Table 5.3.3.1.2-2

See DAI page for the details of DAI concept

HARQ Process

3 (FDD)

4 (TDD)

 

Transport block to codeword swap flag

1  

MCS for Transport Block 1

5  

NDI for Transport Block 1

1  

RV for Transport Block 1

2  

MCS for Transport Block 2

5  

NDI for Transport Block 2

1  

RV for Transport Block 2

2  

Precoding information

0 (2 Antenna)

2 (4 Antenna)

Refer to 36.212 Table 5.3.3.1.5A-2 for the meaning of value in the field

HARQ-ACK resource offset

2 Set only when DCI is carried by EPDCCH

 

< 36.212 Table 5.3.3.1.5A-2: Content of precoding information field for 4 antenna ports >

 

 

DCI Format 3 :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.6 Format 3.

 

Format 3 (Release 8) - TPC-RNTI

Field Name

Length (Bits)

Comment

TPC command number 1

2

 

TPC command number 2

2  

TPC command number 3

2  
...    

TPC command number N

2 The size of N is dependent on the payload size of DCI format 0 for the system BW

 

Which TPC value out of N values in DCI format 3 is used for a specific UE is specified by the RRC message as shown below.

 

 

 

DCI Format 3A :-------------------------------------------------------------------------------------

 

This is based on 3GPP 36.212 - 5.3.3.1.7 Format 3A.

 

Format 3A (Release 8) - TPC-RNTI

Field Name

Length (Bits)

Comment

TPC command number 1

1

 

TPC command number 2

1  

TPC command number 3

1  
...    

TPC command number N

1 The size of N is dependent on the payload size of DCI format 0 for the system BW

 

Which TPC value out of N values in DCI format 3 is used for a specific UE is specified by the RRC message as shown below.

 

 

DCI Format for Rel 10 or later

 

For this, refer to DCI for LTE Advanced.

 

 

DCI 0 - Examples

 

Example 1 > DCIFormat 0, value = 0x2584A800 (00100101100001001010100000000000 b)

 

You can figure out the Start of RB and N_RB (Number of allocated RB) from RIV value.

 

Field

Bit Length

Value

Format0-A-Flag

1

0(DciFormat 0)

Frequency Hopping

1

0 (non Hopping)

RIV

11

1200

MCS

5

18

NDI

1

1

TPC

2

01

Cyclic Shift

3

000

CQI Request

1

0

 

How can I calcuate Start_RB and N_RB from RIV. The simple calcuation is as follows :
i) N_RB = Floor(RIV/MAX_N_RB) + 1= Floor(1200/50) + 1 = 25, where MAX_N_RB = 50 in this case since this is 10 Mhz System BW.
ii) Start_RB = RIV mod MAX_N_RB = 1200 mod 50 = 0

 

Following is the decoding result from DCI Decoder

 

 

Example 2 > DCIFormat 0, value = 0x48720800 (01001000011100100000100000000000 b )

 

This examples shows the case where PUSCH frequency hopping flag is on. Depending on the value for NUL-hop, the detailed hopping pattern is determined.

 

Field

Bit Length

Value

Format0-A-Flag

1

0(DciFormat 0)

Frequency Hopping

1

1 (Hopping)

NUL-hop

2

00

RIV

9

270

MCS

5

8

NDI

1

0

TPC

2

01

Cyclic Shift

3

000

CQI Request

1

0

 

 

When the system band frequency is 1.4M, 3M, 5M, Type PUSCH hopping is decided by below method.

 

"NUL-hop" = 0 --- Type1

"NUL-hop" = 1 --- Type2

 

When the system band frequency is 10M, 15M, 20M, Type PUSCH hopping is decided by below method.

 

"NUL-hop" = 0 --- Type1

"NUL-hop" = 1 --- Type1

"NUL-hop" = 2 --- Type1

"NUL-hop" = 3 --- Type2

 

Following is the decoding result from  DCI Decoder

 

Example 3 > DCIFormat 0, value = 0x07D7E800 (00000111110101111110100000000000 b)

 

This example shows you a case with UL HARQ retransmission. If you see the MCS value, it says 31 which is set as RVidx 3 in Table 8.6.1-1 of 36.213.

 

Field

Bit Length

Value

Format0-A-Flag

1

0(DciFormat 0)

Frequency Hopping

1

0 (non Hopping)

RIV

11

250

MCS

5

31

NDI

1

1

TPC

2

01

Cyclic Shift

3

000

CQI Request

1

0

 

Following is the decoding result from  DCI Decoder

 

 

DCI 1 - Examples

 

Example 1 > DCIFormat 1A, value = 0x84B3C040 (10000100101100111100000001000000 b)

 

Field

Bit Length

Value

Format1-A-Flag

1

1(DciFormat 1A)

ResourceAllocation

1

0 (LocalizedVRB)

RIV

11

150

MCS

5

15

HARQ Process

3

0

NDI

1

0

RV

2

00

TPC

2

10

 

Following is the decoding result from  DCI Decoder

 

Example 2 > DCIFormat 1A, value = 0xC4B3C140 (11000100101100111100000101000000 b)

 

 

Field

Bit Length

Value

Format1-A-Flag

1

1(DciFormat 1A)

ResourceAllocation

1

1 (DistributedVRB)

Ngap

1

0 (Ngap-0)

RIV

11

150

MCS

5

15

HARQ Process

3

0

NDI

1

0

RV

2

1

TPC

2

01

 

Following is the decoding result from  DCI Decoder

 

 

DCI 2A - Examples

 

Example 1 > DCIFormat 2A, value = 0x080005C080 (0000100000000000000001011100000010000000 b)

 

Field

Bit Length

Value

ResourceAllocation

1

0(RAType0)

RB-Assign

17

00010000000000000

TPC

2

00

HARQ Process

3

2

TB-CW Swap Flag

1

1

MCS-TB1

5

24

NDI-TB1

1

0

RV-TB1

2

0

MCS-TB2

5

16

NDI-TB2

1

0

RV-TB2

2

0

 

Following is the decoding result from  DCI Decoder

 

 

From DCI to PDCCH

 

You may see the structure of DCI looks too complicated. However, this would be taken as simple comparing to the procedure through which this DCI information has to go to get transmitted through Antenna. DCI that is described above is MAC layer concept and at least you can decode and understand the meaning of each bit field with relatively small effort. Since this is another huge topic and it is transport/physical layer issue, I described these issues in a couple of different pages as linked below.

 

The overall flow of channel coding to Resource Eelement mapping process for DCI is described in Physical Layer Channel : Downlink : PDCCH (Physical Download Control Channel)

 

The location of a PDCCH that carries a DCI (even though it is the exactly identical information) varies at every subframe. The location of the PDCCH is determined by CCE Index at transmitter (eNB). But this CCE index is not informed to the reciever (UE). UE has to figure out the location of PDCCH by blind decoding. This process is described in CCE Index Calculation/PDCCH Decoding/Blind Decoding.

 

When UE is trying blind decoding, how many different combinations of possible PDCCH allocation area (Search Space) ? This is described in PDCCH Candidate and Search Space

 

How many physical layer bits (how many Resource Elements) a PDCCH occupy when it is being transmitted ? This is explained in PDCCH Resource Allocation.

 

If you are not faimilar with the PDCCH allocation unit called CCE and how the REG gets distributed over control channel region. Refer to Resource Allocation and Management Unit

 

If you want to look in further details at the matlab code level, refer to Matlab :ToolBox : LTE : Downlink : PDCCH.  This is not a full detail since it is based on Matlab Toolbox and the implementations of the toolbox function is not open to user, but you would get pretty good understandings of overall transport/physical channel process for DCI.