scieee AI-readable full text Open interactive document viewer

Report on the development of algorithms for new radio signal demodulation to determine the RF power of the resource grid allocation of new radio signals, inclusive of PSS, SSS and DM-RS contributions and the commissioning of a testbed for SI traceable measurements of the power in dBm of each resource element of the new radio resource grid with target uncertainties of 0.05 dB for conducted tests and 0.5 dB for over-the-air tests

Allal, Djamel

Full text

Confidentiality Status: PU - Public, fully open (remember to deposit public deliverables in a trusted repository) Deliverable Cover Sheet Funded by the European Union. Views and opinions expressed are however those of the author(s) only and do not necessarily reflect those of the European Union or EURAMET. Neither the European Union nor the granting authority can be held responsible for them. The project has received funding from the European Partnership on Metrology, co-financed from the European Union’s Horizon Europe Research and Innovation Programme and by the Participating States. 1 of 189 21NRM03 MEWS D5 Report on the development of algorithms for new radio signal demodulation to determine the RF power of the resource grid allocation of new radio signals, inclusive of PSS, SSS and DM-RS contributions and the commissioning of a testbed for SI traceable measurements of the power in dBm of each resource element of the new radio resource grid with target uncertainties of 0.05 dB for conducted tests and 0.5 dB for over-the-air tests Organisation name of the lead participant for the deliverable: Swiss Federal Institute of Metrology METAS Due date of the deliverable: 30/06/2025 Actual submission date of the deliverable: 18/03/2025 2 of 189 Glossary BPSK: Binary Phase Shift Keying CORESET: Control Resource Set CP: Cyclic Prefix CRB: Common Resource Blocks CRC: Cyclic Redundancy Check DCI: Downlink Control Information DM-RS: Demodulation Reference Signal FDD: Frequency Division Duplex FFT: Fast Fourier Transform IFFT: Inverse Fast Fourier Transform OFDM: Orthogonal Frequency-Division Multiplexing MIB: Master Information Block NR: New Radio PBCH: Physical Broadcast Channel PDCCH: Physical Downlink Control Channel PDSCH: Physical Data Shared Channel PSS: Primary Synchronization Signal QAM: Quadrature Amplitude Modulation QPSK: Quadrature Phase Shift Keying RB: Resource Blocks SCS: Subcarrier Spacing SDL: Supplementary Downlink SIB1: System Information Block Type 1 SSB: Synchronization Signal Block SSS: Secondary Synchronization Signal SS/PBCH: Synchronization Signal and Physical Broadcast Channel TDL: Time Division Duplex UE: User Equipment 21NRM03 MEWS 3 of 189 TABLE OF CONTENTS 1 Summary ................................................................................................................................. 4 2 Algorithm Basics of New Radio Signal Demodulation ............................................................... 5 3 Software Implementation of Demodulation Algorithm ............................................................... 6 3.1 Input ................................................................................................................................... 6 3.2 Function ............................................................................................................................. 6 3.3 Output ................................................................................................................................ 6 3.4 Information on the Software Implementation ...................................................................... 7 4 Testbed for 5G NR Decoding and RF Power Measurements ................................................... 8 5 Testbed for Over-the-air 5G NR Measurements for Decoding and RF Power Detection .......... 9 6 SI-Traceable Calibration of 5G Measuring Receivers ............................................................. 10 7 ANNEX A ............................................................................................................................... 11 8 ANNEX B ............................................................................................................................... 49 9 ANNEX C ............................................................................................................................. 103 10 ANNEX D ............................................................................................................................. 131 11 ANNEX E ............................................................................................................................. 155 21NRM03 MEWS 4 of 189 1 Summary This document describes the full study on decoding RF downlink synchronization signals, whose measured powers are used for SI traceable measurements of 5G signals. The document first explains an algorithm to demodulate New Radio (NR) 5G Downlink transmission signals, including the Primary Synchronization Signal (PSS), Secondary Synchronization Signal (SSS) and Demodulation Reference Signal (DM-RS) as well as Master Information Block (MIB) and System Information Block Type 1 (SIB1) messages in order to retrieve the required information for obtaining the entire 5G NR resource grid. Then, the software developed for RF power detection of New Radio (NR) 5G Downlink transmission signals is explained in detail including the coding on Mathematica. This application assumes the usage in laboratory environments where some predefined settings can be applied on the 5G NR signals under consideration. Moreover, the evaluation of the 5G NR downlink transmission decoding algorithm together with the developed adapted testbed is provided in this document. The verification and the precision of the decoding are studied for different cases of transmission such as different 5G NR frequency range, center frequency, numerology and channel bandwidth using conducted methods. This study is then extended to cover over-the-air measurements. In the final step, using the whole development mentioned previously, the measurement accuracy of two commercially available 5G measuring receivers are studied. The main body of this document describes the overview of each step and all technical details are provided in the reports given in the annexes, which are composed progressively within the course of the project. 21NRM03 MEWS 5 of 189 2 Algorithm Basics of New Radio Signal Demodulation In order to obtain the entire resource grid of 5G NR downlink signals, a blind approach or an approach with some known configuration information can be employed. Both approaches are evaluated and the differences are studied in the project. The important information to decode about the full resource grid is as follows: 1) Physical Cell ID 2) Position of the SSB in resource grid 3) Bandwidth of the transmission (i.e. channel bandwidth) 4) Subcarrier spacing of the data transmission (i.e. transmission numerology) The algorithm proposed in this document consists of 8 steps as follows: 1. Detection of the frequency of SSB 2. Search and Detect PSS 3. Search and Detect SSS and Calculate Physical Cell ID 4. Transmission Channel Equalization 5. Search and Detect DM-RS for PBCH 6. Demodulate and Decode PBCH to obtain the MIB message 7. Interpretation of MIB message 8. Demodulating PDCCH and Decode DCI to obtain SIB1 information It is important to note that this algorithm is applicable to a 5G NR downlink signal recording in baseband for a duration of at least 20 ms (i.e. to cover at least one full radio frame). Each step of the algorithm enriched with some examples is explained in Annex A in detail. 21NRM03 MEWS 6 of 189 3 Software Implementation of Demodulation Algorithm The software implementation of the demodulation algorithm is explained in Annex B in detail. Just as an overview, the flowchart of the implementation can be depicted as follows: Figure 1. Flowchart of software implementation 3.1 Input This software can be used for a measurement setup where in-phase and quadrature (I and Q) data can be obtained for an IF band 5G NR downlink transmission recording. The input file having the file format such as ".csv" is to be input in the software. The input file must be a recording of the length of 20 ms so that it can include one full radio frame even in the worst case. 3.2 Function The function "nrDecode" is implemented on Mathematica and defines the sequence of following procedures for decoding (which is a version of the given sequence in the report A3.1.2 "An Algorithm to Demodulate 5G New Radio Signals" in Section 3). 1. Search and Detect PSS 2. Search and Detect SSS and Calculate Physical Cell ID 3. Transmission Channel Equalization 4. Search and Detect DM-RS for PBCH 5. Calculate the power of all resource elements 6. Save the information in to a file 3.3 Output The output file has ".csv" file format and lists the measured RF power of all resource elements (REs). 21NRM03 MEWS 7 of 189 3.4 Information on the Software Implementation The software implementation given in Annex B has the following structure: Section 4.1 in Annex B lists the 5G NR configuration for the selected 1. numerology 2. frequency range (FR1 or FR2) 3. carrier frequency 4. channel bandwidth 5. IF Frequency 6. Filter Cut-off Frequency (to limit the noise) Section 4.2 in Annex B is devoted for the determination of the critical transmission parameters, which are automatically calculated according to the configuration selected in Section 4.1. Section 4.3 in Annex B lists all sub-functions used in the main function "nrDecode". Section 4.4 in Annex B shows the implementation of "nrDecode". Section 4.5 in Annex B is the implementation of the flowchart given in Figure 1. Section 4.6 in Annex B lists additional functions to retrieve information from MIB and SIB1 messages about the kSSB and offsettoPointA. 21NRM03 MEWS 8 of 189 4 Testbed for 5G NR Decoding and RF Power Measurements The testbed for the demodulation of 5G NR downlink transmission to detect the RF power of signals of interest consists of two modules: Hardware and Software Modules (See Figure 2). Figure 2. Block Diagram of the Measurement Setup In Annex C, each of these modules are explained in detail. Moreover, the verification and the precision of the decoding are studied for 4 different cases of transmission (defined as scenarios) such as different 5G NR frequency range, center frequency, numerology and channel bandwidth. Moreover, the robustness of the RF power detection is also studied by applying 19 different fading scenarios to the 5G NR transmission signals. With the help of these 23 scenarios, all the aspects of the decoding algorithm could be examined. Additionally, the SI-traceability of the measurements is also established using a calibrated components and the corresponding measurement uncertainty is estimated. The results in Annex C show that the goal uncertainty of 0.05 dB is reached. Oscilloscope LO RF Mixer Low-pass Filter Hardware Module DSP Software Module Power Analysis 5G Input Signal 21NRM03 MEWS 9 of 189 5 Testbed for Over-the-air 5G NR Measurements for Decoding and RF Power Detection In Annex D, the study is extended to traceable, over-the-air measurements of 5G downlink transmission signal. As an overview, the block diagram of the measurement setups for FR1 and FR2 are given in Figure 3 and Figure 4, respectively. Figure 3. Final Measurement Setup for FR1 Figure 4. Final Measurement Setup for FR2 The verification and the precision of the decoding are repeated for the over-the-air measurements together with the study on SI-traceability and the estimation of the measurement uncertainty. Together with all the steps for the development, it is shown in Annex D that the goal uncertainty of 0.5 dB is reached. Oscilloscope LO RF Mixer Low-pass Filter Hardware Module 5G Generator Power Meter Power Splitter -6 dB Transmitting Antenna Receiving Antenna Oscilloscope LO (Down-mixing) RF Down-mixer Low-pass Filter Hardware Module 5G Generator Power Meter Power Splitter -6 dB LO (Up-mixing) RF Up-mixer Transmitting Antenna Receiving Antenna 16/189 List of Figures Figure 1. OFDM symbol structure of length NFFT ....................................................................... 22 Figure 2. Example output of correlation for different 𝑁𝐼𝐷(2) with 8 SSBs ................................. 23 Figure 3. Example output of correlation for different 𝑁𝐼𝐷(1) and the position within the recorded samples .................................................................................................................................... 25 Figure 4. Phase correction based on measurement vs. MMSE-based estimation ..................... 27 Figure 5. 4-QAM data symbols obtained after equalization ....................................................... 28 Figure 6. Average power P of selected symbols ....................................................................... 28 Figure 7. 4-QAM Demodulation ................................................................................................ 30 Figure 8. Processing BCH data to obtain PBCH (All the steps are given with the corresponding standard references) ................................................................................................................. 31 Figure 9. Locations of PDCCH, PSS, SSS and PBCH in the resource grid for given example .. 38 Figure 10. Processing PDCCH to obtain DCI (All the steps are given with the corresponding standard references) ................................................................................................................. 39 Figure 11. Processing of DCI to obtain SIB1 Data .................................................................... 40 Figure 12. SIB1 message format and location of OffsetToPointA [5, Chapter 6.2.2] ................. 41 Figure 13. Constellation diagram if the equalization is not performed ....................................... 44 Figure 14. Unsuccessful phase correction ................................................................................ 44 Figure 15. Data symbols in the complex plane if frequency synchronization is not successful .. 45 Figure 16. Flexible Frequency Domain Resource Usage by CORESETs [9] ............................. 46 Figure 17. Illustration of different aggregation levels [10] .......................................................... 47 Figure 18. Different possible aggregation levels and their positions in the resource grid [10] .... 48 17/189 1 Introduction This document describes an algorithm to demodulate New Radio (NR) 5G Downlink transmission signals, including the Primary Synchronization Signal (PSS), Secondary Synchronization Signal (SSS) and Demodulation Reference Signal (DM-RS) as well as Master Information Block (MIB) and System Information Block Type 1 (SIB1) messages in order to retrieve the required information for obtaining the entire 5G NR resource grid. 18/189 2 Abbreviations CORESET: Control Resource Set CP: Cyclic Prefix CRB: Common Resource Blocks CRC: Cyclic Redundancy Check DCI: Downlink Control Information DM-RS: Demodulation Reference Signal FFT: Fast Fourier Transform IFFT: Inverse Fast Fourier Transform OFDM: Orthogonal Frequency-Division Multiplexing MIB: Master Information Block PBCH: Physical Broadcast Channel PDCCH: Physical Downlink Control Channel PDSCH: Physical Data Shared Channel PSS: Primary Synchronization Signal QAM: Quadrature Amplitude Modulation QPSK: Quadrature Phase Shift Keying RB: Resource Blocks SCS: Subcarrier Spacing SIB1: System Information Block Type 1 SSB: Synchronization Signal Block SSS: Secondary Synchronization Signal SS/PBCH: Synchronization Signal and Physical Broadcast Channel UE: User Equipment 19/189 3 Algorithm Basics In order to obtain the entire resource grid of 5G NR downlink signals, a blind approach or an approach with some known configuration information can be employed. In this document, both approaches are evaluated and the differences are explained. The important information to decode about the full resource grid is as follows: 1) Physical Cell ID 2) Position of the SSB in resource grid 3) Bandwidth of the transmission (i.e. channel bandwidth) 4) Subcarrier spacing of the data transmission (i.e. transmission numerology) The algorithm proposed in this document consists of 8 steps as follows: 1. Detection of the frequency of SSB 2. Search and Detect PSS 3. Search and Detect SSS and Calculate Physical Cell ID 4. Transmission Channel Equalization 5. Search and Detect DM-RS for PBCH 6. Demodulate and Decode PBCH to obtain the MIB message 7. Interpretation of MIB message 8. Demodulating PDCCH and Decode DCI to obtain SIB1 information It is important to note that this algorithm is applicable to a 5G NR downlink signal recording in baseband for a duration of at least 20 ms (i.e. to cover at least one full radio frame). Each step will be followed in the next sections. Note: It is advisable to read first [1] before this document as the basics of 5G NR signals and corresponding important parameters are explained there. 20/189 4 Detection of the frequency of SSB Before tuning to the frequency of Synchronization Signal Block (SSB), one critical parameter to obtain is the subcarrier spacing (SCS) of the SSB. During the cell search, SCS of SSB for an operating band is given and must be applied correctly (See Annex B of [1]). After the SCS of SSB is decided, the possible center frequency of SSB is to be found. As given in Chapter 6.2 in [1], 5G NR employs a grid structure for the center frequency of the SSB. The Global Synchronization Channel Number (GSCN) is defined to describe the exact position of the SSB. Table 5.4.3.3-1 of ETSI TS 138 104 lists all possible SCSs for SSB and Range of GSCNs for all operating bands [2]. When a blind approach (i.e., standalone synchronization) is used, a lookup table of the possible frequency of SSB can be prepared for any given NR operating band [1]. Since the whole SSB should be within the bandwidth of the operating band, the possible center frequencies that cannot satisfy this requirement, are also removed from the list [1]. By searching for PSS (explained in Section 5) on the remaining frequencies and detecting the highest correlation, the frequency of the SSB can be determined. This step is otherwise omitted if the configuration is known, which is typically the case for the tests in a laboratory environment. 21/189 5 Searching and Detecting PSS The successful detection of PSS can be obtained by applying the following steps to the signal recording: 1) Generation of all PSS sequences 2) Deciding on the FFT size 3) Mapping to the subcarriers 4) Obtaining time domain candidate signals 5) Applying correlation to the signal record 6) Applying the time synchronization 5.1 Generation of all PSS sequences As mentioned in Chapter 7.2 in [1], the sequence to define PSS can have three possible values. Each of these sequences of length of 127 must be correctly generated. 5.2 Deciding on the FFT Size Before mapping to the subcarriers, the Fast Fourier Transform (FFT) size (NFFT) must be defined. As explained in Chapter 3.1 in [1], OFDM time symbols are generated using Inverse FFT (IFFT) and the size of this transform is crucial. For different operating bands and numerologies, the suggested FFT sizes are given in Chapter 5.4 in [1]. 5.3 Mapping PSS to the subcarriers As given in Chapter 6.1 in [1], PSS is located in OFDM symbol number 0 (relative to the start of an SS/PBCH block) on the subcarriers having indexes from 56 to 182. Therefore, the generated sequences in Section 5.1 must be mapped on the corresponding subcarriers in ascending order. The subcarriers with indexes 0 to 55 and 183 to 239 on this OFDM symbol are set to 0 [1]. These 240 values are assigned to the 240 subcarriers centered around the mid of NFFT, completing the subcarrier mapping. The generated OFDM symbol of length NFFT is depicted in Figure 1. Such generation of OFDM symbols should be repeated for each possible PSS sequence. 22/189 n=NFFT-1 . . . . . . . . . . n=NFFT/2+61 n=NFFT/2+60 n=NFFT/2+59 . . . . . . PSS . . . . Set to 0 . . . . . . n=NFFT/2-63 n=NFFT/2-64 n=NFFT/2-65 . . . . . . n=2 n=1 n=0 Figure 1. OFDM symbol structure of length NFFT 23/189 5.4 Obtaining possible PSS signals in time domain For each OFDM symbol obtained in Section 5.3, IFFT is applied and the time domain signals are obtained. 5.5 Applying correlation to signal record The signals obtained in Section 5.4 must be correlated with the recorded signal. The index of the possible PSS signal with the highest correlation value gives the information on 𝑁𝐼𝐷 (2) , which is required to calculate Physical Cell ID. Moreover, the sample with the highest correlation value shows the start of the PSS symbol, which accomplishes the timing synchronization. An example is shown in Figure 2 for the case of 8 SSBs. 𝑁𝐼𝐷 (2) =0 yields the highest correlation values with 8 peaks, indicating the start of PSSs in every SSB. Figure 2. Example output of correlation for different 𝑁𝐼𝐷 (2) with 8 SSBs 5.6 Applying time synchronization The first sample with the highest peak in Section 5.5 marks the start of OFDM Symbol 0 relative to the SS/PBCH block under concern. According to Table 15 in [1], this symbol can have either the index 2 or 4 for Case A & Case C and Case B, respectively. Assuming this symbol has either the index 2 or 4 in the recording, the recorded samples before the symbol having index 0 can therefore be discarded so that only the radio frame with full recoverable information is further processed. In this way, the timing synchronization is achieved. Samples (k) Samples (k) Samples (k) Correlation Correlation Correlation 𝑁𝐼𝐷 (2) 𝑁𝐼𝐷 (2) 1 𝑁𝐼𝐷 (2) 2 24/189 6 Searching and Detecting SSS and Calculating Physical Cell ID After successful detecting 𝑁𝐼𝐷 (2) and achieving timing synchronization, SSS can be detected by applying the following steps to the signal recording, in a similar way to PSS: 1) Generation of all SSS sequences based on detected 𝑁𝐼𝐷 (2) 2) Mapping to the subcarriers 3) Obtaining time domain candidate signals 4) Applying correlation to signal record to get 𝑁𝐼𝐷 (1) 5) Calculating physical cell ID 6.1 Generation of all SSS sequences based on detected 𝑵𝑰𝑫 (𝟐) As mentioned in Chapter 7.3 in [1], the sequence to define the PSS can have 1008 (336 × 3) possible values. Once 𝑁𝐼𝐷 (2) is detected, the selection narrows down to 336. Each of these 336 sequences having a length of 127 must be correctly generated. 6.2 Mapping to the subcarriers Mapping to the subcarriers is the same as given for PSS in Section 5.3. 6.3 Obtaining time domain candidate signals Obtaining the time domain candidate signals is the same as described for PSS in Section 5.4. 6.4 Applying correlation to signal record to get 𝑵𝑰𝑫 (𝟏) The signals obtained in Section 6.3 must be correlated with the recorded signal. Since SSS is placed two symbols after PSS, the start of its exact location after PSS can be calculated as 𝑆𝑆𝑆 𝑆𝑡𝑎𝑟𝑡 𝑆𝑎𝑚𝑝𝑙𝑒 𝑖𝑛𝑑𝑒𝑥 2 ×𝑁𝐹𝐹𝑇 +2 ×𝐶𝑃𝑠ℎ𝑜𝑟𝑡 (1) For 𝑁𝐹𝐹𝑇 4 96, the cyclic prefix for short symbols (𝐶𝑃𝑠ℎ𝑜𝑟𝑡) is equal to 288, which makes 𝑆𝑆𝑆 𝑆𝑡𝑎𝑟𝑡 𝑆𝑎𝑚𝑝𝑙𝑒 𝑖𝑛𝑑𝑒𝑥 8768 samples after PSS. For such a case, a window of 15000 samples shall be taken for correlation calculation. The index of the candidate signal with the highest correlation value gives the information on 𝑁𝐼𝐷 (1). An example is shown in Figure 3. 𝑁𝐼𝐷 (1) value of 83 and the sample at 8768 give the highest correlation. 25/189 Figure 3. Example output of correlation for different 𝑁𝐼𝐷 (1) and the position within the recorded samples 6.5 Calculating physical cell ID Physical Cell ID is calculated as 𝑁𝐼𝐷 𝑐𝑒𝑙𝑙 3×𝑁𝐼𝐷 (1)+ 𝑁𝐼𝐷 (2) (2) For the examples given in Figure 2 and Figure 3, 𝑁𝐼𝐷 𝑐𝑒𝑙𝑙 3×𝑁𝐼𝐷 (1)+ 𝑁𝐼𝐷 (2) 3×83+ 249 (3) This procedure can be repeated, when needed, for each SS/PBCH block for beam sweeping. Correlation 𝑁𝐼𝐷 (1) Correlation Samples (k) 32/189 In order to obtain MIB Message, the following steps can be followed: 1) Descrambling of PBCH 2) Rate matching removal 3) Channel Decoding 4) Removing checksum 5) Descrambling 6) Obtaining payload BCH data 9.1 Descrambling of PBCH [3, Chapter 7.3.3.1] The output sequence of Section 8.5 𝑏 ( ),𝑏 (1),…,𝑏 (𝑀𝑏𝑖𝑡 −1) of length 864 is scrambled according to Chapter 7.3.3.1 in [3]. It must be descrambled accordingly. Please see the details in [3] Chapter 7.3.3.1 for the implementation. The output of this section is denoted as 𝑏( ),𝑏(1),…,𝑏(𝑀𝑏𝑖𝑡 −1). It is denoted as 𝑓 ,𝑓1,…,𝑓 −1 for 𝐸 864. 9.2 Removal of the rate matching [4, Chapter 7.1.5] Rate matching is applied to increase the series length from 512 to 864. Chapter 7.1.5 in [4] explains the details of the rate-matching implementation. The reversal of this procedure must be accomplished to obtain the sequence 𝑑 ,𝑑1,…,𝑑 −1 for 𝑁 512. 9.3 Channel Decoding [4, Chapter 7.1.4] Channel coding is based on polar coding. This complex procedure is given in Chapter 7.1.4 in [4]. To obtain the decoded channel information, this procedure must be reversed. The implementation details are not given here. Please refer to the reference mentioned above for details. The output of this step is denoted as , 1,…, −1 for 𝐾 56. 9.4 Checksum Removal [4, Chapter 7.1.3] A checksum based on Cyclic Redundancy Check (CRC) is placed in the sequence , 1,…, −1. The calculation principles are given in Chapter 7.1.3 in [4]. The first 32 bits of the sequence , 1,…, −1 are the payload whereas the last 24 bits belong to CRC. Therefore, this part has to be removed to obtain the sequence 𝑎 ,𝑎 1,…,𝑎 −1 for 𝐴 32. 9.5 Descrambling [4, Chapter 7.1.2] Referring to Chapter 7.1.2 in [4], the sequence 𝑎 ,𝑎 1,…,𝑎 −1 must undergo the corresponding descrambling so that the sequence 𝑎 ,𝑎1,…,𝑎 −1 can be obtained. 33/189 9.6 Obtaining the Payload (i.e. MIB Message) [4, Chapter 7.1.1] The sequence 𝑎 ,𝑎1,…,𝑎 −1 is the output of one last interleaving, whose details are given in Chapter 7.1.1 in [4]. The output sequence 𝑎 ,𝑎 1,…,𝑎 −1 for 𝐴 32 is the MIB Message. Its interpretation is given in the next chapter. 34/189 10 Interpretation of MIB Message 10.1 Structure of MIB Message [5, Chapter 6.2.2] The bit mapping of the MIB Message is as follows: Part of the Message Length (bits) Type Explanation 𝑎 ,𝑎 1,…,𝑎 5,𝑎 24,𝑎 25,𝑎 26,𝑎 27 10 Integer System Frame Number 𝑎 6 1 Enumarated Subcarrier spacing common 𝑎 7,𝑎 8,𝑎 9,𝑎 1 ,𝑎 29,𝑎 3 ,𝑎 31 7 Integer SSB subcarrier offset 𝑎 11 1 Enumerated DMRS Type A position 𝑎 12,𝑎 13,…,𝑎 19 8 Integer PDCCH config SIB1 𝑎 2 1 Enumerated Cell Barred 𝑎 21 1 Enumarated Intrafreq Reselection 𝑎 22 1 Bit String Spare 𝑎 23 1 Enumarated BCCH-BCH Message Type Indication 𝑎 28 1 Enumarated Half frame bit Table 1. Components of MIB message and their explanations The explanations of the relevant components of MIB message are as follows: • System Frame Number: It provides the current System Frame Number (SFN). 6 Most Significant Bits (MSB) are given for the first 6 bits. It is listed in Table 1 together with the remaining 4 LSB. • Subcarrier Spacing Common: It defines the subcarrier spacing to be used for the reception of SIB 1. "0" means the subcarrier spacing of SIB1 is either 15 kHz for FR1 and 60 kHz for FR2. "1" means the subcarrier spacing of SIB1 is either 30 kHz for FR1 or 120 kHz for FR2. • SSB subcarrier Offset: The subcarrier offset 𝑘𝑆𝑆𝐵. It is important to note that if 𝑘𝑆𝑆𝐵 is larger than 23, SIB1 message is not present. • DMRS Type A position: It specifies the first symbol used by the Demodulation Reference Signal (DMRS) when using ‘Mapping Type A’. This information element is applicable to the DMRS for both the PDSCH and PUSCH. "0" means Position 2. "1" means Position 3. • Cell Barred: A UE is not permitted to complete cell selection nor cell reselection onto a cell which is barred so this column is to indicate the "cellbarred" (Value "0") or "notbarred" (Value "1"). • IntraFreq Reselection: This is applicable when the current cell is to be treated as barred. A value of ‘allowed’ (i.e. Value "0") indicates that the UE is permitted to reselect another cell on the same frequency. • PDCCH config SIB1: This field is used to configure Control Resource Set 0 (CORESET#0) and search space#0 (of the initial BWP) which is the most important information the UE 35/189 should know in order to monitor for scheduling (PDCCH) of SIB1 (See next section). 10.2 PDCCH config SIB1 It is a message consisting of 8 bits. 4 MSBs are called ControlResourceSetZero and define a CORESET for each of the following cases: Case SSB SCS (kHz) PDCCH SCS (kHz) Min BW (MHz) [7] Table [6] 1 15 15 5 38.213 – Table 13-1 2 15 30 5 38.213 – Table 13-2 3 30 15 5 or 10 38.213 – Table 13-3 4 30 30 5 or 10 38.213 – Table 13-4 5 30 15 40 38.213 – Table 13-5 6 30 30 40 38.213 – Table 13-6 7 120 60 N/A 38.213 – Table 13-7 8 120 120 N/A 38.213 – Table 13-8 9 240 60 N/A 38.213 – Table 13-9 10 240 120 N/A 38.213 – Table 13-10 Table 2. Lookup table for different SCS cases (See [6] and [7] for details) The 4 LSBs are called SearchSpaceZero and determine PDCCH Monitoring Occasion for each of the following cases: Case CORESET Multiplexing Pattern Frequency Range SSB SCS (kHz) PDCCH SCS (kHz) Table [6] 1 Pattern 1 FR1 N/A N/A 38.213 – Table 13-11 2 Pattern 1 FR2 N/A N/A 38.213 – Table 13-12 3 Pattern 2 N/A 120 60 38.213 – Table 13-13 4 Pattern 2 N/A 240 120 38.213 – Table 13-14 Table 3. Lookup table for different CORESET Multiplexing Patterns, Frequency Ranges and SCSs for SSB and PDCCH To illustrate the interpretation, an example is given in the following paragraph. Ex: Given SSB SCS = 30 kHz, PDCCH SCS = 30 kHz, PDCCH config SIB1 = 0 (i.e. "00000000") and the operation band is n78. The SCSs of SSB and PDCCH yield cases 4 or 6 in Table 2. From [7] Table 5.3.5-1, the minimum bandwidth for the operation band n78 is 10 MHz. Therefore, the selection would be the Case 4 from Table 2. In this case, Table 13-4 of [6] must be considered (See Table 4). 36/189 Index SS/PBCH block and CORESET Multiplexing Pattern Number of RBs 𝑵𝑹𝑩 𝑪𝑶𝑹𝑬𝑺𝑬𝑻 Number of Symbols 𝑵𝒔𝒚𝒎𝒃 𝑪𝑶𝑹𝑬𝑺𝑬𝑻 Offset (RBs) 0 1 24 2 0 1 1 24 2 1 2 1 24 2 2 3 1 24 2 3 4 1 24 2 4 5 1 24 3 0 6 1 24 3 1 7 1 24 3 2 8 1 24 3 3 9 1 24 3 4 10 1 48 1 12 11 1 48 1 14 12 1 48 1 16 13 1 48 2 12 14 1 48 2 14 15 1 48 2 16 Table 4. Table 13-4 of 38.213 [6] As the PDCCH config SIB1 message is 0, its 4 MSBs (i.e. ControlResourceSetZero) are also "0000", giving the index 0 to be looked up in Table 4. This means, for the given case: Parameter Value SS/PBCH block and CORESET Multiplexing Pattern 1 Number of RBs (𝑁𝑅𝐵 𝐶𝑂𝑅 𝑆 𝑇) 24 Number of Symbols (𝑁𝑠𝑦𝑚𝑏 𝐶𝑂𝑅 𝑆 𝑇) 2 Offset (RBs) 0 Table 5. Detected values for the given example As the SS/PBCH block and CORESET Multiplexing Pattern are found out to be 1 and the operation band n78 is in FR1, this corresponds to the Case 1 in Table 3. In this case, the table 13-11 of [6] must be considered. As the PDCCH config SIB1 message is 0, its 4 LSBs (i.e. SearchSpaceZero) are also "0000", giving the index 0 to be looked up in Table 6. 37/189 Index 𝑂 Number of search space sets per slot 𝑀 First symbol index 0 0 1 1 0 1 0 2 1/2 {0, if i is even}, { 𝑁𝑅𝐵 𝐶𝑂𝑅 𝑆 𝑇, if i is odd} 2 2 1 1 0 3 2 2 1/2 {0, if i is even}, { 𝑁𝑅𝐵 𝐶𝑂𝑅 𝑆 𝑇, if i is odd} 4 5 1 1 0 5 5 2 1/2 {0, if i is even}, { 𝑁𝑅𝐵 𝐶𝑂𝑅 𝑆 𝑇, if i is odd} 6 7 1 1 0 7 7 2 1/2 {0, if i is even}, { 𝑁𝑅𝐵 𝐶𝑂𝑅 𝑆 𝑇, if i is odd} 8 0 1 2 0 9 5 1 2 0 10 0 1 1 1 11 0 1 1 2 12 2 1 1 1 13 2 1 1 2 14 5 1 1 1 15 5 1 1 2 Table 6. Table 13-11 of 38.213 [6] In this case, the PDCCH carrying SIB1 has the following relevant parameters: Parameter Value First Symbol Index 0 Number of RBs (𝑁𝑅𝐵 𝐶𝑂𝑅 𝑆 𝑇) 24 Number of Symbols (𝑁𝑠𝑦𝑚𝑏 𝐶𝑂𝑅 𝑆 𝑇) 2 Offset (RBs) 0 Table 7. Parameters for PDCCH in the resource grid for the given example PDCCH is located on the OFDM symbol index number 0, its length is 24 RBs (i.e. 288 subcarriers) in the frequency domain and 2 symbols in the time domain. It has 0 RBs offset relative to SSB. In such a case, the location of PDCCH in the resource grid is given in Figure 9. 38/189 Figure 9. Locations of PDCCH, PSS, SSS and PBCH in the resource grid for given example The location of PDCCH is found (on symbols 0 and 1, each having 24 RBs and offset being 0 relative to the SSB) and can be processed further to obtain the SIB1 Message. Frequency Time …… 39/189 11 Demodulating PDCCH and Decode DCI to obtain SIB1 Information The time and frequency domain location of PDCCH is determined in Chapter 10. PDCCH also includes Demodulation Reference Signals (DM-RS) incorporated into some of its subcarriers. The generation of this DM-RS and mapping to the resources are given in [3] Chapter 7.4.1.3. The DM-RS must be removed to obtain only the information bits. PDCCH carries CORESET0. See Annex B for a better understanding of the structure of CORESETs in general. 11.1 Obtaining DCI Message CORESET0 bits denoted as 𝑏 ( ), 𝑏 (1),…,𝑏 (𝑀𝑏𝑖𝑡 −1) must be processed to obtain the Scheduling data (i.e. DCI Data). The steps are given in the flowchart depicted in Figure 10. Figure 10. Processing PDCCH to obtain DCI (All the steps are given with the corresponding standard references) DCI is a very critical message carrying essential messages. It can carry the information to schedule Downlink Data (PDSCH) and Uplink Data (PUSCH) and also to adjust Uplink Power (PUSCH, PUCCH power) for power control. It has different types which can be used for various purposes (See [4] Table 7.3.1-1 for DCI 1. Descrambling 38.211 –7.3.2.3 2. Rate Matching Removal 38.212 –7.3.4 4. Checksum Removal 38.212 –7.3.2 3. Channel Decoding 38.212 –7.3.3 5. Demultiplexing 38.212 –7.3.1 𝑏  ,𝑏 1 ,…,𝑏 𝑀𝑏𝑖𝑡 −1 𝑓 ,𝑓1,…, ,𝑓 −1 b ,𝑏 1 ,…,𝑏 𝑀𝑏𝑖𝑡 −1 𝑑 ,𝑑1,…, ,𝑑 −1 , 1,…, , −1 𝑎 ,𝑎1,…, ,𝑎 −1 DCI Data 40/189 Formats). For SIB1, the DCI format "Format 1_0" scrambled with SI_RNTI (given as 65535 in Table 7.1-1 of [8]) is employed. 11.2 Decoding DCI to obtain SIB1 and OffsetToPointA In order to obtain the SIB1 message and therefore OffsetToPointA, first, the configuration of the Physical Data Shared Channel (PDSCH) is obtained. After that, the flowchart given in Figure 11 can be followed to obtain the SIB1 message: Figure 11. Processing of DCI to obtain SIB1 Data SIB1 message contains large amount of data regarding different parameters. In order to obtain OffsetToPointA, the following chart can be followed (see Figure 12): 1. Mapping from PRB to VRB 38.211 –7.3.1.6 2. Demapping from VRB 38.211 –7.3.1.5 6. Code Block Deconcatenation 38.212 –7.2.6 3. Removalof AntennaPort Mapping 38.211 –7.3.1.4 7. Removalof Rate Matching 38.212 –7.2.5 4. Removalof Layer Mapping 38.211 –7.3.1.3 5. Descrambling 38.211 –7.3.1.1 8. Channel Decoding 38.212 –7.2.4 9. Removalof Code Block Segmentation and CRC 38.212 –7.2.3 10. Removalof LDPC based graph selection 38.212 –7.2.2 11. Removalof CRC 38.212 –7.2.1 SIB1 Data 41/189 Figure 12. SIB1 message format and location of OffsetToPointA [5, Chapter 6.2.2] After decoding the SIB1 message, the component corresponding to OffsetToPointA can be obtained and the size of the full resource grid can be detected. cellSelectionInfo cellAccessRelatedInfo connEstFailureControl si-SchedulingInfo servingCellConfigCommon ims-EmergencySupport eCallOverIMS-Support ue-TimersAndConstants uac-BarringInfo useFullResumeID downlinkConfigCommon uplinkConfigCommon supplementaryUplink n-TimingAdvanceOffset ssb-PositionsInBurst ssb-PeriodicityServingCell tdd-UL-DL-ConfigurationCommon ss-PBCH-BlockPower frequencyInfoDL initialDownlinkBWP bcch-Config pcch-config frequencyBandList offsetToPointA scs-SpecificCarrierList SIB1 servingCellConfigCommon downlinkConfigCommon frequencyInfoDL 48/189 Figure 18. Different possible aggregation levels and their positions in the resource grid [10] Federal Institute of Metrology METAS 49/189 ANNEX B 21NRM03 MEWS - Metrology for emerging wireless standards Software Implementation of RF Power Detection of 5G NR Downlink Transmission Signals 50/189 Author: Emrah Tas Federal Institute of Metrology METAS Lindenweg 50 3003 Bern-Wabern 21NRM03 MEWS Activity number: A3.1.3 Version: 1.1 Date: December 22, 2023 51/189 Table of Contents 1 Introduction ................................................................................................................... 52 2 General Structure of the Software Implementation ........................................................ 53 2.1 Input ...................................................................................................................... 53 2.2 Function ................................................................................................................. 53 2.3 Output .................................................................................................................... 53 3 Information on the Software Implementation ................................................................. 54 4 Software Implementation .............................................................................................. 55 52/189 1 Introduction This document describes the software developed for RF power detection of New Radio (NR) 5G Downlink transmission signals and gives the detailed coding on Mathematica. This software is the implementation of the algorithm defined in the activity A3.1.2, which is explained in detail in the document "An Algorithm to Demodulate 5G New Radio Signals" (available on the project share). Therefore, when needed, the reader is advised to consult that document for detailed explanation. 53/189 2 General Structure of the Software Implementation The flowchart of the software implementation is as follows: Figure 1. Flowchart of software implementation 2.1 Input This software can be used for a measurement setup where in-phase and quadrature (I and Q) data can be obtained for an IF band 5G NR downlink transmission recording. The input file having the file format such as ".csv" is to be input in the software. The input file must be a recording of the length of 20 ms so that it can include one full radio frame even in the worst case. 2.2 Function The function "nrDecode" is implemented on Mathematica and defines the sequence of following procedures for decoding (which is a version of the given sequence in the report A3.1.2 "An Algorithm to Demodulate 5G New Radio Signals" in Section 3). 1. Search and Detect PSS 2. Search and Detect SSS and Calculate Physical Cell ID 3. Transmission Channel Equalization 4. Search and Detect DM-RS for PBCH 5. Calculate the power of all resource elements 6. Save the information in to a file 2.3 Output The output file has ".csv" file format and lists the measured RF power of all resource elements (REs). 54/189 3 Information on the Software Implementation The software implementation given in Section 4 has the following structure: Section 4.1 lists the 5G NR configuration for the selected 1. numerology 2. frequency range (FR1 or FR2) 3. carrier frequency 4. channel bandwidth 5. IF Frequency 6. Filter Cut-off Frequency (to limit the noise) Section 4.2 is devoted for the determination of the critical transmission parameters, which are automatically calculated according to the configuration selected in Section 4.1. Section 4.3 lists all sub-functions used in the main function "nrDecode". Section 4.4 shows the implementation of "nrDecode". Section 4.5 is the implementation of the flowchart given in Figure 1. Section 4.6 lists additional functions to retrieve information from MIB and SIB1 messages about the kSSB and offsettoPointA. Note: Subfunction in 4.3.17.2 in the implementation requires an additional file for the polar decoding. This is also provided in the project share as "PolarSequenceQ.csv". 4 Software Implementation 4 Software 4.1. Configuration  Numerology  numerology 1;  For FR1, numerology 0 and 1 is supported for cell search. For FR2, only numerology 3 or higher is supported See TS 138.213 Chapter 4.1 Frequency Range nrFR 1;  1 is FR1, 2 is FR2. Important: FR2 only supports BW 50 MHz or higher  Operating Band  nrOperatingBand "n78"; Carrier Frequency nrFcar 3500; MHz Channel Bandwidth nrCHBW 20 M; IF Frequency nrIntermediateFrequency 30 10^6; Filter CutOff Frequency nrFilterCutOffFrequency nrCHBW; 4.2. Parameter Definitions If  numerology  2, Print  "Numerology 2 is not supported for Cell Search"   ; nrSCS 15 000 2^numerology; lengthRB 12; Subcarriers guardbandsscs15  242.5 k, 312.5 k, 382.5 k, 452.5 k, 522.5 k, 592.5 k, 552.5 k, 692.5 k; guardbandsscs30  505 k, 665 k, 645 k, 805 k, 785 k, 945 k, 905 k, 1045 k; guardbandsscs60  0, 1010 k, 990 k, 1330 k, 1310 k, 1290 k, 1610 k, 1570 k; bandwidhthlist  5 M, 10 M, 15 M, 20 M, 25 M, 30 M, 40 M, 50 M; indexfound Positionbandwidhthlist, nrCHBW11; guardbandfound  Whichnumerology 0, guardbandsscs15indexfound, numerology 1, guardbandsscs30indexfound, numerology 2, guardbandsscs60indexfound; nrNRBSC Floorbandwidhthlistindexfound  2guardbandfound  nrSCS lengthRB;  Number of RB available  55/189 nrNLGSC  Ceiling  guardbandfound  nrSCS  ;  Left guard band  nrFreqHigh nrFcar; IfnrFR 2,  In FR2, our setup supports only 50 MHz Bandwidth with numerology 3 nrNRBSC 32;  For CHBW 50 MHZ and numerology 3 guardbandfound 1900; nrNLGSC Ceilingguardbandfound nrSCS; ; nrNRGSC nrNLGSC 1;Right guard band nrNFFT IfnrFR 1 && numerology 2, 2048, 4096; Selection of FFT number  SSB Start OFDM Symbols according to numerology and carrier frequency WhichnrFreqHigh 3000, PSSindexes Ifnumerology  0, 2, 8, 16, 22,4, 8, 16, 20, nrFreqHigh 3000, PSSindexes Ifnumerology  0, PSSindexes  2, 8, 16, 22, 30, 36, 44, 50,4, 8, 16, 20, 32, 36, 44, 48 ; IfnrFR 2, listn  0, 1, 2, 3, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 18; PSSindexes FlattenMap  28  4, 8, 16, 20&, listn; Lmax LengthPSSindexes; Frame Structure nrSamplingTime 1.0  nrSCS nrNFFT; nrSamplingRate nrSCS nrNFFT; Ts 1 15 000.0 2048;  Reference sampling time required for CP calculations nrK 64; nrSymbolperSlot 14; nrSlotperSubFrame 2^numerology; nrSymbolperSubFrame nrSymbolperSlot nrSlotperSubFrame; nrSubFrameperRadioFrame 10; nrSymbolperRadioFrame nrSymbolperSubFrame nrSubFrameperRadioFrame; nrSlotperRadioFrame nrSlotperSubFrame nrSubFrameperRadioFrame; nrRadioFrameTime 10.0 10^3; nrSubFrameTime nrRadioFrameTime 10; nrSlotTime nrSubFrameTime 2^numerology; nrNumSamplesinRadioFrame nrRadioFrameTime nrSamplingTime; nrNumSamplesinHalfRadioFrame nrNumSamplesinRadioFrame 2; nrSamplesperSubFrame nrSubFrameTime nrSamplingTime; modOrder 2; Modulation Which  modOrder  2, 56/189 nrModulation  "QPSK", modOrder 4, nrModulation "16QAM", modOrder 8, nrModulation "64QAM"; cyclicPrefix 1; Resource Structure WhichcyclicPrefix 1, nrPrefixType "CP"; nrCPtimeforLongSymbs  144 2^numerology  16  Ts; nrCPtimeforotherSymbs  144 2^numerology  Ts, cyclicPrefix 2, nrPrefixType "ECP"; nrCPtimeforLongSymbs  512 2^numerology  Ts; nrCPtimeforotherSymbs  512 2^numerology  Ts; ; nrSymbolTime 2048 Ts 2^numerology; nrSymbolLen nrSymbolTime nrSamplingTime; nrCPlenforLongSymbs IntegerPartnrCPtimeforLongSymbs nrSamplingTime; nrCPlenforotherSymbs IntegerPartnrCPtimeforotherSymbs nrSamplingTime; lengthpss 127; lengthsss 127; lengthSSB 20 lengthRB; Ifnumerology 0, nrSlotLength nrNFFT nrSymbolperSlot  nrCPlenforLongSymbs 2nrCPlenforotherSymbs  nrSymbolperSlot 2, nrSlotLength nrNFFT nrSymbolperSlot nrCPlenforLongSymbs  nrCPlenforotherSymbs  nrSymbolperSlot 1; samplesBetweenPSS Map  PSSindexes1  nrSymbolLen  nrCPlenforLongSymbs Floor  72^numerology  nrCPlenforotherSymbs    PSSindexes1  Floor  72^numerology &, PSSindexes2 ;; 1; nrAntenna 0; nrPhysicalResourceblockBandwidth nrNRBSC nrSCS; nrSSBSC nrNRBSC 12;  Number of usable subcarriers in the band 4.3. Function Definitions 57/189 4.3.5.6 Lowpass filter Options  LowPassFilter    ViewInfo  False, ViewPlot  False  ; LowPassFiltertime, signal, fcutoff : Moduletimefilter, filter, beta, filterlength, tsampling, beta 0.2;  Makes a smooth filter  filterlength 20.0;  in Ts units for a freqeuncy resolution of 1MHz  tsampling  time2  time1; timefilter, filter  RaisedCosineDigitalFilterfilterlength, beta, 1 fcutoff, tsampling; IfOptionValueViewInfo, Print"Filter in time domain"; IfOptionValueViewPlot, PrintDataPlottimefilter, filter, yRange All, plotColors  Blue, plotLegend False; ReturnFilterDatatime, signal,timefilter, filter  ; 4.3.6 Symbol Time Domain to Frequency Domain and vice versa SymbolTDtoFD  TDlist   :  Module   FDlist, n  , nLengthTDlist; FDlist FourierTDlist  Sqrtn; Join  Take  FDlist,  n  2  , Take  FDlist, n  2    ; SymbolFDtoTD  FDlist   :  Module   temp, n  , nLengthFDlist; temp JoinTakeFDlist, n2, TakeFDlist, n 2; InverseFourier  temp   Sqrt  n   ; 4.3.7 NR Resampling Options  nrResampling    ViewPlot  False  ; 64/189 nrResampling  nrSignalTime  , nrFilteredI  , nrFilteredQ, nrSamplingTime, opts : OptionsPattern :Module nrResampledTime, nrResampledI, nrResampledQ, max, min, ShowN, nrResampledTime RangenrSignalTime1, nrSignalTime1, nrSamplingTime; nrResampledI MapInterpolationTransposenrSignalTime, nrFilteredI, InterpolationOrder 1, nrResampledTime; nrResampledQ MapInterpolationTransposenrSignalTime, nrFilteredQ, InterpolationOrder 1, nrResampledTime; IfOptionValueViewPlot, max MaxMaxnrResampledI, MaxnrResampledQ; min MinMinnrResampledI, MinnrResampledQ; ShowN IfLengthnrResampledTime  100 000, LengthnrResampledTime, 100 000; PrintListPlot TransposeTakenrResampledTime, 1, ShowN  nrResampledTime1, TakenrResampledI, 1, ShowN , TransposeTakenrResampledTime, 1, ShowN  nrResampledTime1, TakenrResampledQ, 1, ShowN  , Joined True, PlotRange  min, max  1.1   ; ReturnnrResampledTime, nrResampledI, nrResampledQ  ; 4.3.8 File Read - Write 4.3.8.1 File Write Options  nrFileWrite    ViewInfo  True  ; 65/189 nrFileWrite  time  , I  , Q  , name  , ext  , file  , opts : OptionsPattern    :  Module  time1, time2, time1 Date; FileWriteFileRootfile, 2  "."  name  "."  ext, FileCreate ColCreatetime, ColName "Time", ColUnit "s", ColCreateI, ColName "I", ColUnit "V", ColCreateQ, ColName "Q", ColUnit "V", FileHeader  "sep;","Author:", "Emrah Tas"; time2 Date; IfOptionValueViewInfo, Print"Elapsed Time :", AbsoluteTimetime2  AbsoluteTimetime1  60.0, " min";  ; 4.3.8.2 Read File Options  nrReadFile    nDrop  3, ViewInfo  True, ViewPlot  True  ; nrReadFile  file  , opts : OptionsPattern    :  Module  data, time, signalI, signalQ, data FileGetfile; time, signalI, signalQ  MapToNumber &, TransposeDropdata, OptionValuenDrop,2; IfOptionValueViewPlot, PrintListPlottime, signalI, PlotRange All, ListPlottime, signalQ, PlotRange All; Returntime, signalI, signalQ;  ; 4.3.9 Correlation xCorr  kernel  , fullsignal   :  Module  output, output ListCorrelateConjugatekernel, fullsignal; correlation is performed with conjugate value to reach a maximum value using complex signals Returnoutput;  ; 66/189 4.3.10 Fourier Transformations 4.3.10.1 nrFourier nrFourier  signal  , Nfft   :  Module  tmp, tmp1, tmp2, signalFreqDomain, tmp Fouriersignal; tmp1 Taketmp, Nfft 2; tmp2 Taketmp, Nfft 2; signalFreqDomain JoinReversetmp1, Reversetmp2; ReturnsignalFreqDomain;  ; 4.3.10.2 nrInverseFourier nrInverseFourier  signal  , Nfft   :  Module  tmp, tmp1, tmp2, signalTimeDomain, tmp1 Takesignal, Nfft 2; tmp2 Takesignal, Nfft 2; tmp JoinReversetmp1, Reversetmp2; signalTimeDomain InverseFouriertmp; ReturnsignalTimeDomain;  ; 67/189 4.3.11 PSS Sequence Generation 4.3.11.1 Generate All PSS in Freq Domain GenerateAllPSS   :  Module   xstart, lengthpss, pss, x, maxNid, psstotal, p, n  , xstart  0, 1, 1, 0, 1, 1, 1; lengthpss 127; maxNid 2; xJoinxstart, ConstantArray0, lengthpss Lengthxstart  7; pss ConstantArray0, lengthpss; Forn1, n lengthpss 1Lengthxstart, n, xn7  Modxn4  xn, 2; ; psstotal  ; Forp0, p maxNid, p, Forn0, n lengthpss, n, pssn1  1 2xModn 43 p, lengthpss  1; ; psstotal Joinpsstotal, pss; ; ReturnIfpsstotal  , psstotal, $Failed;  4.3.11.2 Generate All PSS in Time Domain PrepareAllTimeDomainPSS  Allpss   :  Module   psszeropadded, psszeropaddedFFT, pssTimeDomain, psszeropaddedFFTcorr, tmp1, tmp2, psszeropadded MapJoinConstantArray0, nrNFFT 2lengthSSB 256, , ConstantArray0, nrNFFT 2lengthSSB 257 &, Allpss;1928NFFT2SSBlen22048120 ReturnMapSymbolFDtoTD &, psszeropadded;  4.3.11.3 NR PSS Position Options  nrPSSPosition    ViewPlot  True  ; nrPSSPosition  nrData10ms  , PSSTimeSeq  , opts : OptionsPattern    :  Module  Corr, pssPosition, NID2, pssStartSample, max, min, maxes, lenCW1, lenCW2, lenCW3, possibleotherpsspos, absmax, listpssstarts, pssstarts, numberofpssfound, flagok, detectedpsspos2, Corrfound, detectedpsspos, temp, meanpos, accumulate, 68/189 Corr  Map  xCorr   , nrData10ms  &, PSSTimeSeq  ; NID2, pssPosition  PositionAbsCorr, MaxAbsCorr; absmax MaxAbsCorr; flagok 0; possibleotherpsspos SelectAbsCorrNID2,  absmax 0.90 &; listpssstarts  FlattenMapPositionAbsCorrNID2, &, possibleotherpsspos; detectedpsspos FlattenMapPositionAbsCorrNID2, &, MapMax &, MapAbsCorrNID2 &, Splitlistpssstarts, Abs2 1  1000 &; numberofpssfound Lengthdetectedpsspos; Corrfound CorrNID2; temp Tablei, AbsCorrfoundi,i, 1, LengthCorrfound; temp Selecttemp, 2  0.7 absmax &; temp Splittemp, Abs11  21  1 &; temp Selecttemp, Length  20 &; numberofpssfound Lengthtemp; meanpos Tabletempi, All, 1.tempi, All, 2  Totaltempi, All, 2,i, 1, Lengthtemp; detectedpsspos2 Roundmeanpos; accumulate PrependsamplesBetweenPSS, 0; IfLengthmeanpos  Lengthaccumulate, pssPosition RoundMeanmeanpos accumulate, pssPosition 0; pssStartSample pssPosition; IfLastdetectedpsspos  detectedpsspos2  TotalDifferencessamplesBetweenPSS, Not the all SSB is in this windows, shift it in the next step to get the full SSB block pssPosition 0; pssStartSample 0, flagok 1; maxes MapMaxAbs &, Corr; lenCW1 LengthSelectAbsCorr1,  maxes1  0.50 &; lenCW2 LengthSelectAbsCorr2,  maxes2  0.50 &; lenCW3 LengthSelectAbsCorr3,  maxes3  0.50 &; IflenCW1 10 000 && lenCW2 10 000 && lenCW3 10 000, Print" PSS NOT PRESENT IN THIS FRAME ";  plotting  max MaxAbsCorr; min MinAbsCorr; IfOptionValueViewPlot, Print  GraphicsGrid   Map  DataPlot   Range  1, Length     , Abs     ,      69/189 yRange   0, Max  maxes   1.1  , plotLegend  False  &, Corr     ; ; ReturnpssPosition, NID2 1, pssStartSample, numberofpssfound, detectedpsspos, detectedpsspos2, flagok;  ; 4.3.11.4 PSS extraction Options  nrPSSExtraction    ViewPlot  True  ; nrPSSExtraction  nrData  , pssStartSample  , nrNfft  , opts : OptionsPattern    :  Module  pssDataTimeDomain, pssDataFreqDomain, tmp1, tmp2, tmp, tmpWithoutCenterFreq, PSS, plot1, plot2, plot3, plot4, plot5, PSSzeropadded, pssDataTimeDomain TakenrData, pssStartSample, pssStartSample nrNfft 1; PSSzeropadded  SymbolTDtoFDTakenrData, pssStartSample, pssStartSample nrNfft 1; PSS TakePSSzeropadded, nrNfft 2 lengthpss 1  2, nrNfft 2 lengthpss 1  2; IfOptionValueViewPlot, plot1 ListLinePlotAbspssDataTimeDomain; plot2 ListPlotDBAbsPSSzeropadded^2, Joined True, PlotRange All; plot3 ListPlotAbsPSS, Joined True, PlotRange All; plot4 ListPlotArgPSS, Joined True, PlotRange All; PrintGraphicsGridplot1, plot2,plot3, plot4; ; ReturnPSS;  ; 4.3.12 Channel Correction 4.3.12.1 Phase Correction: Linear Fit & Extrapolation Options  nrPhaseCorrection    ViewPlot  True  ; 70/189 nrPhaseCorrection  PSS  , AllPSS  , NID2  , opts : OptionsPattern    :  Module  tmp, xrange, line, linearFit, linearFitComplex, output, plot1, plot2, plot3, plot4, x, a, b, linenew, xrange Rangelengthpss 1  2,lengthpss 1  2; tmp PSS AllPSSNID2 1; linenew DataFitxrange, tmp Abstmp, ExpIab x, x, a, Argtmp64,b, 0, ViewFlag False; a b. linenew2; b a. linenew2; line  a. linenew2  x b. linenew2; linearFit Tableline, x, lengthpss 1  2,lengthpss 1  2; linearFitComplex ExpI linearFit; output PSS linearFitComplex; IfOptionValueViewPlot, plot1 ListLinePlotTransposexrange, Abstmp; plot2 ListLinePlotTransposexrange, Argtmp; plot3 ShowListLinePlotTransposexrange, Argtmp, PlotStyle Red, Plotline,x, 31, 31; plot4 ShowListLinePlotTransposexrange, ArgAllPSSNID2 1, PlotStyle Red, ListLinePlotTransposexrange, ArgPSS, PlotStyle Green, ListLinePlotTransposexrange, Argoutput, PlotStyle Blue; PrintGraphicsGridplot1, plot2,plot3, plot4; ; a, b  ; 4.3.12.2 Phase Extrapolation Options  nrPhaseExtrapolation    ViewPlot  True  ; 71/189 nrPhaseExtrapolation  line  , nrNOccupiedSC  , opts : OptionsPattern    :  Module  numSubCarrier, linearFit, extraploteFit, numSubCarrier nrNOccupiedSC 1; extraploteFit MapExpIline1   line2 &, JoinRangeRoundnrNOccupiedSC 2,1, Range1, RoundnrNOccupiedSC 2; extraploteFit MapExpIline1   line2 &, RangenrNOccupiedSC 2, nrNOccupiedSC 21; IfOptionValueViewPlot, PrintListLinePlotArgextraploteFit; ; ReturnextraploteFit;  ; 4.3.12.3 Additional Corrections due to Signal Generator Imperfection (All coefficients are emprically determined) RoschiCorrv2  symbolIndex  , fitparamsa  , fitparamsb   :  ExpI fitparamsb 2Pi 360 ModsymbolIndex, 15  fitparamsa 2Pi 360  FloorsymbolIndex, 15  12 Pi 360  IfModsymbolIndex,140 84  0, 30 2Pi 360, 0  IfFloorsymbolIndex 140 84  14  ModsymbolIndex 140 84, 14&& ModsymbolIndex, 140 84  0 && symbolIndex  140 84, 30 2Pi 360, 0  IfFloorsymbolIndex 14  ModsymbolIndex, 14&& Mod  symbolIndex, 14   0,  30  2  Pi  360, 0    ; RoschiCorrv3  symbolIndex  , fitparamsa  , fitparamsb   :  ExpI fitparamsb 2Pi 360 ModsymbolIndex, 15  fitparamsa 2Pi 360  Floor  symbolIndex, 15   3.2  Pi  360   ; PhaseCorrectionExtv2  symbolscorrwithPrev  , fitparamsa  , fitparamsb  , numerology   :  Modulecorrfactor, mm, symbolsflattened, symbolscorrRoschiCorrprev, symbolscorrRoschiCorr, symbolsflattened FlattensymbolscorrwithPrev, 1; corrfactor ConstantArray0, Lengthsymbolsflattened; Formm 1, mm Lengthcorrfactor  1, mm, corrfactormm  Whichnumerology 1, RoschiCorrv2mm, fitparamsa, fitparamsb, numerology 3, RoschiCorrv3mm, fitparamsa, fitparamsb, numerology 0, 1; symbolscorrRoschiCorrprev symbolsflattened corrfactor; symbolscorrRoschiCorr  PartitionsymbolscorrRoschiCorrprev, 140 2^numerology 1; ReturnsymbolscorrRoschiCorr;  72/189 4.3.12.4 Symbol Based Channel Estimation and Correction SymbolChannelEstimCorrect  symbolscorrwithPrev  , PSSindexes  , numerology   :  Module  a, b, args, pos1, listpos1, argsfinal, flag, coeff, linenew, finalcorrected,, args  ; pos1 SelectsymbolscorrwithPrev1PSSindexes1  1, AbsArg  2Pi 360 5&; listpos1 FlattenMapPositionsymbolscorrwithPrev1 PSSindexes1  1, &, pos1; Fori1, i LengthPSSindexes  1, i, args Appendargs, 360 2Pi MeanMap ArgsymbolscorrwithPrev1PSSindexesi  1 &, listpos1; args Joinargs1, MapIf  0,   360,  &, args2 ;; 1; argsfinal  ; flag False; coeff  ; Fori1, i Lengthargs  1, i, Ifi1 && argsi1  argsi  flag, argsfinal Appendargsfinal, argsi  360; flag True, argsfinal Appendargsfinal, argsi;; linenew  DataFitPSSindexes 1, argsfinal, a bx, x, a, 0,b, 0, ViewFlag False; a b. linenew2; b a. linenew2; finalcorrected PhaseCorrectionExtv2symbolscorrwithPrev, aWhichnumerology 1, 1, numerology 3, 3, numerology 0, 0, bWhichnumerology 1 numerology 0, 0, numerology 3, 55, numerology; finalcorrected IfLengthfinalcorrected1  0, Dropfinalcorrected, 1, finalcorrected; Returnfinalcorrected;  ; 73/189 nrDMRSPosition  nrData10ms  , DMRSTimeSeq  , opts : OptionsPattern    :  Module  Corr, DMRSPosition, NID1, DMRSStartSample, max, min, maxes, lenCW1, lenCW2, lenCW3, possibleotherdmrspos, absmax, listdmrsstarts, pssstarts, numberofsssfound, flagok, detecteddmrspos, issbbar, Corr MapxCorr, nrData10ms&, DMRSTimeSeq; issbbar, DMRSPosition  PositionAbsCorr, MaxAbsCorr; DMRSStartSample DMRSPosition 1; absmax MaxAbsCorr; flagok 0; possibleotherdmrspos SelectAbsCorrissbbar,  absmax 0.90 &; listdmrsstarts  FlattenMapPositionAbsCorrissbbar, &, possibleotherdmrspos; detecteddmrspos FlattenMapPositionAbsCorrissbbar, &, MapMax &, MapAbsCorrissbbar &, Splitlistdmrsstarts, Abs2 1  1000 &; numberofsssfound Lengthdetecteddmrspos;  plotting  max MaxAbsCorr; min MinAbsCorr; IfOptionValueViewPlot, PrintGraphicsGridMapDataPlotRange1, Length, Abs, yRange All, plotLegend False&, Corr;yRangemax1.1 ; ReturnDMRSPosition, issbbar 1, DMRSStartSample, Corr  ; 80/189 4.3.14.4 Check Measured DMRS CheckDMRS  PBCHcorr  , DMRSPBCH   :  Module  diffindexes, detectedDMRSPBCH, detectedDMRSPBCH  MapTake,ModnrCellID, 4  1 &, PartitionFlattenPBCHcorr, 4; diffindexes  ; Forjj 1, jj LengthdetectedDMRSPBCH  1, jj, IfdetectedDMRSPBCHjj  DMRSPBCHjj, diffindexes Appenddiffindexes, jj; ; The decoded DC resource element carries usually wrong information, this can be avoided Ifdiffindexes    diffindexes  31  diffindexes  115  diffindexes  31, 115, Return"DMRS DETECTION SUCCESSFUL", Return"DMRS DETECTION FAILED"  ; 4.3.15 QPSK Demodulation QPSKDemod  symbols   :  Module   PBCHbitmap  , PBCHbitmap MapWhichArg  Pi 2 && Arg  0, "00", Arg  Pi && Arg  Pi 2, "01", Arg  Pi 2 && Arg  Pi, "11", Arg  0 && Arg  Pi 2, "10" &, symbols; ReturnPBCHbitmap;  ; 4.3.16 PBCH 4.3.16.1 Demodulate PBCH in Freq Domain  v is the two LSB of SS  PBCH block index for Lmax  4 three LSB of SSPBCH block index for Lmax8 or 64 Mbit is the number of bits transmitted on physical broadcast channel  Length  receivedbits   81/189 DemodulatePBCH  nrCellID  , SSBindex  , PBCHcorr   :  Modulecinit, Mbit, x2init, issbbar, x1, x2, n, c, bi, v, detectedPBCH, detectedPBCHinbits, receivedbits, cinit nrCellID; detectedPBCH FlattenTranspose DropTransposePartitionFlattenPBCHcorr, 4,ModnrCellID, 4  1; receivedbits FlattenMapToNumberStringTake,2, ToNumberStringTake,1 &, detectedPBCH; vSSBindex 1; modssbindex,4 Mbit Lengthreceivedbits; cConstantArray0, v Mbit Mbit; x1 Join1, ConstantArray0, Mbit  v1  1600; x2init ReverseIntegerDigitsIntegerPartcinit, 2, 31; x2 Joinx2init, ConstantArray0, 1600  Mbit  v1  Lengthx2init; bi ConstantArray0, Mbit; Forn1, n Lengthx1  131, n, x1n31  Modx1n3  x1n, 2; ; Forn1, n Lengthx2  131, n, x2n31  Modx2n3  x2n2  x2n1  x2n, 2; Forn1, n  Mbit  v1  1, n, cn  Modx1n1600  x2n1600, 2; ; Forn1, n Mbit 1, n, bin  receivedbitsn  cnvMbit; ; Forn1, n Mbit 1, n, Ifbin  0, bin  bin  2; ; Returnbi;  ; 4.3.16.2 PBCH Channel Correction GetPBCH  nrDatacorr  , nrCellID  , Lmax, PSSindexes, SSBindex, numerology :Module cinit, allDMRS, PBCHpart1, PBCHpart2, PBCHpart3, PBCHpart1onlyPBCH, PBCHpart2onlyPBCH, PBCHpart3onlyPBCH, PBCHreconsphasecorr, PBCHbitmap, PBCHtaken1, PBCHtaken2, PBCHtaken3, PBCHpart1corr, PBCHpart3corr, PBCHpart2corr, PBCHcorr  , 82/189 allDMRS  GenerateAllDMRS  nrCellID, Lmax  ; PBCHpart1 nrDatacorr1PSSindexesSSBindex  2; PBCHpart2 nrDatacorr1PSSindexesSSBindex  3; PBCHpart3 nrDatacorr1PSSindexesSSBindex  4; PBCHpart1onlyPBCH  TakePBCHpart1, nrSSBSC 2lengthSSB 21, nrSSBSC 2lengthSSB 2; PBCHpart2onlyPBCH JoinTakePBCHpart2, nrSSBSC 2lengthSSB 21, nrSSBSC 2lengthSSB 2148 1, TakePBCHpart2, nrSSBSC 2lengthSSB 248 1, nrSSBSC 2lengthSSB 2; PBCHpart3onlyPBCH TakePBCHpart3, nrSSBSC 2lengthSSB 21, nrSSBSC 2lengthSSB 2; PBCHreconsphasecorr JoinPBCHpart1onlyPBCH, PBCHpart2onlyPBCH, PBCHpart3onlyPBCH; PBCHbitmap QPSKDemodPBCHreconsphasecorr; PBCHtaken1 TakePBCHbitmap, lengthSSB; PBCHtaken2 TakePBCHbitmap, lengthSSB 1, lengthSSB 96; PBCHtaken3 TakePBCHbitmap, lengthSSB; PBCHpart1corr PBCHtaken1; PBCHpart2corr PBCHtaken2; PBCHpart3corr PBCHtaken3; For a perfect equalization on PBCH, some additonal correction is needed. The correction below is determined fully emprically Whichnumerology  1, PBCHpart1corr  MapIf  "11","00", If  "00","11", &, PBCHtaken1; PBCHpart3corr MapIf  "01","10", If  "10","01", &, PBCHtaken3; PBCHpart2corr MapWhich  "01","00",  "11","10",   "00","01",  "10","11" &, PBCHtaken2, numerology 0, PBCHpart1corr  MapIf  "01","10", If  "10","01", &, PBCHtaken1; PBCHpart3corr MapIf  "11","00", If  "00","11", &, PBCHtaken3; PBCHpart2corr MapWhich  "01","00",  "11","10",   "00","01",  "10","11" &, PBCHtaken2, numerology 3, PBCHpart1corr  MapIf  "01","10", If  "10","01", &, PBCHtaken1; PBCHpart3corr MapIf  "11","00", If  "00","11", &, PBCHtaken3  ; 83/189 PBCHpart2corr  Map  Which     "01"  ,  "00"  ,    "11"  ,  "10"  ,   "00","01",  "10","11" &, PBCHtaken2 ; PBCHcorr JoinPBCHpart1corr, PBCHpart2corr, PBCHpart3corr; ReturnPBCHcorr;  ; 4.3.16.3 Check Rate Matching PBCHCheckRateMatching  PBCHdecodedinbits  , Nratematch   :  Module  firsts, repeateds, diffindexes, firsts TakePBCHdecodedinbits, Nratematch; repeateds TakePBCHdecodedinbits, LengthPBCHdecodedinbits  Nratematch; diffindexes  ; Forjj 1, jj Lengthrepeateds  1, jj, Iffirstsjj  repeatedsjj, diffindexes Appenddiffindexes, jj; ; The DC resource element has the wrong information, it can be avoided Ifdiffindexes    diffindexes  173  diffindexes  174  diffindexes  181  diffindexes  182  diffindexes  173, 181  diffindexes  174, 182  diffindexes  173, 182, Return "RATE MATCHING START SUCCESSFUL", Return"RATE MATCHING START FAILED";  ; 4.3.17 MIB 4.3.17.1 Remove Rate Matching and De-interleave RateandDeinterleave  PBCHdecodedinbits  , Nratematch   :  Module  rateunmatchedbits, J, Pofi, n, i, channelencoded, rateunmatchedbits TakePBCHdecodedinbits, Nratematch; JConstantArray0, Nratematch; Pofi  0, 1, 2, 4, 3, 5, 6, 7, 8, 16, 9, 17, 10, 18, 11, 19, 12, 20, 13, 21, 14, 22, 15, 23, 24, 25, 26, 28, 27, 29, 30, 31; Forn0, n Nratematch, n, iFloor32 nNratematch; Jn1  Pofii1  Nratematch 32 Modn, Nratematch 32; channelencoded ConstantArray0, Nratematch; Forn0, n Nratematch, n, channelencodedJn1  1  rateunmatchedbitsn1; Returnchannelencoded;  ; 84/189 4.3.17.2 Polar Decoding PolarDecoding  channelencoded  , Nratematch   :  Module  Kpolar, KmaxIL, PolInterPat, interleaved, kk, mm, polarseqfile, polarseq, polarseqratematched, polarseqfin, cprime, uu, nn, Gof2, bigmat, upolar, upolarcor, cprimerefound, jj, cfound, Interleaving Kpolar 56; KmaxIL 164; PolInterPat  0, 2, 4, 7, 9, 14, 19, 20, 24, 25, 26, 28, 31, 34, 42, 45, 49, 50, 51, 53, 54, 56, 58, 59, 61, 62, 65, 66, 67, 69, 70, 71, 72, 76, 77, 81, 82, 83, 87, 88, 89, 91, 93, 95, 98, 101, 104, 106, 108, 110, 111, 113, 115, 118, 119, 120, 122, 123, 126, 127, 129, 132, 134, 138, 139, 140, 1, 3, 5, 8, 10, 15, 21, 27, 29, 32, 35, 43, 46, 52, 55, 57, 60, 63, 68, 73, 78, 84, 90, 92, 94, 96, 99, 102, 105, 107, 109, 112, 114, 116, 121, 124, 128, 130, 133, 135, 141, 6, 11, 16, 22, 30, 33, 36, 44, 47, 64, 74, 79, 85, 97, 100, 103, 117, 125, 131, 136, 142, 12, 17, 23, 37, 48, 75, 80, 86, 137, 143, 13, 18, 38, 144, 39, 145, 40, 146, 41, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163; interleaved Range0, Kpolar 1; kk 0; Formm 0, mm KmaxIL, mm, IfPolInterPatmm 1  KmaxIL Kpolar, interleavedkk 1  PolInterPatmm 1  KmaxIL Kpolar; kk  ; Polar Decoding polarseqfile "C:\\PolarSequenceQ.csv"; polarseq MapToNumber &, FlattenFileGetpolarseqfile, ViewFlag False; polarseqratematched Selectpolarseq,   Nratematch &; polarseqfin Takepolarseqratematched, Kpolar; cprime Range1, Kpolar; kk 0; uu ConstantArray10 000, Nratematch; Fornn 0, nn Nratematch, nn, IfMemberQpolarseqfin, nn, uunn 1  cprimekk 1; kk kk 1, uunn 1  0; Gof2  1, 0,1, 1; bigmat KroneckerProductGof2, Gof2, Gof2, Gof2, Gof2, Gof2, Gof2, Gof2, Gof2; upolar channelencoded.Inversebigmat; upolarcor  Map  If  Mod  Abs    , 2   0, 0, 1  &, upolar  ; 85/189 cprimerefound  ConstantArray  1000, Kpolar  ; kk 1; Forjj 1, jj Nratematch 1, jj, Ifuujj  0, cprimerefoundkk  upolarcorjj; kk; cfound ConstantArray1000, Kpolar; Forjj 1, jj Kpolar 1, jj, cfoundinterleaved 1jj  cprimerefoundjj; Returncfound;  ; 4.3.17.3 Remove CheckSum RemoveCheckSum  cfound   :  Module  polynom, CRCsoll, datawoCRC, polynom1,1,0,1,1,0,0,1,0,1,0,1,1,0,0,0,1,0,0,0,1,0,1,1,1; ReverseD^0D^1D^2D^4D^8D^12D^13D^15D^17D^20D^21D^23D^24 Takecfound,32; CRCsoll1,1,0,0,1,0,0,1,1,0,0,1,0,1,1,1,1,1,1,1,1,0,0,1; Takecfound,24CRCsoll; datawoCRC Takecfound, 32; ReturndatawoCRC;  ; 4.3.17.4 Descrambling for Payload and get MIB information GetMIB  datawoCRC  , nrCellID  , Lmax   :  Module  v, CRCsoll, cinit, LenA, Mbit, c, x1, x2init, x2, ai, n, jj, si, result, SFN, subcarspaccommon, SSBscoffsetdetected, dmrstypeApos, pdcchconfigforSIB1, cellbarred, intrafreqresel, sparebits, resultall, coresetzero, searchspacezero, vWhichdatawoCRC7, datawoCRC25  0, 0, 0, datawoCRC7, datawoCRC25  0, 1, 1, datawoCRC7, datawoCRC25  1, 0, 2, datawoCRC7, datawoCRC25  1, 1, 3; cinit nrCellID; LenA 32; IfLmax 8 Lmax 4, Mbit LenA 3, Mbit LenA 6; cConstantArray0, v LenA LenA; x1 Join1, ConstantArray0, LenA  v1  1600; x2init ReverseIntegerDigitsIntegerPartcinit, 2, 31; x2 Joinx2init, ConstantArray0, 1600  LenA  v1  Lengthx2init; ai ConstantArray0, LenA; Forn1, n Lengthx1  131, n, x1   n  31    Mod  x1   n  3    x1   n   , 2  ;  86/189  ; Forn1, n Lengthx2  131, n, x2n31  Modx2n3  x2n2  x2n1  x2n, 2; Forn1, n  LenA  v1  1, n, cn  Modx1n1600  x2n1600, 2; ; jj 0; si ConstantArray100, LenA; IfLmax 64, Forn1, n LenA 1, n, Ifn1 && n 7 && n 25, sin  cjj vMbit 1; jj, sin  0, Forn1, n LenA 1, n, Ifn1 && n 3 && n 4 && n 6 && n 7 && n 25, sin  cjj vMbit 1; jj, sin  0 ; ai datawoCRC si; Forn1, n LenA 1, n, Ifain  0, ain  ain  2; result ConstantArray100, 32; SFN result1  ai17;jSFN0, G016,  result2  ai24;jSFN1, G123,  result3  ai19;jSFN2, G218,  result4  ai18;jSFN3, G317,  result5  ai9;jSFN4, G48,  result6  ai31;jSFN5, G530,  result25  ai11;jSFN6, G610 4th LSB of SFN result26  ai7;jSFN7, G76 3rd LSB of SFN result27  ai25;jSFN8, G824 2nd LSB of SFN result28  ai8;jSFN9, G97 1st LSB of SFN SCS common result7  ai2;jother14 G141 jother15 SSB subcarrieroffset result8  ai5;jother15 G154 jother16 result9  ai10;jother16 G169 jother17 result10  ai12;jother17 G1711 jother18 result11  ai13;jother18 G1812 jother19  DMRS Type A position  87/189 result   12    ai   14   ;  jother  19 G  19   13 jother  20  PDCCH config SIB1 result13  ai15;jother20 G2014 jother21 result14  ai16;jother21 G2115 jother22 result15  ai20;jother22 G2219 jother23 result16  ai21;jother23 G2320 jother24 result17  ai22;jother24 G2421 jother25 result18  ai23;jother25 G2522 jother26 result19  ai26;jother26 G2625 jother27 result20  ai27;jother27 G2726 jother28 Cell barred result21  ai28;jother28 G2827 jother29 Intra freq selection  result22  ai29;jother29 G2928 jother30 Spare Bit result23  ai30;jother30 G3029 jother31 BCCHBCHMessage Type indication result24  ai32;jother31 G3131 jother32  Half frame bit  result29  ai1;jHRF10, G100  MSB of kssb and bits of candidate SSPBCH block index result30  ai6;jSSB11, G115 result31  ai4;jSSB12, G123 result32  ai3;jSSB13, G132 resultall result; result Restresult; SFN Takeresultall, 6; SFN JoinTakeresultall, 6, Takeresultall, 8, 5; subcarspaccommon Takeresult, 7; SSBscoffsetdetected JoinTakeresult, 3, Takeresult, 8, 11; dmrstypeApos Takeresult, 12; coresetzero Takeresult, 13, 16; searchspacezero Takeresult, 17, 20; cellbarred Takeresult, 21; intrafreqresel Takeresult, 22; sparebits  Take  result,  23   ; 88/189 Return   SFN, subcarspaccommon, SSBscoffsetdetected, dmrstypeApos, coresetzero, searchspacezero, cellbarred, intrafreqresel  ; 4.3.18 PDCCH 4.3.18.1 Generate PDCCH DMRS PDCCHDMRS  nrCellID  , nrSymbolperSlot  , coresetslot  , FirstSymbolIndexcoreset  , dmrslength :Modulecinit, Mbit, x2init, g, x1, x2, n, c, bi, v, , rm, rm ConstantArray0, dmrslength; cinit  Mod2^17  nrSymbolperSlot  coresetslot 1  FirstSymbolIndexcoreset 1  1  2nrCellID 1  2nrCellID, 2^31; cConstantArray0, dmrslength 21; x1 Join1, ConstantArray0, dmrslength 21600; x2init ReverseIntegerDigitsIntegerPartcinit, 2, 31; x2 Joinx2init, ConstantArray0, 1600 1dmrslength 2Lengthx2init; Forn1, n Lengthx1  131, n, x1n31  Modx1n3  x1n, 2; ; Forn1, n Lengthx2  131, n, x2n31  Modx2n3  x2n2  x2n1  x2n, 2; Forn1, n  dmrslength 2  11, n, cn  Modx1n1600  x2n1600, 2; ; Forn1, n dmrslength 1, n, rmn  1.0 Sqrt2  12c2 n1  1  I1.0 Sqrt2  12c2 n1  2; ; Returnrm  ; 4.3.18.2 Demodulate PDCCH in Freq Domain  v is the two LSB of SS  PBCH block index for Lmax  4 three LSB of SSPBCH block index for Lmax8 or 64 Mbit is the number of bits transmitted on physical broadcast channel  Length  receivedbits   89/189 nrFilteredI  LowPassFilter  nrSignalTime, nrSignalI, 2 nrFilterCutOffFrequency;Filtering nrFilteredQ LowPassFilternrSignalTime, nrSignalQ, 2nrFilterCutOffFrequency; nrResampledTime, nrResampledI, nrResampledQ  nrResamplingnrSignalTime, nrFilteredI, nrFilteredQ, nrSamplingTime, ViewPlot  OptionValueResamplingViewPlot; Resampling  PSS Location nrData nrResampledI I nrResampledQ; nrData10ms TakenrData, 1, Ifnumerology 3, nrNumSamplesinRadioFrame, nrNumSamplesinRadioFrame 2; allpssTD PrepareAllTimeDomainPSSGenerateAllPSS; flagalreadyprinted False; Print"FIRST ITERATION OF PSS DETECTION..."; pssPosition, nrNID2, pssStartSample, numberofpssfound, detectedpsspos, detectedpsspos2, flagok  nrPSSPositionnrData10ms, allpssTD, ViewPlot  OptionValuePSSDetectionViewPlot; Ifflagok 1 && Lengthdetectedpsspos  LengthPSSindexes, Print"PSS SUCCESSFULLY DETECTED"; flagalreadyprinted True, Print"PSS DETECTION NOT COMPLETE, SECOND ITERATION OF PSS DETECTION..."; If PSS is too early detected, then SSS is not present and the Cell ID cannot be detected. For this reason, the slot must be discarded and the next slot should be considered Ifflagok 0 Lengthdetectedpsspos  LengthPSSindexes, flag False; IfLengthdetectedpsspos  LengthPSSindexes, nrData10ms TakenrData, 1nrNumSamplesinRadioFrame 4, 3 nrNumSamplesinRadioFrame 4; flag True, nrData10ms  TakenrData, 1nrNumSamplesinRadioFrame 2, nrNumSamplesinRadioFrame; pssPosition, nrNID2, pssStartSample, numberofpssfound, detectedpsspos, detectedpsspos2, flagok  nrPSSPositionnrData10ms, allpssTD, ViewPlot  OptionValuePSSDetectionViewPlot; pssStartSample pssStartSample Ifflag, nrNumSamplesinRadioFrame 4, nrNumSamplesinRadioFrame 2; pssPosition pssPosition Ifflag, nrNumSamplesinRadioFrame 4, nrNumSamplesinRadioFrame 2; flag False; If not enough PSS, one more shift and try If  Length  detectedpsspos   Length  PSSindexes  , 96/189 If   flagalreadyprinted, Print  "PSS SUCCESSFULLY DETECTED  "  ; flagalreadyprinted True, Print"PSS DETECTION NOT COMPLETE, THIRD ITERATION OF PSS DETECTION..."; IfLengthdetectedpsspos  LengthPSSindexes, nrData10ms TakenrData, 1nrNumSamplesinRadioFrame 2, nrNumSamplesinRadioFrame 2nrNumSamplesinRadioFrame; flag True; pssPosition, nrNID2, pssStartSample, numberofpssfound, detectedpsspos, detectedpsspos2, flagok  nrPSSPositionnrData10ms, allpssTD, ViewPlot  OptionValuePSSDetectionViewPlot; pssStartSample pssStartSample nrNumSamplesinRadioFrame 2; pssPosition pssPosition nrNumSamplesinRadioFrame 2; flag False; Ifflagok 1 && Lengthdetectedpsspos  LengthPSSindexes, If flagalreadyprinted, Print"PSS SUCCESSFULLY DETECTED", Print"PSS DETECTION NOT SUCCESSFULL CHECK CONFIGURATION"; nrTimeSyncData DropnrData, pssStartSample 1; nrTimeSyncTime DropnrResampledTime, pssStartSample 1; nrTimeSyncDatawithPrev  DropnrData, pssStartSample 1PSSindexes1  nrCPlenforotherSymbs  PSSindexes1  nrNFFT nrCPlenforLongSymbs; PSS is either on 2nd or 5th symbol, extract the previous symbols too nrTimeSyncTimewithPrev DropnrResampledTime, pssStartSample 1PSSindexes1  nrCPlenforotherSymbs  PSSindexes1  nrNFFT nrCPlenforLongSymbs; allSSS GenerateAllSSSnrNID2; allSSStd PrepareAllTimeDomainSSSallSSS; nrDataforSSSdetecnrTimeSyncData1;;20000; nrDataforSSSdetec nrTimeSyncDatawithPrev PSSindexes1  nrCPlenforotherSymbs PSSindexes1  nrNFFT  nrCPlenforLongSymbs ;; 20 000 PSSindexes1  nrCPlenforotherSymbs  PSSindexes1  nrNFFT nrCPlenforLongSymbs; sssPosition, nrNID1, sssStartSample, Corr  nrSSSPositionnrDataforSSSdetec, allSSStd, ViewPlot  OptionValueSSSDetectionViewPlot; nrCellID 3nrNID1 nrNID2; Print"SSS SUCCESSFULLY DETECTED"; Print"Cell ID is "  ToStringnrCellID; Data Formatting nrDataBlock, nrTimeBlock  nrDataFormat nrTimeSyncData, nrTimeSyncTime, 0, nrSamplesperSubFrame  5, nrNFFT  ; 97/189  Data Formatting  nrDataBlockwithPrev, nrTimeBlockwithPrev  nrDataFormatnrTimeSyncDatawithPrev, nrTimeSyncTimewithPrev, 0, nrSamplesperSubFrame 5, nrNFFT;  PSS Extraction  PSS nrPSSExtractionnrData, pssStartSample, nrNFFT, ViewPlot  OptionValuePSSExtractionViewPlot;  nr Phase Correction and Extrapolation  xLine nrPhaseCorrectionPSS, GenerateAllPSS, nrNID2, ViewPlot  OptionValuePhaseCorrectionViewPlot; phaseCorr nrPhaseExtrapolationxLine, nrSSBSC, ViewPlot  OptionValuePhaseCorrectionViewPlot; Ifflag, nrDataBlock DropnrDataBlock, 1; nrTimeBlock DropnrTimeBlock, 1; Ifnumerology 3, nrSlotDatawithPrev MapPartition, nrSlotLength&, nrDataBlockwithPrev; nrSymbolswithPrev MapMapIndexedremovenrCPx1, nrNFFT, nrCPlenforLongSymbs, nrCPlenforotherSymbs, numerology, 2&,  &, nrSlotDatawithPrev; nrFreqDomainwithPrev MapMapMapnrDataExtraction, nrNFFT, nrSSBSC&,  &,  &, nrSymbolswithPrev; symbolsuncorrwithPrev MapApplyJoin,  &, nrFreqDomainwithPrev, finalslotsflattened nrDataFormatNum3nrDataBlockwithPrev, nrNFFT; nrSymbolswithPrevfinal  ; Forii 1, ii Lengthfinalslotsflattened  1, ii, nrSymbolswithPrev removenrCPxfinalslotsflattenedii, nrNFFT, nrCPlenforLongSymbs, nrCPlenforotherSymbs, numerology, ii; nrSymbolswithPrevfinal AppendnrSymbolswithPrevfinal, nrSymbolswithPrev; ; nrSymbolswithPrev  PartitionFlattennrSymbolswithPrevfinal, 1,140 2^numerology 1; nrFreqDomainwithPrev MapMapnrDataExtraction, nrNFFT, nrSSBSC&,  &, nrSymbolswithPrev; symbolsuncorrwithPrev nrFreqDomainwithPrev; ; symbolscorrwithPrev MapMap  phaseCorr &,  &, symbolsuncorrwithPrev; symbolscorrwithPrev IfLengthsymbolscorrwithPrev1  0, DropsymbolscorrwithPrev, 1, symbolscorrwithPrev; IfOptionValueUncorrectedSymbolViewPlot, PrintMapManipulateConstellationPloti, PlotRange MaxAbsnrFreqDomainwithPrev  1, 1,1, 1, i, 1, 140 2^numerology 1, 1 &, MapMapDrop,Length  21 &,  &, symbolscorrwithPrev; finalcorrected  If  numerology  1  numerology  3, SymbolChannelEstimCorrect    98/189 symbolscorrwithPrev, PSSindexes, numerology  , symbolscorrwithPrev  ; IfOptionValueCorrectedSymbolViewPlot, PrintMapManipulateConstellationPloti, PlotRange MaxAbsnrFreqDomainwithPrev  1, 1,1, 1,i, 1, 140 2^numerology 1, 1 &, MapMapDrop,Length  21 &,  &, finalcorrected;Plot without DC carrier  Get powers of each resource grid and save symbolscorr finalcorrected; CellIds nrCellID; header  Join"Cell ID",ToStringCellIds; FrameNumbers Array &, Lengthsymbolscorr; SymbolNumbers MapArray &, Length &, symbolscorr; symbolscorrnew MapMapDrop,Length  21 &,  &, symbolscorr; Remove DC Carrier for writing the resource grid FrameNumberFinal  MapThreadConstantArray1, Length2 &, FrameNumbers, SymbolNumbers; fullresourcegrid MapThreadMapThreadColCreateDBAbs1, ColName  "Bin Power", ColUnit "dB", ColParams  2, 3 &, 1, 2, 3 &, symbolscorrnew, FrameNumberFinal, SymbolNumbers; xaxis ColCreateArray &, Lengthfullresourcegrid11, ColName "Subcarrier Number", ColParams  "Frame Number", "Symbol Number"; FileWriteStringTrimscopefile, ".bin"  ".fullgrid.csv", FileCreateJoin xaxis, Flattenfullresourcegrid, FileHeader header, FileLegend 2; ReturnnrCellID, finalcorrected;  ; 4.5. 5G NR Decoding FileSelect  filemeas, "  .bin"   Select scope file to decode   nrCellID, finalcorrected   nrDecode  filemeas  ; 99/189 4.6. Additional Functions 4.6.1 DMRS Detection SSBindex  1; allDMRS GenerateAllDMRSnrCellID, Lmax; DMRSPBCH QPSKDemodallDMRSSSBindex; PBCHcorr  GetPBCHfinalcorrected, nrCellID, Lmax, PSSindexes, SSBindex, numerology; CheckDMRS  PBCHcorr, DMRSPBCH  4.6.2 Get MIB Information 4.6.2.1 Check Rate Matching Start PBCHdecodedinbits  DemodulatePBCH  nrCellID, SSBindex, PBCHcorr  ; Nratematch 512; PBCHCheckRateMatching  PBCHdecodedinbits, Nratematch  4.6.2.2 Rate Matching and Subblock deinterleaving channelencoded  RateandDeinterleave  PBCHdecodedinbits, Nratematch  ; 4.6.2.3 Polar Decoding cfound  PolarDecoding  channelencoded, Nratematch  ; 4.6.2.4 Remove Check Sum datawoCRC  RemoveCheckSum  cfound  ; 4.6.2.5 Descrambling for Payload and get MIB information  SFN, subcarspaccommon, SSBscoffsetdetected, dmrstypeApos, coresetzero, searchspacezero, cellbarred, intrafreqresel   GetMIB  datawoCRC, nrCellID, Lmax  ; 100/189 TableForm    "Subcarier Spacing Common", Ifsubcarspaccommon  0, "15 kHz or 60 kHz", "30 kHz or 120 kHz", "DMRS Type A Position", IfdmrstypeApos  0, 2, 3, "SSB Subcarrier Offset", IfFromDigitsSSBscoffsetdetected, 2  23, ToStringFromDigitsSSBscoffsetdetected, 2, "AttentionkSSB " ToStringFromDigitsSSBscoffsetdetected, 2  " which is larger than 23. Therefore, SIB1 is not available", "System Frame Number", FromDigitsSFN, 2, "Coreset Zero", FromDigitscoresetzero, 2, "Search Space Zero", FromDigitssearchspacezero, 2, "Cell Barred", Ifcellbarred  0, "Barred", "Not Barred",  "Intra Freq Reselection", If  intrafreqresel   0  , "Allowed", "Not Allowed"     4.6.2.6 Decision on Configuration - Example (i.e. place of CORESET0 in the radio frame) TableCORESET  ConstantArray  ConstantArray  5000, 4  , 4  ; Table 131 multiplexpattern JoinConstantArray1, 8, ConstantArray1000, 8; ncoresetrb JoinConstantArray96, 8, ConstantArray1000, 8; ncoresetsymb  JoinConstantArray1, 4, ConstantArray2, 4, ConstantArray1000, 8; offsetrbs  10, 12, 14, 16, 10, 12, 14, 16, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000; TableCORESET1  TransposeJoinmultiplexpattern, ncoresetrb,ncoresetsymb,offsetrbs; Table 132 multiplexpattern JoinConstantArray1, 14, ConstantArray1000, 2; ncoresetrb  JoinConstantArray24, 8, ConstantArray48, 6, ConstantArray1000, 2; ncoresetsymb JoinConstantArray2, 4, ConstantArray3, 4, ConstantArray1, 2, ConstantArray2, 2, ConstantArray3, 2, ConstantArray1000, 2; offsetrbs  5, 6, 7, 8, 5, 6, 7, 8, 18, 20, 18, 20, 18, 20, 1000, 1000; TableCORESET2  TransposeJoinmultiplexpattern,ncoresetrb,ncoresetsymb,offsetrbs; Table 133 multiplexpattern JoinConstantArray1, 9, ConstantArray1000, 7; ncoresetrb  JoinConstantArray48, 6, ConstantArray96, 3, ConstantArray1000, 7; ncoresetsymb JoinConstantArray1, 2, ConstantArray2, 2, ConstantArray3, 2, Range1, 3, ConstantArray1000, 7; offsetrbs   2, 6, 2, 6, 2, 6, 28, 28, 28, 1000, 1000, 1000, 1000, 1000, 1000, 1000  ; 101/189 TableCORESET   3    TransposeJoinmultiplexpattern,ncoresetrb,ncoresetsymb,offsetrbs; Table 134 multiplexpattern ConstantArray1, 2^Lengthsearchspacezero; ncoresetrb  JoinConstantArray24, 10, ConstantArray48, 2^Lengthsearchspacezero  19; ncoresetsymb JoinConstantArray2, 5, ConstantArray3, 5, ConstantArray1, 3, ConstantArray2, 2^Lengthsearchspacezero  112; offsetrbs  0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 12, 14, 16, 12, 14, 16; TableCORESET4  TransposeJoinmultiplexpattern,ncoresetrb,ncoresetsymb,offsetrbs; multip, coresetrb, coresetsymb, coresetoffset  Whichnumerology, subcarspaccommon1  0, 0, TableCORESET1,numerology, subcarspaccommon1  0, 1, TableCORESET2,numerology, subcarspaccommon1  1, 0, TableCORESET3,numerology, subcarspaccommon1  1, 1, TableCORESET4FromDigitscoresetzero, 2  1; Table 1311 Ocoresets  0, 0, 2, 2, 5, 5, 7, 7, 0, 5, 0, 0, 2, 2, 5, 5; numsearchspacesetsperslots  1, 2, 1, 2, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1; Mcoresets  1, 0.5, 1, 0.5, 1, 0.5, 1, 0.5, 2, 2, 1, 1, 1, 1, 1, 1; FirstSymbolIndexcoresets  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 2, 1, 2; Ocoreset, numsearchspacesetsperslot, Mcoreset, FirstSymbolIndexcoreset  TransposeJoinOcoresets,numsearchspacesetsperslots,Mcoresets,  FirstSymbolIndexcoresets      FromDigits  searchspacezero, 2   1   ; coresetslot  Mod   Ocoreset  2^numerology  Floor   SSBindex  1   Mcoreset   , nrSlotperRadioFrame   1; radioframecoreset0  IfEvenQFloorOcoreset 2^numerology FloorSSBindex 1  Mcoreset  nrSlotperRadioFrame, 2   , 0, 1   1; 102/189 Federal Institute of Metrology METAS 103/189 ANNEX C 21NRM03 MEWS - Metrology for emerging wireless standards Evaluation of the Reference On-the-Bench Experimental Setup 104/189 Author: Emrah Tas Federal Institute of Metrology METAS Lindenweg 50 3003 Bern-Wabern 21NRM03 MEWS Activity number: A3.2.1 Version: 2.0 Date: May 16, 2024 Version Comments Author Date 1.0 Creation of the document Emrah Tas May 15, 2024 2.0 Addition of PSS RE power accuracy analysis and measurements in fading scenarios Emrah Tas May 16, 2024 105/189 Table of Contents 1 Introduction ................................................................................................................. 106 2 Measurement Setup Description ................................................................................. 107 3 Measurement Scenarios ............................................................................................. 108 3.1 Selection of Scenario Parameters ........................................................................ 108 3.2 Definition of Measurement Scenarios .................................................................. 109 4 Transmission Correction and SI Traceability ............................................................... 110 5 Measurements ............................................................................................................ 111 5.1 Measurement Setup ............................................................................................ 111 5.2 Components List .................................................................................................. 112 5.3 Power Levels ....................................................................................................... 113 5.4 Measurement Results .......................................................................................... 114 5.4.1 Power Analysis for the scenarios without fading ........................................... 114 5.4.2 Power of PSS and SSS REs for the scenarios with fading ............................ 115 6 Measurement Uncertainty ........................................................................................... 121 6.1 Sources of Uncertainty ........................................................................................ 121 6.2 Calculation of Measurement Uncertainty Budgets for Different Frequencies ........ 122 6.3 Discussion on Measurement Uncertainty Budget ................................................. 123 7 References ................................................................................................................. 124 Annex Fading Scenarios .................................................................................................... 125 Multi-path fading propagation conditions ........................................................................ 125 Delay Profiles for FR1 .................................................................................................... 125 Delay Profiles for FR2 .................................................................................................... 127 Combinations of channel model parameters................................................................... 129 112/189 (a) (b) Figure 5. Measurement Setup in (a) FR1 (b) FR2 During the measurements, the 5G generator operated in constant power spectrum density (Constant PSD) mode to keep the RF power of all resource elements constant. The selected number of SSBs were equal to Lmax (i.e. maximum number of SSBs for the selected center frequency), which are • 4 for 𝑓≤ 3 GHz, • 8 for 3 GHz<𝑓 ≤6 GHz • 64 for 6 GHz<𝑓 Full traffic case (100% Traffic) was considered for all scenarios, which helps the illustration of the fading on the power of the whole resource grid. 5.2 Components List Component Brand and Model Function Vector Signal Generator Rohde & Schwarz, SMW200A 5G Signal Generator Synthesized Sweeper HP, 83650A Local Oscillator Power Meter Rohde & Schwarz, NRP-Z91 Power Meter Power Splitter Weinschel, PS-018 Power Splitter Low pass Filter Mini-Circuits, ZX75LP-83-S+ Low Pass Filter RF Mixer Mini-Circuits, ZX05-43LH-S+ Frequency Down-mixer Oscilloscope Agilent, Infiniium DSO90254A Oscilloscope Table 3. Components List for Measurements in FR1 (Scenarios 1 to 20) 113/189 Component Brand and Model Function Vector Signal Generator Rohde & Schwarz, SMW200A 5G Signal Generator Synthesized Sweeper HP, 83650A Local Oscillator for Up-mixing Swept CW Generator HP, 83650L Local Oscillator for Down-mixing Power Meter Rohde & Schwarz, NRV-Z52 Power Meter Power Splitter HP, 11667B Power Splitter Low pass Filter Mini-Circuits, ZX75LP-83-S+ Low Pass Filter RF Mixer Mitec, DB0226HA1 Frequency Up-mixer RF Mixer Mitec, DB0226LA1 Frequency Down-mixer Oscilloscope Agilent, Infiniium DSO90254A Oscilloscope Table 4. Components List for Measurements in FR2 (Scenarios 21 to 23) 5.3 Power Levels The selected PEP levels, at which the calibration of the setup is performed, and the corresponding RF power level for max. number of SSBs are given in Table 5. Scenario Number Selected PEP Level (dBm) RF Power Level for max. number of SSBs (dBm) 1 -4 -14.69 2 -4 -14.78 3 -4 -14.71 4 -4 -15.04 5 -4 -24.69 6 -4 -24.78 7 -4 -24.71 8 -4 -25.04 9 -4 -24.69 10 -4 -24.78 11 -4 -24.71 12 -4 -25.04 13 -4 -24.69 14 -4 -24.78 15 -4 -24.71 16 -4 -25.04 17 -4 -24.69 18 -4 -24.78 19 -4 -24.71 20 -4 -25.04 21 0 -11.03 22 0 -21.03 23 0 -21.03 Table 5. Selected PEP levels and RF Power Levels for Max. Number of SSBs 114/189 5.4 Measurement Results Each scenario is measured three times with the testbed and the measurements are analysed using the software module. A detailed analysis for PSS and SSS resource element (RE) power detection is made for the scenarios without fading. For the scenarios with fading, the detected PSS and SSS RE powers and the maximum deviation between three measurements are given and the heat map of the resource grid power are depicted for the visualization of the effects of different fading characteristics. 5.4.1 Power Analysis for the scenarios without fading The power of each RE in either PSS and SSS can be calculated as given in (1): Power (each RE)dBm =10∙log10(Power DensitymW/Hz × Subcarrier SpacingHz) (1) where Power DensitymW/Hz =10Set PowerdBm 10 BandwidthHz (2) The theoretical RE power calculation for Scenario 1 is performed as follows: For Set Power = -14.69 dBm, Bandwidth = 20 MHz and SCS = 15 kHz (i.e. numerology 0) Power DensitymW/Hz =10−14.69 10 20×106=1.6981×10−9 mW/Hz (3) and Power (each RE)dBm =10∙log10(1.6981×10−9 ×15000)=−45.94 dBm (4) This calculation is repeated for Scenarios 1 to 4 and also for Scenario 23. For each scenario without fading, Table 6 and Table 7 present the PSS and SSS RE power analysis, respectively. These tables include the theoretical and the calculated RE powers, the differences of these values and the standard deviations of RE powers in a subframe. Measured RE power is calculated for both PSS and SSS as follows: For the first measurement, the average value of all detected PSS or SSS RE powers is calculated. This calculation is repeated for all three measurements and the average of three measurements is obtained. The standard deviation is also calculated similarly. 115/189 These results show that the theoretical and the measured RE powers for both PSS and SSS match very well with a low standard deviation, proving the stability of the detection algorithm and the testbed. Scenario Number Set Power on Generator (dBm) Theoretical RE Power (dBm) Measured PSS RE Power (dBm) Difference of Theoretical Value and Measured Value (dB) Standard Deviation of PSS RE Powers in a Subframe (dB) 1 -14.69 -45.94 -45.99 0.05 0.011 2 -14.78 -46.03 -46.12 0.09 0.013 3 -14.71 -42.95 -43.03 0.08 0.014 4 -15.04 -43.28 -43.32 0.04 0.043 21 -11.03 -37.23 -37.21 -0.02 0.094 Table 6. PSS RE Power Analysis Scenario Number Set Power on Generator (dBm) Theoretical RE Power (dBm) Measured SSS RE Power (dBm) Difference of Theoretical Value and Measured Value (dB) Standard Deviation of SSS RE Powers in a Subframe (dB) 1 -14.69 -45.94 -46.00 0.06 0.010 2 -14.78 -46.03 -46.10 0.07 0.043 3 -14.71 -42.95 -43.03 0.08 0.010 4 -15.04 -43.28 -43.29 0.01 0.036 21 -11.03 -37.23 -37.27 0.04 0.074 Table 7. SSS RE Power Analysis 5.4.2 Power of PSS and SSS REs for the scenarios with fading For the scenarios with fading, PSS and SSS RE Powers are also measured for three times and the analysis is performed similar to the scenarios without fading. The deviation between these measurements is analysed for understanding the effect of fading for different cases. Table 8 and Table 9 present these results for PSS and SSS, respectively. It can be observed that fading causes a change in the detected RF power of REs as expected. The deviation in the power reached up to 9.75 dB in the measurements. In order to visualize the effects of different fading characteristics, the heat maps of the whole resource grid are obtained for each scenario. These heat maps are given from Figure 6 to Figure 15. Please note that these snapshots were taken from the resource grid region around the SSBs. REs of SSBs set to value 0 can be seen with rectangular shapes at the 116/189 start of the resource grid, having the colour of dark red (representing very low power). These illustrations have the sole purpose of displaying the fading effects and does not include the detailed quantitative analysis. Scenario Number Measured PSS RE Power M1 (dBm) Measured PSS RE Power M2 (dBm) Measured PSS RE Power M3 (dBm) Maximum Deviation between Measurements (dB) 5 -54.94 -54.06 -58.68 4.64 6 -52.12 -54.45 -50.18 4.27 7 -51.39 -50.49 -53.32 2.83 8 -50.46 -50.57 -51.30 0.84 9 -49.41 -52.16 -56.23 6.82 10 -52.55 -53.80 -55.05 2.50 11 -50.48 -52.07 -50.11 1.96 12 -53.42 -50.67 -50.73 2.75 13 -57.04 -63.74 -55.35 8.39 14 -63.94 -60.67 -54.96 8.98 15 -53.19 -57.27 -54.42 4.08 16 -56.23 -53.92 -52.22 4.01 17 -58.83 -53.40 -54.92 5.43 18 -61.27 -61.92 -56.36 5.56 19 -57.61 -55.68 -51.23 6.38 20 -51.58 -59.68 -52.98 8.10 22 -46.04 -44.81 -49.73 4.92 23 -44.24 -42.73 -44.17 1.51 Table 8. PSS REs Power Analysis for Scenarios with Fading 117/189 Scenario Number Measured SSS RE Power M1 (dBm) Measured SSS RE Power M2 (dBm) Measured SSS RE Power M3 (dBm) Maximum Deviation between Measurements (dB) 5 -54.95 -53.88 -58.68 4.80 6 -52.08 -54.50 -50.27 4.23 7 -51.40 -50.48 -53.31 2.83 8 -50.47 -50.58 -51.24 0.77 9 -49.36 -52.17 -56.16 6.80 10 -52.55 -53.70 -54.93 2.38 11 -50.50 -52.06 -50.11 1.95 12 -53.43 -50.68 -50.72 2.75 13 -57.43 -63.75 -57.65 6.32 14 -64.22 -56.44 -54.47 9.75 15 -53.49 -57.64 -54.55 4.15 16 -55.01 -53.72 -52.29 2.72 17 -58.93 -53.54 -54.92 5.39 18 -61.18 -60.97 -56.88 4.30 19 -57.22 -55.93 -51.27 5.95 20 -51.29 -60.10 -52.85 8.81 22 -46.01 -44.77 -49.80 5.03 23 -44.15 -42.56 -44.14 1.59 Table 9. SSS REs Power Analysis for Scenarios with Fading Figure 6. Heat Maps for Resource Grid Power of Scenarios 5 (Left) and 6 (Right) (TDLA30-5 Fading) f t f t 118/189 Figure 7. Heat Maps for Resource Grid Power of Scenarios 7 (Left) and 8 (Right) (TDLA30-5 Fading) Figure 8. Heat Maps for Resource Grid Power of Scenarios 9 (Left) and 10 (Right) (TDLA30-10 Fading) Figure 9. Heat Maps for Resource Grid Power of Scenarios 11 (Left) and 12 (Right) (TDLA30-10 Fading) f t f t f t f t f t f t 119/189 Figure 10. Heat Maps for Resource Grid Power of Scenarios 13 (Left) and 14 (Right) (TDLB100-400 Fading) Figure 11. Heat Maps for Resource Grid Power of Scenarios 15 (Left) and 16 (Right) (TDLB100-400 Fading) Figure 12. Heat Maps for Resource Grid Power of Scenarios 17 (Left) and 18 (Right) (TDLC300-100 Fading) f t f t f t f t f t f t 120/189 Figure 13. Heat Maps for Resource Grid Power of Scenarios 19 (Left) and 20 (Right) (TDLC300-100 Fading) Figure 14. Heat Map for Resource Grid Power of Scenario 22 (TDLA30-75 Fading) Figure 15. Heat Map for Resource Grid Power of Scenario 23 (TDLA30-300 Fading) f t f t f t f t 121/189 6 Measurement Uncertainty 6.1 Sources of Uncertainty There are 5 influencing factors which contribute to the measurement uncertainty according to the guidelines of the JCGM 100:2008 [2]. 1. Uncertainty of power reference: In the setup, two different calibrated power meters are used for establishing the SI traceability. In the calibration certificates of the power meters, the uncertainties of these power references are given. Depending on the type and the quality of the power meter, this uncertainty changes. It was found out that the power meter used for FR1 has lower standard uncertainty (0.025 dB) than the one used in FR2 (0.060 dB). 2. Resolution of oscilloscope: The oscilloscope used in the measurement chain has 8-bit resolution. The uncertainty in the voltage amplitude measured by the oscilloscope has a rectangular distribution with distribution factor of 1.73. The amount of the uncertainty is calculated as follows: 𝑢Scope(dB)=20∙log10(1+ 1 2 × 28)=0.017 dB (5) 3. Frequency response of the measurement chain: The characterization of the measurement chain using conventional measurement methods such as a VNA or similar would yield the uncertainty contribution from the frequency response of the measurement chain. This effect includes also the broadband characteristics of the chain. In this application, a signal having a bandwidth up to 50 MHz is measured using the chain. The RF mixer and the bandpass filters do not have the same conversion loss throughout the band. This source of uncertainty also considers this factor. The values of 0.03 dB and 0.08 dB for FR1 and FR2 respectively are obtained from the calibration of the chain and the conversion loss characteristics of RF mixer and bandpass filters. 4. Stability of SSS measurements: This factor is obtained by the overestimation of the standard deviation of 100 different SSS measurements. 5. Reproducibility: This source of uncertainty has been investigated and the corresponding contribution of 0.01 dB has been found by repeating measurements for the decoding of the whole resource grid for the exact same configuration. 128/189 Tap #1 Delay (ns) Power (dB) Fading Distribution 1 0 -16.1 Rayleigh 2 4 0 3 6 -4 4 8 -10.2 5 16 -18.6 6 18 -9.3 7 22 -13.7 8 24 -17.9 9 26 -13.5 10 30 -14 11 40 -15.4 12 44 -18.9 13 46 -21.0 14 48 -21.6 15 50 -19.3 16 96 -25.9 Table 19. TDLA10 (DS = 30 ns) [1] Tap #1 Delay (ns) Power (dB) Fading Distribution 1 0 -15.5 LOS Rayleigh 0 0 2 6 -5.1 3 14 -5.1 4 18 -9.6 5 26 -8.2 6 40 -13.1 7 80 -11.5 8 94 -11.0 9 98 -16.2 10 126 -16.6 Note: Tap #1 follow a Ricean distribution Table 20. TDLD10 (DS = 10 ns) [1] 129/189 Tap #1 Delay (ns) Power (dB) Fading Distribution 1 0 -0.2 LOS Rayleigh 0 -12.4 2 20 -21 3 40 -16.7 4 55 -18.3 5 80 -21.9 6 120 -27.8 7 240 -23.6 8 285 -24.8 9 290 -30.0 10 375 -27.6 Note: Tap #1 follow a Ricean distribution Table 21. TDLD30 (DS = 30 ns) [1] Combinations of channel model parameters The propagation conditions used for the performance measurements in multi-path fading environment are indicated as a combination of a channel model name and a maximum Doppler frequency, i.e., TDLA<DS>-<Doppler>, TDLB<DS>- <Doppler> or TDLC<DS>- <Doppler> where '<DS>' indicates the desired delay spread and '<Doppler>' indicates the maximum Doppler frequency (Hz) [1]. Table 22 and Table 23 show the propagation conditions that are used for the performance measurements in multipath fading environment for low, medium and high Doppler frequencies for FR1 and FR2, respectively [1]. Combination Name Tapped Delay Line Model Maximum Doppler Frequency TDLA30-5 TDLA30 5 Hz TDLA30-10 TDLA30 10 Hz TDLB100-400 TDLB100 400 Hz TDLC300-100 TDLC300 100 Hz TDLC300-600 TDLC300 600 Hz TDLC300-1200 TDLC300 1200 Hz Table 22. Channel model parameters for FR1 [1] 130/189 Combination Name Tapped Delay Line Model Maximum Doppler Frequency TDLA30-75 TDLA30 75 Hz TDLA30-300 TDLA30 300 Hz TDLA10-650 TDLA10 650 Hz TDLA30-650 TDLA30 650 Hz TDLD10-200 TDLD10 200 Hz TDLD30-200 TDLD30 200 Hz Table 23. Channel model parameters for FR2 [1] Federal Institute of Metrology METAS 131/189 ANNEX D 21NRM03 MEWS - Metrology for emerging wireless standards Evaluation of the 5G Decoding Algorithm with Over-the-Air Experimental Setup 132/189 Author: Emrah Tas Federal Institute of Metrology METAS Lindenweg 50 3003 Bern-Wabern 21NRM03 MEWS Activity number: A3.2.2 Version: 1.0 Date: July 29, 2024 133/189 Table of Contents 1 Introduction ................................................................................................................. 134 2 Measurement System Description .............................................................................. 135 3 Measurement Scenarios ............................................................................................. 136 3.1 Definition of Measurement Scenarios .................................................................. 136 4 Transmission Correction and SI Traceability ............................................................... 137 5 Measurements ............................................................................................................ 138 5.1 Overview ............................................................................................................. 138 5.2 Measurement Setup for 800 MHz ........................................................................ 139 5.3 Measurement Setup for 3500 MHz ...................................................................... 140 5.4 Measurement Setup for 25955 MHz .................................................................... 141 5.5 5G Signal Generation Settings............................................................................. 142 5.6 Power Levels ....................................................................................................... 143 5.7 Measurement Results .......................................................................................... 144 5.7.1 Power Analysis for the scenarios without fading ........................................... 144 5.7.2 Power of PSS and SSS REs for the scenarios with fading ............................ 145 6 Measurement Uncertainty ........................................................................................... 151 6.1 Sources of Uncertainty ........................................................................................ 151 6.2 Calculation of Measurement Uncertainty Budgets for Different Frequencies ........ 152 6.3 Discussion on Measurement Uncertainty Budget ................................................. 153 7 References ................................................................................................................. 154 134/189 1 Introduction In this document, the evaluation of the 5G NR downlink transmission decoding algorithm defined in MEWS activity A3.1.2 and developed in A3.1.3 with an over-the-air testbed is explained in detail. The over-the-air setup is a modified version of the setup defined in A3.2.1. The verification and the precision of the decoding are studied for the scenarios created for MEWS activity A3.2.1 [1] with the over-the-air measurements. Moreover, the robustness of the RF power detection is here also studied for different fading scenarios. Additionally, the SI-traceability of the measurements is also established for the over-the-air measurements and the measurement uncertainty is estimated following the guidelines of the JCGM 100:2008 (GUM) [2]. 135/189 2 Measurement System Description The measurement system for the demodulation of 5G NR downlink transmission to detect the RF power of signals of interest consists of two modules: Hardware and Software Modules (See Figure 1). Please refer [1] for more details on the operation principles. Figure 1. Block Diagram of the Measurement Setup Additionally, [3] and [4] can be consulted for the details on the hardware module and software modules, respectively. Oscilloscope LO RF Mixer Low-pass Filter Hardware Module DSP Software Module Power Analysis 5G Input Signal 136/189 3 Measurement Scenarios 3.1 Definition of Measurement Scenarios The selected measurements scenarios for the evaluation of the algorithm and the experimental setup are already defined in A3.2.1 and given again in Table 1 below. Scenario Number Numerology Frequency Range Center Frequency (MHz) Fading Scenario Channel Bandwidth (MHz) 1 0 FR1 800 None 20 2 0 FR1 3500 None 20 3 1 FR1 800 None 20 4 1 FR1 3500 None 20 5 0 FR1 800 TDLA30-5 20 6 0 FR1 3500 TDLA30-5 20 7 1 FR1 800 TDLA30-5 20 8 1 FR1 3500 TDLA30-5 20 9 0 FR1 800 TDLA30-10 20 10 0 FR1 3500 TDLA30-10 20 11 1 FR1 800 TDLA30-10 20 12 1 FR1 3500 TDLA30-10 20 13 0 FR1 800 TDLB100-400 20 14 0 FR1 3500 TDLB100-400 20 15 1 FR1 800 TDLB100-400 20 16 1 FR1 3500 TDLB100-400 20 17 0 FR1 800 TDLC300-100 20 18 0 FR1 3500 TDLC300-100 20 19 1 FR1 800 TDLC300-100 20 20 1 FR1 3500 TDLC300-100 20 21 3 FR2 25955 None 50 22 3 FR2 25955 TDLA30-75 50 23 3 FR2 25955 TDLA30-300 50 Table 1. Selected Measurement Scenarios 137/189 4 Transmission Correction and SI Traceability Similar to the study in [1], SI traceability of the measurements are established using a calibrated power meter. A single-tone sine wave is sequentially generated at all selected center frequencies given in Table 1 and transmitted over the transmitting antenna towards the measuring setup. The signal received over the receiving antenna is measured with a calibrated power meter. Then, the same received signal is measured using the hardware module of the measurement chain, and the results are compared and processed to obtain the corresponding correction factor. In this way, the path loss and other imperfections in the transmission can be compensated (See Figure 2). Figure 2. Setup for Establishing SI Traceability During the calibration, the power levels of the linear operation region of the hardware module are observed. The calibration is performed at 3 dBm input power level for 800 MHz and 6 dBm input power level for 3500 MHz and 25955 MHz. These selected power levels are applied on the peak envelope power (PEP) level during the measurements in order to ensure the linear operation of components in the measurement setup. The correction factors resulting from the calibration are applied to the hardware module readings. In this way, the traceability to known power reference is established. The detailed measurement uncertainty calculations are given in the Section 6. Oscilloscope LO RF Mixer Low-pass Filter Hardware Module Calibration Plane Sinus Generator Calibrated Power Meter Transmitting Antenna Receiving Antenna 144/189 5.7 Measurement Results Each scenario was measured three times with the testbed and the measurements were analysed using the software module. A detailed analysis for PSS and SSS resource element (RE) power detection was made for the scenarios without fading. For the scenarios with fading, the detected PSS and SSS RE powers and the maximum deviation between three measurements are given and the heat map of the resource grid power are depicted for the visualization of the effects of different fading characteristics. 5.7.1 Power Analysis for the scenarios without fading The power of each RE in either PSS and SSS can be calculated as given in (1): Power (each RE)dBm =10∙log10(Power DensitymW/Hz × Subcarrier SpacingHz) (1) where Power DensitymW/Hz =10Set PowerdBm 10 BandwidthHz (2) The theoretical RE power calculation for Scenario 1 is performed as follows: For Set Power = -7.69 dBm, Bandwidth = 20 MHz and SCS = 15 kHz (i.e. numerology 0) Power DensitymW/Hz =10−7.69 10 20×106=8.511×10−9 mW/Hz (3) and Power (each RE)dBm =10∙log10(8.511×10−9 ×15000)=−38.94 dBm (4) This calculation is repeated for Scenarios 1 to 4 and also for Scenario 21. For each scenario without fading, Table 6 and Table 7 present the PSS and SSS RE power analysis, respectively. These tables include the theoretical and the calculated RE powers, the differences of these values and the standard deviations of RE powers in a subframe. Measured RE power is calculated for both PSS and SSS as follows: For the first measurement, the average value of all detected PSS or SSS RE powers is calculated. This calculation is repeated for all three measurements and the average of three measurements is 145/189 obtained. The standard deviation is also calculated similarly. These results show that the theoretical and the measured RE powers for both PSS and SSS match very well with a low standard deviation, proving the stability of the detection algorithm and the testbed. Scenario Number Set Power on Generator (dBm) Theoretical SSS RE Power (dBm) Measured SSS RE Power (dBm) Difference of Theoretical Value and Measured Value (dB) Standard Deviation of SSS RE Powers in a Subframe (dB) 1 -7.69 -38.94 -38.79 -0.15 0.022 2 -4.78 -36.03 -36.32 0.29 0.109 3 -7.71 -35.95 -35.81 -0.14 0.022 4 -5.04 -33.28 -33.56 0.28 0.121 21 -5.03 -31.23 -31.07 -0.16 0.108 Table 6. PSS RE Power Analysis Scenario Number Set Power on Generator (dBm) Theoretical SSS RE Power (dBm) Measured SSS RE Power (dBm) Difference of Theoretical Value and Measured Value (dB) Standard Deviation of SSS RE Powers in a Subframe (dB) 1 -7.69 -38.94 -38.79 -0.15 0.014 2 -4.78 -36.03 -36.27 0.24 0.175 3 -7.71 -35.95 -35.82 -0.13 0.018 4 -5.04 -33.28 -33.45 0.17 0.160 21 -5.03 -31.23 -31.13 -0.10 0.105 Table 7. SSS RE Power Analysis 5.7.2 Power of PSS and SSS REs for the scenarios with fading For the scenarios with fading, PSS and SSS RE Powers are also measured for three times and the analysis is performed similar to the scenarios without fading. The deviation between these measurements is analyzed for understanding the effect of fading for different cases. Table 8 and Table 9 present these results for PSS and SSS, respectively. It can be observed that fading causes a change in the detected RF power of REs as expected. The deviation in the power reached up to 10.68 dB in the measurements. In order to visualize the effects of different fading characteristics, the heat maps of the whole resource grid are obtained for each scenario. These heat maps are given from Figure 8 to 146/189 Figure 17. Please note that these snapshots were taken from the resource grid region around the SSBs. REs of SSBs set to value 0 can be seen with rectangular shapes at the start of the resource grid, having the colour of dark red (representing very low power). These illustrations have the sole purpose of displaying the fading effects and does not include the detailed quantitative analysis. Scenario Number Measured PSS RE Power M1 (dBm) Measured PSS RE Power M2 (dBm) Measured PSS RE Power M3 (dBm) Maximum Deviation between Measurements (dB) 5 -53.10 -46.64 -43.65 9.45 6 -40.58 -47.02 -46.20 6.44 7 -49.03 -49.66 -44.23 5.43 8 -41.43 -48.02 -39.28 8.74 9 -57.16 -51.87 -52.17 5.29 10 -51.70 -44.76 -45.19 6.94 11 -44.84 -48.20 -41.90 6.30 12 -39.76 -42.87 -43.02 3.26 13 -46.74 -51.86 -48.45 5.12 14 -53.74 -44.54 -43.06 10.68 15 -41.31 -46.07 -45.81 4.76 16 -48.23 -45.38 -47.34 2.85 17 -56.44 -48.59 -50.88 6.85 18 -42.82 -47.17 -44.68 4.35 19 -44.63 -48.47 -41.66 6.81 20 -41.62 -44.18 -43.68 2.56 22 -36.16 -34.68 -36.20 1.52 23 -43.03 -36.66 -38.56 6.37 Table 8. PSS REs Power Analysis for Scenarios with Fading 147/189 Scenario Number Measured SSS RE Power M1 (dBm) Measured SSS RE Power M2 (dBm) Measured SSS RE Power M3 (dBm) Maximum Deviation between Measurements (dB) 5 -53.10 -46.66 -43.62 9.48 6 -40.53 -47.12 -46.18 6.59 7 -48.94 -49.76 -44.21 5.55 8 -41.38 -47.89 -39.25 8.64 9 -57.05 -51.95 -52.07 5.10 10 -51.67 -44.67 -45.11 7.00 11 -44.91 -48.16 -41.94 6.22 12 -39.74 -42.94 -43.03 3.29 13 -47.02 -55.94 -49.06 8.92 14 -51.16 -44.91 -44.76 6.40 15 -41.68 -45.66 -45.68 4.00 16 -48.61 -45.11 -47.20 3.50 17 -56.58 -48.64 -50.85 7.94 18 -42.87 -47.09 -46.08 4.22 19 -44.73 -48.61 -41.74 6.87 20 -41.65 -43.76 -43.79 2.14 22 -36.18 -34.63 --36.25 1.62 23 -43.02 -36.72 -38.52 6.30 Table 9. SSS REs Power Analysis for Scenarios with Fading Figure 8. Heat Maps for Resource Grid Power of Scenarios 5 (Left) and 6 (Right) (TDLA30-5 Fading) f t f t 148/189 Figure 9. Heat Maps for Resource Grid Power of Scenarios 7 (Left) and 8 (Right) (TDLA30-5 Fading) Figure 10. Heat Maps for Resource Grid Power of Scenarios 9 (Left) and 10 (Right) (TDLA30-10 Fading) Figure 11. Heat Maps for Resource Grid Power of Scenarios 11 (Left) and 12 (Right) (TDLA30-10 Fading) f t f t f t f t f t f t 149/189 Figure 12. Heat Maps for Resource Grid Power of Scenarios 13 (Left) and 14 (Right) (TDLB100-400 Fading) Figure 13. Heat Maps for Resource Grid Power of Scenarios 15 (Left) and 16 (Right) (TDLB100-400 Fading) Figure 14. Heat Maps for Resource Grid Power of Scenarios 17 (Left) and 18 (Right) (TDLC300-100 Fading) f t f t f t f t f t f t 150/189 Figure 15. Heat Maps for Resource Grid Power of Scenarios 19 (Left) and 20 (Right) (TDLC300-100 Fading) Figure 16. Heat Map for Resource Grid Power of Scenario 22 (TDLA30-75 Fading) Figure 17. Heat Map for Resource Grid Power of Scenario 23 (TDLA30-300 Fading) f t f t f t f t 151/189 6 Measurement Uncertainty 6.1 Sources of Uncertainty There are 6 influencing factors which contribute to the measurement uncertainty according to the guidelines of the JCGM 100:2008 [2]. 1. Uncertainty of power reference: In the setup, two different calibrated power meters are used for establishing the SI traceability. In the calibration certificates of the power meters, the uncertainties of these power references are given. Depending on the type and the quality of the power meter, this uncertainty changes. It was found out that the power meter used for FR1 has lower standard uncertainty (0.025 dB) than the one used in FR2 (0.060 dB). 2. Uncertainty of antenna factor: 3 different antenna types were used in the measurements. The calibration certificates of these antennas showed that for the antenna factor (and therefore, antenna gain), the respective uncertainties are 0.85 dB and 0.50 dB for FR1 and FR2, respectively. 3. Resolution of oscilloscope: The oscilloscope used in the measurement chain has 8-bit resolution. The uncertainty in the voltage amplitude measured by the oscilloscope has a rectangular distribution with distribution factor of 1.73. The amount of the uncertainty is calculated as follows: 𝑢Scope(dB)=20∙log10(1+ 1 2 × 28)=0.017 dB (5) 4. Frequency response of the measurement chain: The characterization of the measurement chain using conventional measurement methods such as a VNA or similar would yield the uncertainty contribution from the frequency response of the measurement chain. This effect includes also the broadband characteristics of the chain. In this application, a signal having a bandwidth up to 50 MHz is measured using the chain. The RF mixer and the bandpass filters do not have the same conversion loss throughout the band. This source of uncertainty also considers this factor. The values of 0.03 dB and 0.08 dB for FR1 and FR2 respectively are obtained from the calibration of the chain and the conversion loss characteristics of RF mixer and bandpass filters. 5. Stability of PSS/SSS measurements: This factor is obtained by the overestimation of the standard deviation of 100 different PSS/SSS measurements. 152/189 6. Reproducibility: This source of uncertainty has been investigated and the corresponding contribution of 0.01 dB has been found by repeating measurements for the decoding of the whole resource grid for the exact same configuration. 6.2 Calculation of Measurement Uncertainty Budgets for Different Frequencies The calculation of the measurement uncertainty budget according to [2] for FR 1 and FR2 are given in Table 10 and Table 11, respectively. Number Source of Uncertainty Uncertainty (dB) Distribution type Distribution factor Standard uncertainty (dB) 1 Uncertainty of power reference 0.025 Normal 2 0.013 2 Uncertainty of antenna factor 0.850 Normal 2 0.425 3 Resolution of oscilloscope (8 bits) 0.017 Rectangular 1.73 0.010 4 Frequency response of the measurement chain 0.030 Rectangular 1.73 0.017 5 Stability of PSS/SSS measurements 0.015 Normal 1 0.015 6 Reproducibility 0.010 Normal 1 0.010 Total (k=1) 0.426 Total (k=2) 0.852 Table 10. Measurement Uncertainty Budget for FR1 Measurements 153/189 Number Source of Uncertainty Uncertainty (dB) Distribution type Distribution factor Standard uncertainty (dB) 1 Uncertainty of power reference 0.060 Normal 2 0.030 2 Uncertainty of antenna factor 0.500 Normal 2 0.250 3 Resolution of oscilloscope (8 bits) 0.017 Rectangular 1.73 0.010 4 Frequency response of the measurement chain 0.080 Rectangular 1.73 0.046 5 Stability of PSS/SSS measurements 0.015 Normal 1 0.015 6 Reproducibility 0.010 Normal 1 0.010 Total (k=1) 0.257 Total (k=2) 0.514 Table 11. Measurement Uncertainty Budget for FR2 MHz Measurements 6.3 Discussion on Measurement Uncertainty Budget The measurement uncertainties reported in this document have been obtained by using the components given in Chapter 5. The calculations show that the goal measurement uncertainty of 0.5 dB (k=2) has been achieved for the measurements in FR2. For FR1, the uncertainty has increased due to the higher antenna factor uncertainty, which is the dominating component of the uncertainty budget. In order to reduce the overall uncertainty of the measurements, this main influencing factor must be improved. The calibrations of log-per and rigged horn antennas have intrinsically higher uncertainties. Another type of antenna (such as a horn antenna) can be used in order to reduce the associated uncertainty.