Amarisoft

Channel Simulator - Callbox

 

This tutorial is about how to configure channel simulator for callbox and verify it using UEsim and Spectrum Analyzer(sdr_spectrum). Channel Simulator and sdr_spectrum is not a separate hardware, they are all software feature that comes with Callbox and UEsim. The Channel Simulator feature in Amarisoft Callbox support following features :

 

 

Table of Contents

 

 

Test Setup

Test setup for this tutorial is as shown below.  This is just for low layer testing, you may not need any complicated IP layer setup.

TestSetup Callbox UEsim 1sdr 01

 

 

Key Configuration Parameters

Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.

 

 

Configuration

I have used enb-chan-sim-ref.cfg that is copied and modified from enb.default.cfg. I will use the same file for all the test in this tutorial and just modify the parameters in the file without creating a new file.

Channel Simulator configuration or test result related to Config 01

I am using the default mme, ims config as shown below.

NR DSS Config 02

I used ue-enb-chan-sim-ref.cfg which is copied and modifed from ue.default.cfg on UEsim.

Channel Simulator configuration or test result related to Config 03

Following is the basic configuration in enb-chan-sim-ref.cfg and only channel_dl:{ } part will be changed for each of the test and all other parts would remain same.

NOTE : In most of Amarisoft default sample configuration files on callbox, it comes out with flag CHANNEL_SIM so that you can easily enable or disable channel simulation. If you are using the configuration that does not have this part, you can type in the configuration yourself as shown in this example.

Channel Simulator configuration or test result related to Config 04

I configured physical layer scheduler parameters so that I can schedule PDSCH and PUSCH continuously with specific modulation scheme and the number of PRBs that I like without injecting any IP layer data. This is not mandatory to enable channel simulation, but I applied these configuration just to create the same signals with constant modulation scheme to better visualize the effect of channel simulation.

Channel Simulator configuration or test result related to Config 05

Channel Simulator configuration or test result related to Config 06

Following is the basic configuration in ue-enb-chan-sim-ref.cfg .cfg. The configuration here should match the configuration of Callbox(gNB). The only thing to be set independantly are tx_gain and rx_gain that should be adjusted depending on test setup.

Channel Simulator configuration or test result related to Config 07

 

Perform the Test

I will follow the same procedure as shown here for all the test in this tutorial.

Check if the cell is configured as intended by checking the output of 'cell phy'

Channel Simulator configuration or test result related to Run 01

Power on UE (UEsim in this tutorial) and make it sure that the connection is established.

Channel Simulator configuration or test result related to Run 02

 

Analysis of Constellation

For constellation check, run WebGUI on UEsim with the following logging option('singal' checked). This option is to capture I/Q data in the log.

Channel Simulator configuration or test result related to Run 03

Run Constellation as shown below.  You can check on the constellation visually and by checking per value.

Channel Simulator configuration or test result related to Run 04

 

Analysis on Spectrum Analyzer

For the verification with spectrum analyzer (sdr_spectrum), you can run sdr_spectrum on a sdr which is not used for the test. I am using an sdr card on callbox since all the test is being done with antenna, but you can use the sdr_spectrum/sdr card on UEsim as well.  (NOTE : If you are not familiar with utilization of spectrum analyzer, check out this tutorial)

This is the command line command that I used  to run the sdr (NOTE : Exact command parameters should be changed based on the specific test case and sdr card availability on your system)

./sdr_spectrum -arg="dev0=/dev/sdr2", -rx_freq 2680e6

NOTE : You can get this spectrum either from callbox or from UEsim. It would be better to use UEsim (the reciever) in this case since it would better represent the real signal quality being percieved by the reciever. But if you have only callbox and does not have UEsim, you can use the sdr card  on callbox which is not being used for call connection with UE for the spectrum analysis. For this specific tutorial, I used the sdr card 1 (sdr1) for the call connection with UE and used sdr card2 for this spectrum analysis.

Channel Simulator configuration or test result related to Run 05

This is frequency domain waveform (we normall call this 'Frequency Spectrum')

Channel Simulator configuration or test result related to Run 06

Following shows the time vs power plot (in some cases we call this as 'Zero Span plot').

Channel Simulator configuration or test result related to Run 07

 

 

Test 1 :  AWGN

In this test, I will show you how to inject AWGN to do downlink signal of gNB and change the level of AWGN.  There would be users who wants to change SNR for the transmitted signal from gNB and we don't have any explicit configuration parameter to set SNR. But using this awgn injection capability, you can simulate varying SNR of the transmitted signal.

In this test, I will set the channel simulator type to "awgn" and see the constellation / spectrum at various noise_level

Channel Simulator configuration or test result related to Test1 Config 01

Channel Simulator configuration or test result related to Test1 Config 02

 

noise_level = -30

This test shows the case where adding -30dB AWGN to the signal carrying QAM data.

In terms of the constellation, -30dB AWGN shows almost no negative impact on the signal decoding since per shows 0.0%. This is the signal capture and analysis from the reciever (in this case Amarisoft UEsim) using WebGUI.

Channel Simulator configuration or test result related to Test1 awgn level m30 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. Usually it would not get much of noticiable changes in frequency spectrum with AWGN because the level of AWGN is much smaller comparing to the signal. If the AWGN is so high to be noticiable on spectrum, it would be highly likely that the connection would be broken and call drop would happen).

Channel Simulator configuration or test result related to Test1 awgn level m30 02

Following shows time domain plot. Usually it would not get much of noticiable changes in frequency spectrum with AWGN because the level of AWGN is much smaller comparing to the signal and the amlitude is represnted in log scale. If the AWGN is so high to be noticiable on spectrum, it would be highly likely that the connection would be broken and call drop would happen).

Channel Simulator configuration or test result related to Test1 awgn level m30 03

 

noise_level = -20

This test shows the case where adding -20dB AWGN to the signal carrying QAM data.

In terms of the constellation, -20dB AWGN shows almost no negative impact on the signal decoding since per shows 0.0%. This is the signal capture and analysis from the reciever (in this case Amarisoft UEsim) using WebGUI.

Channel Simulator configuration or test result related to Test1 awgn level m20 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. Usually it would not get much of noticiable changes in frequency spectrum with AWGN because the level of AWGN is much smaller comparing to the signal. If the AWGN is so high to be noticiable on spectrum, it would be highly likely that the connection would be broken and call drop would happen).

Channel Simulator configuration or test result related to Test1 awgn level m20 02

Following shows time domain plot. Usually it would not get much of noticiable changes in frequency spectrum with AWGN because the level of AWGN is much smaller comparing to the signal and the amlitude is represnted in log scale. If the AWGN is so high to be noticiable on spectrum, it would be highly likely that the connection would be broken and call drop would happen).

Channel Simulator configuration or test result related to Test1 awgn level m20 03

 

noise_level = -10

This test shows the case where adding -30dB AWGN to the signal carrying QAM data.

In terms of the constellation, -30dB AWGN shows almost no negative impact on the signal decoding since per shows 0.0%. This is the signal capture and analysis from the reciever (in this case Amarisoft UEsim) using WebGUI.

Channel Simulator configuration or test result related to Test1 awgn level m10 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. Usually it would not get much of noticiable changes in frequency spectrum with AWGN because the level of AWGN is much smaller comparing to the signal. If the AWGN is so high to be noticiable on spectrum, it would be highly likely that the connection would be broken and call drop would happen).

Channel Simulator configuration or test result related to Test1 awgn level m10 02

Following shows time domain plot. Usually it would not get much of noticiable changes in frequency spectrum with AWGN because the level of AWGN is much smaller comparing to the signal and the amlitude is represnted in log scale. If the AWGN is so high to be noticiable on spectrum, it would be highly likely that the connection would be broken and call drop would happen).

Channel Simulator configuration or test result related to Test1 awgn level m10 03

 

 

Test 2 : Single Path - Rayleigh

In this test, I want to show you how to apply fading to the transmit signal from callbox (eNB or gNB). For the simplicity and to better visualize the effect of each of the fading components, I applied only one Rayleigh channel(one tab) to the signal. In this test, I am trying to show the effect of doppler shift on the configured fading channel, but you may try changing other parameters as per your necessity.

In short, I wanted to share the intution as shown below.

sdr spectrum ChanSim Doppler Animation 02.gif

NOTE : If you are not familiar with the concept of Fading, you may check out this note.

Following is the basic configuration in enb-chan-sim-ref.cfg and only channel_dl:{ } part will be changed for each of the test and all other parts would remain same.

NOTE : In most of Amarisoft default sample configuration files on callbox, it comes out with flag CHANNEL_SIM so that you can easily enable or disable channel simulation. If you are using the configuration that does not have this part, you can type in the configuration yourself as shown in this example.

Channel Simulator configuration or test result related to Test2 Config 01

Channel Simulator configuration or test result related to Test2 Config 02

 

freq_doppler = 50

This test shows the case where 50Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test2 freq doppler 50 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test2 freq doppler 50 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot.

Channel Simulator configuration or test result related to Test2 freq doppler 50 03

 

freq_doppler = 100

This test shows the case where 100Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test2 freq doppler 100 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test2 freq doppler 100 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively.

Channel Simulator configuration or test result related to Test2 freq doppler 100 03

 

freq_doppler = 200

This test shows the case where 200Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test2 freq doppler 200 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test2 freq doppler 200 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively.

Channel Simulator configuration or test result related to Test2 freq doppler 200 03

 

freq_doppler = 300

This test shows the case where 300Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test2 freq doppler 300 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test2 freq doppler 300 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively.

Channel Simulator configuration or test result related to Test2 freq doppler 300 03

 

freq_doppler = 400

This test shows the case where 400Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test2 freq doppler 400 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test2 freq doppler 400 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively.

Channel Simulator configuration or test result related to Test2 freq doppler 400 03

 

freq_doppler = 500

This test shows the case where 500Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test2 freq doppler 500 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test2 freq doppler 500 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively.

Channel Simulator configuration or test result related to Test2 freq doppler 500 03

 

freq_doppler = 1000

This test shows the case where 1000Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test2 freq doppler 1000 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test2 freq doppler 1000 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively.

Channel Simulator configuration or test result related to Test2 freq doppler 1000 03

 

 

Test 3 : Multi Path - Rayleigh

In this test, I want to show you how to apply fading to the transmit signal from callbox (eNB or gNB). Basically the usage is similar to the previous test, but in this test I will add more tabs in fading profile. In this way, you may apply the faiding profile similar to what is defined in 3GPP specification. In this test, I am trying to show the effect of doppler shift on the configured fading channel, but you may try changing other parameters as per your necessity.

NOTE : If you are not familiar with the concept of Fading, you may check out this note.

Following is the basic configuration in enb-chan-sim-ref.cfg and only channel_dl:{ } part will be changed for each of the test and all other parts would remain same.

NOTE : In most of Amarisoft default sample configuration files on callbox, it comes out with flag CHANNEL_SIM so that you can easily enable or disable channel simulation. If you are using the configuration that does not have this part, you can type in the configuration yourself as shown in this example.

Channel Simulator configuration or test result related to Test3 Config 01

Channel Simulator configuration or test result related to Test3 Config 02

NOTE : The configuration shown in this example is for SISO case, if you want to do with MIMO you need to change the dimension of channel_matrix according to your mimo configuration. For example, if you are using 2x2 MIMO, the channel_matrix diemention should be 2x2 as well.  For example, you may set as follows.

           { type: "constant", gain: 0.0 , delay: 0, channel_matrix: [[ 1,0 ],[0,1]] },

NOTE :  For rayleigh path with MIMO, you can omit 'mimo_correlation' if you are OK with applying the default configuration, but you may configure 'mimo_correlation' if you want to apply your own specific correlation matrix.

 

freq_doppler = 100

This test shows the case where 100Hz doppler shift is applied. I applied the same doppler shift (i.e, freq_doppler) to every rayleigh component.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test3 freq doppler 100 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test3 freq doppler 100 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot.

Channel Simulator configuration or test result related to Test3 freq doppler 100 03

 

freq_doppler = 1000

This test shows the case where 1000Hz doppler shift is applied. I applied the same doppler shift (i.e, freq_doppler) to every rayleigh component.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test3 freq doppler 1000 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test3 freq doppler 1000 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively

Channel Simulator configuration or test result related to Test3 freq doppler 1000 03

 

 

Test 4 : 3GPP Profile

Basically this test is similar to previous test trying to apply complicated channel profile, something like the profile defined in 3GPP specification. But in case of 3GPP profile, we provide a configuration parameter to allow you to apply the profile in very simple way.

NOTE : If you are not familiar with the concept of Fading, you may check out this note.

Following is the basic configuration in enb-chan-sim-ref.cfg and only channel_dl:{ } part will be changed for each of the test and all other parts would remain same.

NOTE : In most of Amarisoft default sample configuration files on callbox, it comes out with flag CHANNEL_SIM so that you can easily enable or disable channel simulation. If you are using the configuration that does not have this part, you can type in the configuration yourself as shown in this example.

Channel Simulator configuration or test result related to Test4 Config 01

Channel Simulator configuration or test result related to Test4 Config 02

 

EVA, freq_doppler = 1000

This test shows the case where EVA profile and 1000Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test4 eva doppler freq 1000 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test4 eva doppler freq 1000 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively

Channel Simulator configuration or test result related to Test4 eva doppler freq 1000 03

 

EPA, freq_doppler = 1000

This test shows the case where EPA profile and 1000Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test4 epa doppler freq 1000 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test4 epa doppler freq 1000 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively

Channel Simulator configuration or test result related to Test4 epa doppler freq 1000 03

 

ETU, freq_doppler = 1000

This test shows the case where EPA profile and 1000Hz doppler shift is applied.

In terms of the constellation shown in WebGUI, you may not see the noticiable fading effect because this constellation is obtained after equalization. In this case, considerable part of random amplitude variation due to the fading would be reflected on the constellation but frequency drift due to doppler shift would not appear clearly since those impacts get corrected (compensated) by equalizer.

Channel Simulator configuration or test result related to Test4 etu doppler freq 1000 01

This is the capture of the signal using the built-in spectrum analyzer (called sdr_spectrum) as explained here.

Following shows frequency spectrum. You would see a little bit of larger variation in the amplitude, but not an huge variation in frequency spectrum.

Channel Simulator configuration or test result related to Test4 etu doppler freq 1000 02

Following shows time domain plot. You would get more noticiable difference (effect) of fading in time domain plot. Compare this with the result of the previous test and you would notice the effect of doppler shift more intuitively

Channel Simulator configuration or test result related to Test4 etu doppler freq 1000 03