[Feature]Upload Modem source code

Change-Id: Id4294f30faced84d3e6fd6d5e61e1111bf287a37
diff --git a/mcu/tools/IQ_Analyzer/src/IQ_Params.py b/mcu/tools/IQ_Analyzer/src/IQ_Params.py
new file mode 100644
index 0000000..6a11623
--- /dev/null
+++ b/mcu/tools/IQ_Analyzer/src/IQ_Params.py
@@ -0,0 +1,137 @@
+

+###################################################################################################

+#                                                                    L T E   D E F I N I T I O N S                                                                    #

+###################################################################################################

+###################################################################################################

+#        LTE Bandwidth | 1.4 MHz   | 3.0 MHz   | 5.0 MHz   | 10.0 MHz   | 15.0 MHz   | 20.0 MHz   #

+#          Num. of RBs |     6     |    15     |    25     |     50     |            |    100     #

+# Occupied Subcarriers |    72     |   180     |   300     |    600     |            |   1200     #

+#                Nfft  |   128     |   256     |   512     |   1024     |            |   2048     #

+#                N_CP1 |    10     |    20     |    40     |     80     |            |    160     #

+#                N_CP2 |     9     |    18     |    36     |     72     |            |    144     #

+#      LTE_sample_rate | 1.92 Msps | 3.84 Msps | 7.68 Msps | 15.36 Msps | 23.04 Msps | 30.72 Msps #

+###################################################################################################

+# Notes:                                                                                          #

+# LTE_sample_rate  = 2*[(N_DL_sym-1)(N_fft+N_CP2) + (N_fft+N_CP1)] / (1 millisecond)              #

+#                                                                                                 #

+###################################################################################################

+

+####################################################################

+# ------------------ LTE-SPECIFIC PARAMATERS (B) ------------------#

+####################################################################

+

+

+class IqParams:

+

+    def __init__(self, chose_rate, Ncp_type):

+        self.Ncp_type = Ncp_type

+        self.is_averagedFrames = 1

+        self.is_avgSlidingWindow = 1

+        self.is_avgSlidingWindow = 1

+        self.num_avg_frames = 10

+        self.symAmount = 14

+        

+        if (chose_rate == 1.4):

+            

+            self.sample_rate = 1.92*pow(10,6)

+            self.numRB = 6;

+            self.Nfft = 128

+            self.analysis_frame_len = 1920

+            self.interp_freqSpectrum_lowLimit = -0.96*pow(10,6)

+            self.interp_freqSpectrum_upperLimit = 0.96*pow(10,6)

+            

+            if (Ncp_type == 1):

+                self.NCP1 = 10

+                self.NCP2 = 9

+            else:

+                self.NCP1 = 10

+                self.NCP2 = 9

+        

+        elif (chose_rate == 3):

+        

+            self.sample_rate = 3.84*pow(10,6)

+            self.numRB = 15;

+            self.Nfft = 256

+            self.analysis_frame_len = 3840

+            self.interp_freqSpectrum_lowLimit = -1.92*pow(10,6)

+            self.interp_freqSpectrum_upperLimit = 1.92*pow(10,6)

+            

+            if (Ncp_type == 1):

+                self.NCP1 = 20

+                self.NCP2 = 18

+            else:

+                self.NCP1 = 20

+                self.NCP2 = 18    

+        

+        elif (chose_rate == 5):

+        

+            self.sample_rate = 7.68*pow(10,6)

+            self.numRB = 25;

+            self.Nfft = 512

+            self.analysis_frame_len = 7680

+            self.interp_freqSpectrum_lowLimit = -3.84*pow(10,6)

+            self.interp_freqSpectrum_upperLimit = 3.84*pow(10,6)

+            

+            if (Ncp_type == 1):

+                self.NCP1 = 40

+                self.NCP2 = 36

+            else:

+                self.NCP1 = 40

+                self.NCP2 = 36

+        

+        elif (chose_rate == 10):

+        

+            self.sample_rate = 15.36*pow(10,6)

+            self.numRB = 50;

+            self.Nfft = 1024

+            self.analysis_frame_len = 15360

+            self.interp_freqSpectrum_lowLimit = -7.68*pow(10,6)

+            self.interp_freqSpectrum_upperLimit = 7.68*pow(10,6)

+            

+            if (Ncp_type == 1):

+                self.NCP1 = 80

+                self.NCP2 = 72

+            else:

+                self.NCP1 = 80

+                self.NCP2 = 72

+        

+        elif (chose_rate == 15): 

+        

+            #### FIX ME ####

+            self.sample_rate = 23.04*pow(10,6)

+            self.numRB = 75;

+            self.Nfft = 2048

+            self.analysis_frame_len = 1920

+            self.interp_freqSpectrum_lowLimit = -0.96*pow(10,6)

+            self.interp_freqSpectrum_upperLimit = 0.96*pow(10,6)

+            

+            if (Ncp_type == 1):

+                self.NCP1 = 160

+                self.NCP2 = 144

+            else:

+                self.NCP1 = 160

+                self.NCP2 = 144

+            #### FIX ME ####

+        

+        elif (chose_rate == 20):

+        

+            self.sample_rate = 30.72*pow(10,6)

+            self.numRB = 100;

+            self.Nfft = 2048

+            self.analysis_frame_len = 30720

+            self.interp_freqSpectrum_lowLimit = -15.36*pow(10,6)

+            self.interp_freqSpectrum_upperLimit = 15.36*pow(10,6)

+            

+            if (Ncp_type == 1):

+                self.NCP1 = 160

+                self.NCP2 = 144

+            else:

+                self.NCP1 = 160

+                self.NCP2 = 144

+        

+        else:

+            sys.exit('Invalid LTE rate')

+          #error('Invalid LTE rate');

+        

+        self.sample_time = 1/    self.sample_rate;

+        self.PSS_FFT_size = self.Nfft
\ No newline at end of file