LTE Throughput Optimization

There are many ways to optimize LTE throughput and I will try to cover all of them. The LTE throughput optimization procedure described in this article requires PDCCH enhancements. The general idea is that the LTE subframe is made up of PDCCH and PDSCH as explained in my article LTE Frame Structure Made Simple. The PDCCH is used for control information while the PDSCH carries the actual data. So, if the PDCCH resources are reduced then that means that the PDSCH resources can increase which in turn means that there will be more data per subframe. Since, each subframe is 1 ms in LTE so it actually means there will be more bits per millisecond which is the definition of throughput.

Firstly, let’s try to understand PDCCH itself and how it works. A PDCCH is used to give scheduling allocations to the UE on the PDSCH or PUSCH. For example, if the UE has data in the PDSCH, it needs to know where the data is located. The PDCCH will tell the UE that the data it is looking for is located at this location on PDSCH. This means that if the UE is unable to decode PDCCH then the UE cannot read the PDSCH in that subframe and consistent decoding failures of PDCCH lead to RLF (Radio Link Failure) due to N310. Hence, the decoding of PDCCH is extremely important and that is why it uses a special structure which is different than other channels.

PDCCH is made up of CCEs (Control Channel Elements) and each CCE is made up of 36 REs (Resource Elements). PDCCH further uses a concept of aggregation layers which is a group of CCEs. There are 4 aggregation layers in the normal PDCCH

– Aggregation layer 1 : This uses 1 CCE and it is the smallest block so it is only used in very good radio conditions.

– Aggregation layer 2 : This uses 2 CCEs and it is usually the most common aggregation layer in normal radio conditions.

– Aggregation layer 4 : This uses 4 CCEs and it is a robust allocation. It can be used for signalling and control information allocations.

– Aggregation layer 8 : This uses 8 CCEs and it is the most robust allocation. Users in very bad radio conditions are allocated with this layer or it can be used for control information.

Let’s have a look at how many users can be scheduled by PDCCH in a subframe. This depends on the number of CCEs that the subframe can handle which in turn depends on many factors. Let’s have a look at a couple of examples

– Consider a 10 MHz channel using 2×2 MIMO (2 CRS ports). The PDCCH can span over 3 symbols at maximum and may use 1 symbol at minimum. The number of RBs in a 10 MHz channel is 50 and this means that a symbol can hold a maximum of 600 REs. However, in the first symbol, we have 2 RS per RB for each antenna port. This means that there will be a total of 4 RS per RB in the first symbol and since there are 50 RBs so total RS count will be 4*50 =200 REs. Moreover, there is a PCFICH control channel that spans over 4 REGs or 16 REs. Then there are PHICH groups and each PHICH group occupies 3 REGs or 12 REs. If the Ng parameter is 1 then there will be 7 PHICH groups in 10 MHz channel so the total PHICH overhead will be 12*7=84.

LTE Throughput Optimization

Number of REs in one symbol : 50*12 = 600

Overhead in Symbol 1 = 200 RS + 16 REs of PCFICH + 84 REs of PHICH = 300 REs

Overhead in symbol 2 = 0 REs

Overhead in symbol 3 = 0 REs

Total REs available for PDCCH (REs available in 3 symbols) = 1800 – 300 = 1500 REs

Total CCEs available for PDCCH = 1500 REs / 36 = 41 CCEs

This means that if all the users are in very good radio conditions, then there can be 41 users scheduled in 1 TTI (1 ms) with 3 PDCCH symbols. However, this does not happen because the radio conditions of the users are usually distributed and there are common allocations like TPC (transmit power control) commands which are usually at a bigger aggregation layer since it carries allocations for multiple users. So, if there is one TPC command which takes 8 CCEs then around 33 CCEs are remaining. These CCEs will be divided between downlink and uplink data allocations. Usually, downlink data is more so most of the allocations are taken by downlink. Consider that the users are in good conditions and require 2 CCEs each then there can be 16 users in each TTI (16*2 =32 CCEs) with 3 PDCCH symbols.

Now that the PDCCH structure is out of the way, let’s have a look at the optimization procedures for PDCCH.

As described above, the PDCCH symbol usage can go upto 3. Each subframe has 14 symbols so if PDCCH uses 3 symbols, then the PDSCH will only be able to use 11 symbols. If the PDCCH symbol number is reduced to 1, then the PDSCH symbol count can increase to 13 which is around 15% improvement in throughput or capacity. However, if we change the PDCCH symbol count to 1 then that means that the available PDCCH CCEs will reduce to 8 (300/36=8) since the first symbol has 300 REs available and other 300 REs are used by RS, PCFICH and PHICH. And if we need to transmit a TPC command then it will utilize all the CCEs and we cannot transmit any data allocations.

In order to tackle this, most of the vendors have introduced a dynamic algorithm that changes the PDCCH symbol count with respect to the requirement of the users. If there is data for 6 users and a TPC command, it will use 2 symbols for PDCCH and if there is only 1 user that needs to be scheduled, it will reduce the PDCCH symbol count to 1. Activating this algorithm is the first step to ensure optimum balance between PDCCH and PDSCH.

LTE Throughput Optimization

The PDCCH allocation is mostly based on a BLER target accompanied by a CQI input. If the UE is showing a good CQI, the eNB will allocate a good aggregation layer. For example, the UE reported CQI index 12 which shows that it is in good radio conditions then the eNB will allocate it aggregation layer 2 which uses 2 CCEs. Now, consider that the UE moves away and eNB experiences BLER so the eNB will increase the aggregation layer to 4 to provide more robustness to the PDCCH. However, there is another way to increase the robustness and that is to increase the PDCCH power. Vendors have dynamic power features for PDCCH and if such a feature is used, it will increase the PDCCH power with the same aggregation layer to increase the robustness. This means that the UE will stay with the same aggregation layer using 2 CCEs and since it did not expand to 4 CCEs so there was a gain of 2CCEs or 72 REs which might prevent the eNB to increase the PDCCH symbol from 1 to 2 resulting in an extra symbol for PDSCH.

LTE Throughput Optimization

Another approach is to tune the PDCCH BLER target. If the BLER target is slightly increased, then the eNB will use the same PDCCH aggregation layer for longer and this will reduce expansion of PDCCH resulting in a lower CCE utilization and reduced overhead. However, if the BLER target is increased excessively, the UEs might fail to decode the PDCCH resulting in retransmissions.

Another dimension is the coding rate for the PDCCH aggregation layers. If there is more number of bits in a particular PDCCH allocation, then it might exceed the upper limit of the Aggregation Layer 1. So, the eNB will have to expand to the bigger aggregation layer. This happens because the eNB has a threshold for maximum coding rate per aggregation layer. However, if the maximum coding rate threshold is increased, the eNB will be able to send more bits within the same aggregation layer. This would reduce the transitions to higher aggregation layers and might reduce the overhead. As an example, a transmit diversity allocation uses lesser number of PDCCH bits compared to a Open Loop Spatial Multiplexing (TM3) allocation. So, if a network has Transmit Diversity and it moves to Open Loop Spatial Multiplexing, an increase in aggregation layer will be observed. Similarly, if the network shifts from Open Loop to Closed Loop, another increase in aggregation layer will be observed as Closed Loop MIMO allocations take more number of bits on PDCCH compared to Open Loop MIMO allocations. This can be mitigated by increasing the maximum coding rate threshold for the PDCCH. But increasing it reduces the robustness of the PDCCH and therefore, a balance must be maintained.

The gain of the PDCCH optimization is directly proportional to the utilization and load on the PDCCH. If the network is lightly loaded then most of the time PDCCH will only be using 1 symbol and since that is the minimum number of symbols allocated to PDCCH so there will be no gain with any of the above mentioned changes. If the network is congested and PDCCH is consistently using 3 symbols then such measures can help in reducing the symbols to 2 which can expand the PDSCH or data capacity. However, in all the cases, special care must be taken that this does not increase decoding failures excessively.

In case of any queries or feedback, please drop a comment below and I would love to respond and help.

The following two tabs change content below.

Ali Khalid

5G SME & Solution Architect | NB-IoT | VoLTE | Massive MIMO at Ooredoo Oman
Ali Khalid is a Senior LTE/VoLTE RNPO Expert and 5G Solution Architect who has successfully delivered a number of LTE RNPO Projects in different regions across the globe including Pakistan, Bahrain, UAE, Qatar, Nigeria, Turkey and Oman. In case of any questions or feedback, please feel free to drop a comment below or connect with him on LinkedIn.

61 thoughts on “LTE Throughput Optimization: Part 1 – PDCCH Capacity Enhancement”

  1. “Vendors have dynamic power features for PDCCH and if such a feature is used, it will increase the PDCCH power with the same aggregation layer to increase the robustness.”

    From where additional power is coming from?
    As far as Ericsson PDCCH Dynamic Power Feature is concerned . it takes power from same symbol’s unused PDCCH REs power

          1. Thanks to share a little description like you did in PDCCH.
            With focus how to make dimmensioning and optimisation.
            I work in Nokia LTE FL16A, there is a feature of Dynamic PUCCH but i like to understand it before trying this dynamic feature.
            I have a question regarding the PUCCH position in SubFrame FDD.
            if we put PRACH PRB just one PRB after the PUCCH. Does this PRB (between PUCCH and PRACH could be used by the scheduler in UL or not ? Thanks.

          2. As per my understanding, uplink scheduler can assign single PRB allocations so this PRB can be used. However, since PUSCH needs to be continuous so this user will only get 1 PRB in this allocation.

          3. In Nokia and Huawei as well, schedular can only handle 1 continues region if there is a gap btw pucch and PRB schedular will not use it.

  2. Dear Ali,
    For this purpose in Huawei vendor there are 2 parameters introduces, I would like to know if is there any negative effect of this parameters or not also is there any additional parameter can you recommend for this purpose or not.
    Thanks in Advance
    First One:
    PdcchCapacityImproveSwitch: Indicates whether to enable optimization on PDCCH capacity expansion. For LTE FDD networks, if this parameter is set to ON(On), (1) the initial value for closed-loop adjustment on PDCCH aggregation level applies only to SRBs; (2) if a UE fails to be allocated with CCEs, the eNodeB reallocates CCEs to the UE by increasing the PDCCH power and decreasing the PDCCH aggregation level for the UE. If this parameter is set to OFF(Off), (1) the initial value for closed-loop adjustment on PDCCH aggregation level applies to both SRBs and DRBs; (2) if a UE fails to be allocated with CCEs, the eNodeB does not reallocate CCEs to the UE by increasing the PDCCH power and decreasing the PDCCH aggregation level for the UE. For LTE TDD networks, if this parameter is set to ON(On), the eNodeB reallocates CCEs to a UE, if the UE fails to be allocated with CCEs, by increasing the PDCCH transmit power and decreasing the PDCCH aggregation level for the UE. If this parameter is set to OFF(Off), the eNodeB does not reallocate CCEs to a UE, if the UE fails to be allocated with CCEs, by increasing the PDCCH power and decreasing the PDCCH aggregation level for the UE. This parameter applies only to LTE FDD and LTE TDD.

    Second one is :
    PdcchPowerEnhancedSwitch: Indicates whether to enable enhanced PDCCH power control. If this switch is turned on, the eNodeB selects appropriate PDCCH transmit power based on channel quality to increase PDCCH capacity. This parameter is valid only for FDD, not for TDD.
    If this switch is turned on, the eNodeB selects a lower aggregation level and increases the transmit power to ensure the PDCCH demodulation performance, allow the PDCCH to support more UEs, and increase the uplink and downlink throughput.
    If this switch is turned off, the eNodeB selects a higher aggregation level and the operator needs to configure the transmit power manually. This results in the opposite effects.

    1. I am trying to keep the discussions vendor independent. However, the parameters are in line with the aggregation layer optimization and power enhancements explained in the article. For the first parameter as it says that the closed loop aggregation algorithm only applies to SRBs so in certain cases, the PDCCH allocations for DRBs can have decoding failures.

      1. Which KPI could be degraded in case we have decoding failures of PDCCH allocations for DRB ?
        And which KPI could be enhanced in case PDCCH SRB allocation after enabling the swicth 1?

        1. If you have decoding failures on DRB then that can degrade PDCCH DTX and in extreme cases, it can cause n310 related RLFs resulting in higher drop rate.
          The SRB enhancement is a default algorithm so you won’t see any enhancement on that.

  3. Hi

    Thanks for the informative material. Very well explained !
    Just to mention the Features available in Ericsson for the functionalities mentioned in the Article for the PDCCH aggregation level adjustments
    1) PDCCH Power boost– For increasing the power of the PDCCH REs
    2) Enhanced PDCCH Link Adaptation- For Changing the BLER target
    3) PDCCH Coverage extension- For use of more robust DCI format for downlink assignments in limited RF conditions.

    1. @Swati Singla : Please explain more about below feature, I don’t get what do you mean by limited RF conditions.
      3) PDCCH Coverage extension- For use of more robust DCI format for downlink assignments in limited RF conditions.

    2. Hi Swati
      Thanks for your comment. Actually I am also interested to know about the 3rd feature that you mentioned. DCI formats are already defined so what do you mean by the term “more robust DCI format” – is it like more robust aggregation layer?

      1. Hi Ali,
        It forces the use of DCI format 1A for downlink assignments on the PDCCH in the cases of POOR SINR,
        As it has a smaller size, the coding rate will decrease and hence the coverage improves.

  4. Hi Ali,

    Very nice explanation. i just confused and didn’t understand this line of yours, kindly check .

    Number of REs in one symbol : 50*12 = 600 ”

    if i am not wrong it should be no of sub carriers …


    1. Hi Bimal, you are right that it is number of subcarriers but one RE is one symbol into one subcarrier. So, when I say “REs in ONE symbol” then it means that symbol is constant now so the RE is just a depiction of subcarriers. In short, number of subcarriers is 600 and if we just choose one symbol then the number of REs in that symbol is also 600.

    1. PDCCH is the LTE channel which gives allocations to the User while PDSCH carries the actual data. In simple words, the Users needs to download its data then it needs to know where the data is located. It will get the location of this data by reading the PDCCH and this data location will be on PDSCH.

  5. “Similarly, if the network shifts from Open Loop to Closed Loop, another increase in aggregation layer will be observed as Closed Loop MIMO allocations take more number of bits on PDCCH compared to Open Loop MIMO allocations. ”

    That’s not altogether a bad thing though is it? With CL MIMO your CQI feedback should be improved thus resulting in higher MCS/larger TBS and if not better throughput then better efficiency wouldn’t it?

    1. Exactly, that is not a bad thing at all. Closed loop MIMO usually out-performs Open loop MIMO. Actually I have received this query from many engineers so I just wanted to clarify that transition to closed loop MIMO causes an increase in aggregation layer.

  6. Hi Ali,

    “Excellent post”
    I just want to highlight one practical experience in loaded network where 40% usage of PDCCH agg-8. Even after enabling capacity improved switch , there was no change in User throughput (No change in Bits & TTI ) although got gain in PDCCH Utilization , reduction in CCE-8 Usage , No impact on PDCCH DTX . What are the other factors which can restrict user throughput gain even with gain 1) Reducing Agg layer 2) Reducing CCE blocking ) Maintaining DTX ratio in live network.

    1. Thanks Ajay. The reduction in PDCCH blocking and utilization might not have resulted in a significant reduction in CFI. The increase in throughput is supposed to be linked to the CFI.

  7. Dear
    As you may know that in 3G, we have AC for Power because we have Dedicated channel for SRB and Voice.
    My question is, does we have the issue of power in LTE ? Does there is a AC for power as well ?
    Remember that we have SRB1 and 2 which are using Dedicated Channel (and SRB0 uses CCCH).

  8. In depth analysis Ali, I find this material very deep and useful. Just done digesting it and I make bold to say this is the most descriptive and concise piece I have seen on PDSCH and PDCCH as the most important channels in LTE.

    1. If the power is taken from other channels then it can impact decoding of other channels but if the power is taken from free or unused REs within the same symbol then it should not have an impact

  9. Thanks for this wonderful description. I have one query “how to check coding rate in ericsson system for particular aggregation layer”

  10. Hi Ali,

    very useful topic.
    i have a requirement to modify max CCEs as per PDCCH load from 16 to 8 or vice versa.
    when PDCCH load is above a certain threshold then reduce the max number of CCE allocation from 16 to 8 and this 8 is applied to new calls only. this Requirement says this will help in reducing call drops.

    i. Does it mean that MAC can assign up to 16 CCEs for old calls and 8 for new calls.
    ii. how does this req will help in improving call drop rate


  11. Hi Ali,

    Thanks for the knowledge sharing and congrats for this very pratical and userful topic.

    In terms of radio interface occupation, which resource allocation we should take into account first and why?
    PRB utilization or TTI utilization or CCE utilization?
    I recon that radio condition will have greater influence in all of those, but which one of them will be less effected by the radio condition but still show how much a cell is loaded and why?

    1. There is no single answer for this question as it will vary in different scenarios. For instance, if the users are using FTP or P2P or video streaming, you might get higher utilization on PRB and TTI but CCE might be free. However, if the users are using whatsapp or small packet services like applications with heart-beat signaling, then the CCE utilization might be higher than PRB utilization.

  12. Hi Ali

    Can you share the PDSCH Blocking formula for Erisson
    Also i am getting very low preamble success rate, i am taking below formula and counter

    Preamble success rate= ((‘pmRaSuccCbra'[eCell,Time]+’pmRaSuccCfra'[eCell,Time])/(‘pmRaAttCbra'[eCell,Time]+’pmRaAttCfra'[eCell,Time]))

    is this correct?


  13. hello guys,
    we are facing major issue that cant be simply explained.
    formulas for huawei and nokia seem to be correct.
    but… nokia in 700mhz doesnt seem to achieve good throughput… not even close to 2600mhz huawei…
    anyone thought this could be related to measurement??
    in nokia, throughput formula names IP_TPUT_VOL_DL_QCI_1 and in huawei are bits PDCP SDU (which means received from ip layer… should be identical)
    well i cant explain why nokia seems to be showing low throughput…
    thanks for any words on the matter

    1. Usually, L700 is a coverage layer while L2600 is a capacity layer by default. L2600 should have more bandwidth, higher Tx configuration and much better CQI so with the same number of sites and same topology, L2600 should have much better throughput than L700.

    1. Simplest way used nowadays is to map a TAC to a LAC. With algorithms like precise and intelligent paging, the paging capacity nowadays is not much of an issue on LTE.

  14. What is the minimum resource one User can acquire.

    2 PRBs? 168 REs? How many minimum REs or PDSCH channels can be allocated to a user in 1 SubFrame? How many minimum REs in one Frame? Can multiple users share?
    Therefore what is the Minimum throughput (considering 64 QAM) be allocated to a user.
    In Huawei users in high capacity situations can reach from 1200 to 1800 users per Cell; given higher UBBP/UMPT board in a 20MHz Cell. What would be the minimum throughput one user be getting in this case, lets assume Radio is good and 64 QAM is triggered. Basically we would like to know the scheduling and minimum resource allocation to a user.

    1. Minimum resource for a user is 1 RB in frequency domain and it spans over two slots (1 TTI) in time domain – hence also known as a scheduling block. Users can share the same resources if MU-MIMO is enabled otherwise resources are not shared. Minimum throughput can be calculated using tables provided in 3GPP 36213.

Leave a Reply

Your email address will not be published. Required fields are marked *