Applicable VersionsNetSim StandardNetSim Pro


5G communication environments are expected to be used alone in a few actual cases. Instead, typically, they are expected to be added to existing communication environments with LTE, Wi-Fi, etc. In these environments, the spurious emissions generated in the devices can result in communication interference.

  

Spurious emissions are defined as excess signals other than the communication signals themselves, and they include communication signals from other communication and high-order harmonics.


Note: The settings may vary for different releases of NetSim. Please follow the steps mentioned under the appropriate release. The following article contains steps to be followed for both NetSim v12.2 and v13.0


The sample configuration file and experiment file are attached below for reference. Please download and extract the file based on the version of NetSim you are using.


Applicable Releasev13.0


Scenario:


Network Settings:


1. Configure the properties as shown in the table below:


gNB Properties -> Interface (5G_RAN) 

Outdoor scenario

RURAL_MACRO

Pathloss Model

3GPPTR38.901-7.4.1

LOS/NLOS Selection

User Defined

LOS Probability0

Tx Antenna Count

8

Rx Antenna Count

4

Shadow Fading ModelNone
Fading and BeamformingNo Fading
O2I Building Penetration Model
None
Additional LossNone

Frequency Range  

FR1

CA_Type

SINGLE_BAND

CA_Configuration

n78

DL/UL Ratio

4:1

CA1

Numerology

2

Channel Bandwidth

50 MHz

MCS Table

QAM256

CQI Table

TABLE2


2. Set Uplink speed and Downlink speed as 10000 Mbps.


3. Set the Tx Antenna Count as 4 and Rx Antenna Count as 8 in UE properties.


4. Configure a Downlink applications with source node as 10 destination node as 8. Set the Transport Protocol to UDP in both the applications along with other settings given in the table below:


Application Properties

 

App_CBR_UDP_DL

Packet Size (Byte)

1460

Inter Arrival Time (µs)

2.92


5. Run simulation for 1.1 sec. After the simulation completes note down the throughput from the application metrics table which is part of the results dashboard.



Result:


Upon analyzing the impact of spurious noise on the Throughput and SNR, 


Spurious Noise (dB)

Throughput (Mbps)

SNR (dB)

0dB

309.404.27

1dB

309.403.27

5dB

187.81-0.72

10dB

44.15-5.72

15dB

0-10.72

20dB

0-15.72


We can see that as spurious noise increases throughput and SNR drops accordingly.


Applicable Releasev12.2


Scenario:

Network Settings:


1. Configure the properties as shown in the table below:


gNB Properties -> Interface (LTE_NR) 

Outdoor scenario

RURAL_MACRO

Channel Characteristics

PATHLOSS_ONLY

LOS Mode

TR38_901_STANDARD

Downlink_MIMO_Layer_Count

8

UplinkMIMOLayer Count

4

Frequency Range  

FR1

CA_Type

SINGLE_BAND

CA_Configuration

n78

DL/UL Ratio

4:1

CA1

Numerology

2

Channel Bandwidth

50 MHz

MCS Table

QAM256

CQI Table

TABLE2


2. Set Uplink speed and Downlink speed as 100000 Mbps.


3. Configure 2 Downlink applications with source node as 4 destination node as 2. Set the Transport Protocol to UDP in both the applications along with other settings given in the table below:


Application Properties

 

App_CBR_UDP_DL

Packet Size (Byte)

1460

Inter Arrival Time (µs)

2.92


4. Run simulation for 1.1 sec. After the simulation completes note down the throughput from the application metrics table which is part of the results dashboard.


Result:


Upon analyzing the impact of spurious noise on the Throughput and SNR, 


Spurious Noise (dB)

Throughput (Mbps)

SNR (dB)

0dB

321.78

1.17

1dB

321.78

0.17

5dB

194.70

-3.82

10dB

82.81

-8.82

15dB

49.64

-13.82

20dB

49.64

-18.82


We can see that as spurious noise increases throughput and SNR drops accordingly.


Code Modification: 


The source code of the LTENR_PHY.c file which is part of the LTE_NR source code project is modified as shown below (changes highlighted in red):


static double LTENR_PHY_calculateThermalNoise(double bandwidth)

{

       double noise = BOLTZMANN * TEMPERATURE * bandwidth * 1000000; //in W

       double spurious_noise = 1;// 1dB to 20dB

       noise *= 1000; // in mW

       double noise_dbm = MW_TO_DBM(noise);

       noise_dbm += spurious_noise;

       return noise_dbm;

}