4G/LTE - PHY Processing

 

 

 

PDCCH Resource Allocation

 

The eNB does not place a PDCCH on arbitrary REs. It builds each PDCCH from whole CCEs, and the number of CCEs it spends decides how strongly the DCI is protected. This page shows how the PDCCH format sets that number, how many physical bits it gives, and what that means for the code rate.

Followings are the topics to be covered in this page.

PDCCH Format and Aggregation Level

One PDCCH is carried by multiple number of consecutive CCEs. How many CCEs are necessary to carry one PDCCH ? It depends on the format of the PDCCH. The relationship between PDCCH format and the number CCE required to carry the PDCCH is as follows :

  • PDCCH Format 0 : Requires 1 CCE = Aggregation Level 1 (2^PDCCH Format = 2^0 = 1)
  • PDCCH Format 1 : Requires 2 CCE = Aggregation Level 2 (2^PDCCH Format = 2^1 = 2)
  • PDCCH Format 2 : Requires 4 CCE = Aggregation Level 4 (2^PDCCH Format = 2^2 = 4)
  • PDCCH Format 3 : Requires 8 CCE = Aggregation Level 8 (2^PDCCH Format = 2^3 = 8)

The number of consecutive CCEs required to carry one PDCCH is called "Aggregation Level'. TS 36.211 Table 6.8.1-1 shows these relations.

The table below is the one the paragraph above refers to. It lists the four PDCCH formats of the original release, with their CCEs, REGs and physical bits.

36.211 Table 6.8.1-1 Supported PDCCH formats

36.211 Table 6.8.1-1, Supported PDCCH formats, in its original form with formats 0 to 3.

The current version of the table, 36.211 v19.3.0, has one more row. PDCCH format 4 uses 16 CCEs, which are 144 REGs and 1152 bits. It is supported only in non-MBSFN subframes of an MBMS-dedicated cell, so an ordinary unicast cell still uses aggregation levels 1, 2, 4 and 8.

The same clause also restricts where a PDCCH may start. A PDCCH of n consecutive CCEs can only start on a CCE number i with i mod n = 0. So an aggregation level 4 PDCCH starts on CCE 0, 4, 8 and so on. This alignment keeps the search space simple, and the PDCCH Candidate page shows how the UE uses it.

Note that the PDCCH format and the DCI format are two different things. The DCI format, such as 1A or 2A, defines the content of the message. The PDCCH format only defines how many CCEs carry it, and any DCI format can be sent with any aggregation level.

  • One CCE is 9 REGs : 36 REs, 72 bits with QPSK.
  • Aggregation level = 2 to the power of the PDCCH format : 1, 2, 4 or 8 CCEs.
  • PDCCH format 4 : 16 CCEs, only in an MBMS-dedicated cell.
  • A PDCCH of n CCEs starts on a multiple of n : 36.211 clause 6.8.1.

Number of PDCCH Bits

The number of PDCCH bits in Table 6.8.1-1 is not an arbitrary value. It follows from the size of a CCE and from the modulation, and the calculation below breaks it into its factors.

Now let's look into a little bit deeper and see how 'Number of PDCCH bits' is derived for each PDCCH

Number of PDCCH bits for PDCCH Format 0 = 1 (CCE) x 9 (REG/CCE) x 4 (RE/REG) x 2 (bits/RE, QPSK) = 72

Number of PDCCH bits for PDCCH Format 1 = 2 (CCE) x 9 (REG/CCE) x 4 (RE/REG) x 2 (bits/RE, QPSK) = 144

Number of PDCCH bits for PDCCH Format 2 = 4 (CCE) x 9 (REG/CCE) x 4 (RE/REG) x 2 (bits/RE, QPSK) = 288

Number of PDCCH bits for PDCCH Format 3 = 8 (CCE) x 9 (REG/CCE) x 4 (RE/REG) x 2 (bits/RE, QPSK) = 576

What does this mean in practical sense ? It means that even the same DCI with exactly same bit length, the number of physical channel bits gets different depending on which PDCCH format it is carried by. It means the Code Rate of PDCCH varies depending on which PDCCH format is used.

Each factor comes from 36.211 v19.3.0. A REG is a group of 4 REs that are not used by the cell-specific reference signals (clause 6.2.4), and a CCE is 9 REGs (clause 6.8.1). The PDCCH is always QPSK (clause 6.8.3), so each RE carries 2 bits. A CCE therefore holds 36 REs and 72 bits, whatever the bandwidth or the number of antenna ports.

The 4 REs of a REG are not always adjacent. In an OFDM symbol that carries CRS, a REG spans 6 subcarriers, 4 for the REG and 2 for the reference signal. In a symbol without CRS, a REG spans 4 subcarriers. The count of 36 usable REs per CCE stays the same in both cases.

  • PDCCH bits = CCEs x 9 x 4 x 2 : 72, 144, 288, 576.
  • A REG is 4 REs : excluding the CRS REs.
  • The PDCCH is always QPSK : 2 bits per RE.

Code Rate and Aggregation Level

Why would the eNB spend 8 CCEs on a DCI that also fits into one? The answer is the code rate. A higher aggregation level gives the same DCI more physical bits, so a UE at the cell edge can still decode it.

For example, if we use DCI Format 2A (I don’t remember the exact bit length… but it would be around 40 bits)

    Case 1 : If we use Aggregation Level = 1

      i)  After Channel Coding, the bit length would be about 171

      ii) After Rate Matching, it should be 72 (1 CCE)

     

    Case 2 : If we use Aggregation Level = 2

      i)  After Channel Coding, the bit length would be about 171

      ii) After Rate Matching, it should be 144 (2 CCE)

     

    Case 3 : If we use Aggregation Level = 4

      i)  After Channel Coding, the bit length would be about 171

      ii) After Rate Matching, it should be 288 (4 CCE)

     

    Case 4 : If we use Aggregation Level = 8

      i)  After Channel Coding, the bit length would be about 171

      ii) After Rate Matching, it should be 576 (8 CCE)

       

The DCI size in this example can be counted from 36.212 v19.3.0 clause 5.3.3.1.5A. Take DCI format 2A for FDD with 50 RB and 2 antenna ports. It has a 1-bit resource allocation header, 17 bits of resource block assignment, 2 bits of TPC, 3 bits of HARQ process number and a 1-bit swap flag. Each of the two transport blocks adds 8 bits, and the precoding information field is absent with 2 ports. That gives exactly 40 bits.

40 is one of the ambiguous sizes in Table 5.3.3.1.2-1, so one zero bit is appended, giving 41 bits. The PDCCH adds a 16-bit CRC scrambled with the RNTI (clause 5.3.3.2), which gives 57 bits. The tail-biting convolutional code has rate 1/3 (clause 5.3.3.3), so the coded length is 3 x 57 = 171 bits. The page first gave about 120 here, which is 3 x 40 and leaves out the CRC and the padding bit.

Rate matching then fits the 171 bits into the PDCCH bits of the chosen format. At aggregation levels 1 and 2, it punctures them down to 72 or 144 bits. At levels 4 and 8, it repeats bits from the circular buffer. The table below gives the effective code rate, the 57 bits before coding divided by the PDCCH bits.

 

Aggregation level

PDCCH bits

Rate matching

Effective code rate

1

72

puncture 171 to 72

0.79

2

144

puncture 171 to 144

0.40

4

288

repeat 171 to 288

0.20

8

576

repeat 171 to 576

0.10

 

A code rate of 0.79 needs a good channel, so aggregation level 1 suits UEs near the eNB. Level 8 gives a code rate near 0.1, which is why common DCIs such as SIB and paging scheduling use aggregation level 4 or 8 in the common search space.

  • DCI 2A at 50 RB, FDD, 2 ports : 40 bits, padded to 41.
  • 16-bit CRC and rate 1/3 coding : 171 coded bits.
  • Aggregation level 1 to 8 : code rate from 0.79 down to 0.10.

Number of CCEs in a Subframe

How many CCEs does a subframe offer in the first place? That number limits how many PDCCHs the eNB can send at once, and it depends on the bandwidth, the CFI, the antenna ports and the PHICH configuration.

36.211 clause 6.8.1 counts the REGs of the control region that are not used by the PCFICH or the PHICH, and divides by 9. The PCFICH always takes 4 REGs. The PHICH takes 3 REGs per PHICH group, and with Ng = 1 and normal CP, 50 RB give ceil(50/8) = 7 groups, which are 21 REGs. The PHICH Group page shows how those groups are formed.

With 2 CRS ports, symbol 0 holds 2 REGs per RB, because 4 of its 12 REs carry CRS. Symbols 1 and 2 hold 3 REGs per RB each. The table below applies this to a 50 RB carrier for each CFI.

 

CFI

Control symbols

REGs in the control region

REGs left for PDCCH

CCEs

1

1

100

75

8

2

2

250

225

25

3

3

400

375

41

 

With CFI 1, only 8 CCEs are available, which is a single aggregation level 8 PDCCH. With CFI 3, 41 CCEs allow many PDCCHs at lower levels. This is the trade-off the eNB makes each subframe: more control symbols give more CCEs but leave fewer REs for the PDSCH.

  • CCEs = floor of the free REGs / 9 : after the PCFICH and PHICH.
  • 50 RB, 2 ports, Ng = 1 : 8, 25 or 41 CCEs for CFI 1, 2 or 3.
  • CFI trades control capacity against PDSCH : one decision per subframe.

Reference

[1] 3GPP TS 36.211 v19.3.0 - clause 6.2.4, Resource-element groups, and clause 6.8, Physical downlink control channel

[2] 3GPP TS 36.212 v19.3.0 - clause 5.3.3, Downlink control information, and Table 5.3.3.1.2-1, Ambiguous sizes