diff gsm-fw/L1/include/l1_ctl.h @ 530:25a7fe25864c

gsm-fw/L1/include: switch to LoCosto versions of all header files
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Fri, 01 Aug 2014 16:38:35 +0000
parents d0de2d0a426d
children de635895e0be
line wrap: on
line diff
--- a/gsm-fw/L1/include/l1_ctl.h	Tue Jul 15 22:19:53 2014 +0000
+++ b/gsm-fw/L1/include/l1_ctl.h	Fri Aug 01 16:38:35 2014 +0000
@@ -1,23 +1,55 @@
 /************* Revision Controle System Header *************
- *                  GSM Layer 1 software 
+ *                  GSM Layer 1 software
  * L1_CTL.H
  *
  *        Filename l1_ctl.h
- *  Copyright 2003 (C) Texas Instruments  
+ *  Copyright 2003 (C) Texas Instruments
  *
  ************* Revision Controle System Header *************/
 
 /************************************/
 /* Automatic timing control (TOA)   */
 /************************************/
-#define  C_RED              1   // Factor used to reduce the maximum accumulated values. 
-                                // Default : 1/2 
-#define  C_GEW              1   // Weighting factor. Default : 1/2   
+#define  C_RED              1   // Factor used to reduce the maximum accumulated values.
+                                // Default : 1/2
+#define  C_GEW              1   // Weighting factor. Default : 1/2
 
 #define  C_SNRGR         2560   // 2.5 F6.10
 #define  C_SNR_THR       8192   // 8   F6.10
-#define  TOA_HISTO_LEN   11     // Histogram length          
+#define  TOA_HISTO_LEN   11     // Histogram length
+
+#define   IL_FOR_RXLEV_SNR      220 // RX POWER LEVEL  //increased from 210 to 220
 
+#if (TOA_ALGO == 2)
+  #define   L1_TOA_SCALING_CONSTANT    (32768)    // L1_TOA_SCALING_CONSTANT
+  #define   L1_TOA_LAMBDA              (0x7800)   // 0.9375 represented in Q15 i.e. 0.9375*32768
+  #define   L1_TOA_ONE_MINUS_LAMBDA    (0x0800)   // 0.0625 represented in Q15 i.e. 0.0625*32768
+  #define   L1_TOA_THRESHOLD_15        (0x1333)   // 0.15 in Q15
+  #define   L1_TOA_THRESHOLD_20        (0x1999)   // 0.20 in Q15
+  #define   L1_TOA_THRESHOLD_25        (0x2000)   // 0.25 in Q15
+  #define   L1_TOA_THRESHOLD_30        (0x2666)   // 0.30 in Q15
+  #if (CODE_VERSION == SIMULATION)
+    #define   L1_TOA_SNR_THRESHOLD       (0)      // For simulator the threshold is made zero to facilitate
+                                                  // TOA testing in simulator
+  #else
+    #if (NEW_SNR_THRESHOLD == 0)
+    #define   L1_TOA_SNR_THRESHOLD       (480)    // 0x1E0 in F6.10 is equal to 0.46875
+    #else
+    #define   L1_TOA_SNR_THRESHOLD       (2048)    // 0x1E0 in F6.10 is equal to 0.46875
+	#endif /* NEW_SNR_THRESHOLD*/
+
+  #endif
+  #if (CODE_VERSION == SIMULATION)
+    #define   L1_TOA_EXPECTED_TOA        (14)       // Expected TOA on the MCU side
+  #else
+    #define   L1_TOA_EXPECTED_TOA        (14)       // Expected TOA on the MCU side
+  #endif
+#endif
+
+#if (NEW_SNR_THRESHOLD == 1)
+  #define SAIC_OFF (0)
+  #define SAIC_ON  (1)
+#endif /* NEW_SNR_THRESHOLD */
 /************************************/
 /* Automatic Gain Control (AGC)     */
 /************************************/
@@ -28,30 +60,56 @@
 /************************************/
 /* Automatic frequency compensation */
 /************************************/
-#define  C_thr_snr        2560     //  1/0.4    * 2**10               
-#define  C_thr_P          524288L  //  0.5      * 2**20               
-#define  C_cov_start      838861L  //  0.8      * 2**20               
-#define  C_a0_kalman      10486L   //  0.01     * 2**20               
-#define  C_g_kalman       53687091L//  0.05     * 2**30               
+#if (L1_SAIC == 1)
+#define  C_thr_snr        2048//  1/0.4    * 2**10   - CQ no- 76320
+#else
+#define  C_thr_snr        2560     //  1/0.4    * 2**10
+#endif
+#define  C_thr_P          524288L  //  0.5      * 2**20
+#define  C_cov_start      838861L  //  0.8      * 2**20
+#define  C_a0_kalman      10486L   //  0.01     * 2**20
+#define  C_g_kalman       53687091L//  0.05     * 2**30
 #define  C_N_del          2        //  delay of frequency control loop
-                                   //  due to C W R pipeline          
-#define  C_Q              3L       //  0.000003 * 2**20               
-#define  C_thr_K          209715L  //  0.2      * 2**20               
+                                   //  due to C W R pipeline
+#define  C_Q              3L       //  0.000003 * 2**20
+#define  C_thr_K          209715L  //  0.2      * 2**20
 #define  C_thr_phi        328      //  0.01     * 2**15
 
 #if (VCXO_ALGO == 1)
   #define  C_WIN_AVG_SIZE_M       64  // average size M
   #define  C_PSI_AVG_SIZE_D       32  // distance size D
   #define  C_MSIZE                (C_WIN_AVG_SIZE_M * C_PSI_AVG_SIZE_D) // Data history for predictor
-  #define  C_RGAP_BAD_SNR_COUNT_B 32  // bad SNR count B 
+  #define  C_RGAP_BAD_SNR_COUNT_B 32  // bad SNR count B
   #define  ALGO_AFC_RXGAP            1  // reception gap algo
   #define  ALGO_AFC_KALMAN           1  // Kalman filter
   #define  ALGO_AFC_LQG_PREDICTOR    2  // LQG filter + rgap predictor
   #define  ALGO_AFC_KALMAN_PREDICTOR 3 // Kalman filter + rgap predictor
 #endif
 
-#if ((ANALOG == 1) || (ANALOG == 2) || (ANALOG == 3))
+#if ((ANLG_FAM == 1) || (ANLG_FAM == 2) || (ANLG_FAM == 3) || (ANLG_FAM == 11))
    // clipping related to AFC DAC linearity range
-  #define  C_max_step        32000   //   4000 * 2**3                    
-  #define  C_min_step       -32000   //  -4000 * 2**3                   
+  #define  C_max_step        32000   //   4000 * 2**3
+  #define  C_min_step       -32000   //  -4000 * 2**3
+#endif
+
+/***************************************************/
+/* SAIC (Single Antenna Interference Cancellation) */
+/***************************************************/
+
+#if (L1_SAIC != 0)
+#define   L1_SAIC_GENIE_GSM_GPRS_IDLE_THRESHOLD        192 // Input Level Threshold for GSM/GPRS Idle.
+  #define   L1_SAIC_GENIE_GSM_DEDIC_THRESHOLD          192 // Input Level Threshold for GSM Dedicated. 
+  #define   L1_SAIC_GENIE_GPRS_PCKT_TRAN_THRESHOLD     192 // Input Level Threshold for GPRS Packet Transfer  
 #endif
+
+
+#define  L1_SAIC_HARDWARE_FILTER     (1)
+#define  L1_SAIC_PROGRAMMABLE_FILTER (0)
+
+//Locosto. For Locosto psi_quant = F14.2  else F13.3
+#if(RF_FAM == 61)
+#define CONVERT_PSI_QUANT(value) (value >> 2)
+#else
+#define CONVERT_PSI_QUANT(value) (value >> 3)
+#endif
+