LTE-NB : NPDCCH/DCI
If you have been working since the legacy LTE, you would be familiar with the concepts and parameters related to how network notify UE of downlink and uplink resource assignment and you may not need any explanation about the general concept of PDCCH / DCI and you can jump directly in the details. However, if LTE-NB is the first LTE experience, you would need to the basic concept of DCI. For the basic concept, I would suggest you to read the legacy LTE DCI page or at least the first section of the page.
When we are talking about resource allocation mechanism, DCI(Downlink Control Indicator) is the most important part but if you are going a little bit deeper into the implementation of DCI in Transport/Physical layer. You would see a couple of additional parameters that may confuse you in some case.
As in legacy LTE, in LTE-NB as well the DCI is carried by the physical channel called NPDCCH. The basic resource allocation unit for PDCCH is called NCCE. There are two NCCE that are defined as shown below. There are two different types of NPDCCH format (Format 0 and Format 1). NPDCCH Format 0 takes up only one NCCE and NPDCCH format 1 takes up two NCCEs.
DCI(Downlink Control Indicator)
Unlike in LTE, in LTE-NB only three types of DCI (DCI Format N0, N1, N2) as described in 36.212 6.4.3 Downlink control information
DCI Format N0 is for UL Grant. It is equivalent to DCI 0 in normal LTE. Each of the field in DCI format N0 is defined as follows.
DCI Format N1 is for all NPDSCH (user data and SIBs) except NPDSCH carrying Paging and to trigger PRACH(non-contention based). Each of the field in DCI format N0 is defined as follows.
< NPDCCH order = 0, N1 CRC not masked with RA-RNTI >
This is to assign resources for normal NPDSCH
< NPDCCH order = 0, N1 CRC masked with RA-RNTI >
This is to assign resources for NPDSCH for RAR(Random Access Response)
< NPDCCH order = 1 and CRC masked with C-RNTI>
This is to trigger PRACH (in Non-contention based RACH)
DCI format N2 is used for for paging and direct indication and each of the field in this format is as follows.
< Flag = 0 >
< Flag = 1 >
< 36.213 Table 18.104.22.168-1: Allocated subcarriers for NPUSCH with subcarrier spacing = 15 Khz >
< 36.213 Table 22.214.171.124-2: Number of resource units (N_RU) for NPUSCH. >
< 36.213 Table 16.5.1-1: k0 for DCI format N0 >
< 36.213 Table 126.96.36.199-1: Modulation and TBS index table for NPUSCH with N_sc^RU = 1 >
< 36.213 Table 188.8.131.52-2: Transport block size (TBS) table for NPUSCH >
< 36.213 Table 184.108.40.206-3: Number of repetitions (N_Rep) for NPUSCH >
< 36.213 Table 16.4.1-1: k0 for DCI format N1 >
< 36.213 Table 16.4.2-1: ACK/NACK subcarrier and k0 for NPUSCH with Subcarrier Spacing= 3.75KHz >
< 36.213 Table 16.4.2-2: ACK/NACK subcarrier and k0 for NPUSCH with Subcarrier Spacing= 15KHz >
< 36.213 Table 220.127.116.11-1: Number of subframes (N_SF) for NPDSCH >
< 36.213 Table 18.104.22.168-2: Number of repetitions (N_Rep) for NPDSCH >
< 36.213 - 22.214.171.124 Modulation order and transport block size determination >
I_MCS and I_TBS mapping gets different depending on whether the NPDSCH carries SystemInformationBlockType1-NB or User Data as follows.
Always a same I_TBS is used (the value is defined by schedulingInfoSIB1-NB-r13)
I_TBS = I_MCS
In order to detect whether there is any data (NPDSCH) sent for it or detect any UL Grant for NPUSCH, it should monitor (try to decode) various regions within downlink subframes. There is no explicit regions notified by the network about exactly which regions UE need to monitor. UE needs to monitor all the possible regions that are allowed for NPDCCH and decode the information in try-and-error based. This kind of process is called 'blind decoding'. However, UE does not try to decode every possible combinations of resource elements within a subframe. There are a certain set of predefined regions in which a PDCCH can be allocated. UE monitor only those predefined regions. These predefined set of regions are called NPDCCH Search Space.
There are a few types of NPDCCH space as shown below (36.213 - 16.6 Narrowband physical downlink control channel related procedures).
The location of NPDCCH (the subframes transmitting NPDCCH) is determined as follows (described in 36.213-16.6 Narrowband physical downlink control channel related procedures).
NOTE : In case of Type1-NPDCCH common search space, k = k0 and is determined from locations of NB-IoT paging opportunity subframes