# Narrowband Internet of Things (NB-IoT):
## 3 Narrowband-IoT Protocol Stack
### Physical Layer
#### 3.1.3 Channel Estimation and Error Correction  
Like in LTE systems, NB-IoT system performance depends to some extent on the quality of the channel estimation. However, for NB-IoT systems massive deployment, the poor quality of channel estimates is highly influenced by the low complexity of the UEs that can lead to misdetection of some signals, frequency offset, phase noise, passive intermodulation (PIM) on the device level, etc. To address the challenges that affect the channel estimation as well as to improve the quality of error correction to ensure the required performance with the low complexity, several works have proposed some solutions, as summarized in the following paragraphs.  
In [61], the authors presented an NPSS detection method whose timing metric is composed of symbol-wise autocorrelation and a dedicated normalization factor in an in-band downlink NB-IoT system. The authors proposed a novel low-power algorithm for frequency tracking by the use of more pilot signals as compared to the LTE system. Their algorithm is implemented to compensate for the accumulated frequency offset during the NB-IoT transmission of NB-IoT. Their proposed frequency tracking algorithm delivers high estimation efficiency in terms of Minimum Mean Square Error (MMSE), the probability of correct cell acquisition, etc. However, their study did not elaborate on what could be the impact of mobility and inter-RACT support in the cell search procedure for NB-IoT.  
In [62], the authors presented a practical coverage test on the ocean; it is shown that the proposed solution (where the base station decides whether the compensated round trip delay is short or long enough to decode the preamble sequence) was done by considering NPRACH design and hence the authors proposed their solution which considers the TA adjustment. Their proposed solution proved that NB-IoT coverage could reach as far as 35 km. However, the paper does not elaborate on the solution feasibility in environments without line of sight.  
In [63], the work provided optimization cases for NB-IoT downlink in terms of MCS. The work also provided the optimization cases of coverage level (CL) by taking into consideration the RACH success rate with different driving speeds of NB-IoT devices in a commercially deployed network. Their results show that the base station paging success rate is decreased as the adjacent cell interference increases. However, the decrease in MCS improves paging performance. Coverage level 0 is the best choice for NB-IoT use cases that involve mobility, whereas coverage level 1 and 2 are mostly for fixed location NB-IoT use cases.  
In [64], the author presented an iterative algorithm for NB-IoT transmission procedure. The simulation results in terms of BER and blocks error rate (BLER) show that by use of concatenated error correcting codes or cryptographic redundancy and error correcting code, the algorithm improves the NB-IoT coverage and reduces the overall NB-IoT power consumption. The modification of additional correction of low reliable bits could demonstrate the error correction of the damaged messages by the noisy transmission and hence can reduce the repetition number. However, this work did not discuss how effective the algorithm is when taking into consideration different channel conditions, payload sizes, as well as different repetition numbers with respect to device signal quality.  
In [67], the authors considered the presence of random phase noise of the received signals mainly caused by oscillators impairments in both the transmitting and receiving sides and how to lower the mean square error (MSE) estimates. They presented the sequential MMSE channel estimation method that could be implemented in NB-IoT systems. Their model shows that if random phase noise is considered during channel estimation, it is possible to improve the detected SNR by up to 1 dB. However, the model is assumed to be uniformly distributed hence does not present the real-time channel which is randomly changing over time.