| 1 | /****************************************************************************** |
|---|
| 2 | * (c)2011-2012 Broadcom Corporation |
|---|
| 3 | * |
|---|
| 4 | * This program is the proprietary software of Broadcom Corporation and/or its licensors, |
|---|
| 5 | * and may only be used, duplicated, modified or distributed pursuant to the terms and |
|---|
| 6 | * conditions of a separate, written license agreement executed between you and Broadcom |
|---|
| 7 | * (an "Authorized License"). Except as set forth in an Authorized License, Broadcom grants |
|---|
| 8 | * no license (express or implied), right to use, or waiver of any kind with respect to the |
|---|
| 9 | * Software, and Broadcom expressly reserves all rights in and to the Software and all |
|---|
| 10 | * intellectual property rights therein. IF YOU HAVE NO AUTHORIZED LICENSE, THEN YOU |
|---|
| 11 | * HAVE NO RIGHT TO USE THIS SOFTWARE IN ANY WAY, AND SHOULD IMMEDIATELY |
|---|
| 12 | * NOTIFY BROADCOM AND DISCONTINUE ALL USE OF THE SOFTWARE. |
|---|
| 13 | * |
|---|
| 14 | * Except as expressly set forth in the Authorized License, |
|---|
| 15 | * |
|---|
| 16 | * 1. This program, including its structure, sequence and organization, constitutes the valuable trade |
|---|
| 17 | * secrets of Broadcom, and you shall use all reasonable efforts to protect the confidentiality thereof, |
|---|
| 18 | * and to use this information only in connection with your use of Broadcom integrated circuit products. |
|---|
| 19 | * |
|---|
| 20 | * 2. TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS" |
|---|
| 21 | * AND WITH ALL FAULTS AND BROADCOM MAKES NO PROMISES, REPRESENTATIONS OR |
|---|
| 22 | * WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH RESPECT TO |
|---|
| 23 | * THE SOFTWARE. BROADCOM SPECIFICALLY DISCLAIMS ANY AND ALL IMPLIED WARRANTIES |
|---|
| 24 | * OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE, |
|---|
| 25 | * LACK OF VIRUSES, ACCURACY OR COMPLETENESS, QUIET ENJOYMENT, QUIET POSSESSION |
|---|
| 26 | * OR CORRESPONDENCE TO DESCRIPTION. YOU ASSUME THE ENTIRE RISK ARISING OUT OF |
|---|
| 27 | * USE OR PERFORMANCE OF THE SOFTWARE. |
|---|
| 28 | * |
|---|
| 29 | * 3. TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM OR ITS |
|---|
| 30 | * LICENSORS BE LIABLE FOR (i) CONSEQUENTIAL, INCIDENTAL, SPECIAL, INDIRECT, OR |
|---|
| 31 | * EXEMPLARY DAMAGES WHATSOEVER ARISING OUT OF OR IN ANY WAY RELATING TO YOUR |
|---|
| 32 | * USE OF OR INABILITY TO USE THE SOFTWARE EVEN IF BROADCOM HAS BEEN ADVISED OF |
|---|
| 33 | * THE POSSIBILITY OF SUCH DAMAGES; OR (ii) ANY AMOUNT IN EXCESS OF THE AMOUNT |
|---|
| 34 | * ACTUALLY PAID FOR THE SOFTWARE ITSELF OR U.S. $1, WHICHEVER IS GREATER. THESE |
|---|
| 35 | * LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF |
|---|
| 36 | * ANY LIMITED REMEDY. |
|---|
| 37 | * |
|---|
| 38 | * $brcm_Workfile: bads_coef.h $ |
|---|
| 39 | * $brcm_Revision: 10 $ |
|---|
| 40 | * $brcm_Date: 2/9/12 12:44p $ |
|---|
| 41 | * |
|---|
| 42 | * Module Description: |
|---|
| 43 | * |
|---|
| 44 | * Revision History: |
|---|
| 45 | * |
|---|
| 46 | * $brcm_Log: /AP/ctfe/core/ads/bads_coef.h $ |
|---|
| 47 | * |
|---|
| 48 | * 10 2/9/12 12:44p farshidf |
|---|
| 49 | * SW3128-1: merge to main |
|---|
| 50 | * |
|---|
| 51 | * Fw_Integration_Devel/2 2/9/12 12:14p farshidf |
|---|
| 52 | * SW3128-1: merge to integ |
|---|
| 53 | * |
|---|
| 54 | * Fw_Integration_Devel/AP_V3_0_ADS_DEV/2 1/30/12 5:16p cbrooks |
|---|
| 55 | * sw3128-1:scaled coefficients for low baud rate |
|---|
| 56 | * |
|---|
| 57 | * Fw_Integration_Devel/AP_V3_0_ADS_DEV/1 12/12/11 4:14p cbrooks |
|---|
| 58 | * sw3128-1:added FOI coefficients |
|---|
| 59 | * |
|---|
| 60 | * 8 6/9/11 6:14p mpovich |
|---|
| 61 | * SW3461-1: Merge Ver 0.4 Integ. onto main branch. |
|---|
| 62 | * |
|---|
| 63 | * SW_System_4_Integ_Test/1 6/9/11 11:43a mpovich |
|---|
| 64 | * SW3461-1: Integrate latest from all devel. branches . |
|---|
| 65 | * |
|---|
| 66 | * ADS_3128_3/4 6/2/11 11:50a farshidf |
|---|
| 67 | * SW3128-1: update the header file |
|---|
| 68 | * |
|---|
| 69 | * 7 6/2/11 10:50a farshidf |
|---|
| 70 | * SW3128-1: move the code to c file |
|---|
| 71 | * |
|---|
| 72 | * 6 5/10/11 3:12p farshidf |
|---|
| 73 | * SW3128-1: merge main |
|---|
| 74 | * |
|---|
| 75 | * ADS_3128_3/3 5/5/11 8:14p cbrooks |
|---|
| 76 | * sw3128-1:Cleanup Code |
|---|
| 77 | * |
|---|
| 78 | * ADS_3128_3/2 5/1/11 3:30p cbrooks |
|---|
| 79 | * sw3128-1:Cleaned up Channel Scan Code |
|---|
| 80 | * |
|---|
| 81 | * ADS_3128_3/1 4/28/11 1:08p cbrooks |
|---|
| 82 | * sw3128-1:New Code for scan |
|---|
| 83 | * |
|---|
| 84 | * 4 4/26/11 6:52p farshidf |
|---|
| 85 | * SW3128-1: merge main |
|---|
| 86 | * |
|---|
| 87 | * ADS_3128_2/1 4/26/11 4:25p cbrooks |
|---|
| 88 | * sw3128-1:New code for 330 |
|---|
| 89 | * |
|---|
| 90 | *****************************************************************************/ |
|---|
| 91 | |
|---|
| 92 | #ifndef BADS_COEF_H__ |
|---|
| 93 | #define BADS_COEF_H__ |
|---|
| 94 | |
|---|
| 95 | #ifdef __cplusplus |
|---|
| 96 | extern "C" { |
|---|
| 97 | #endif |
|---|
| 98 | |
|---|
| 99 | #define NUM_QAM_MODES 7 |
|---|
| 100 | #define NUM_BAUD_RATES 33 |
|---|
| 101 | #define REQUIRED_SNR16Q 13 |
|---|
| 102 | #define SYSTEM_NF 0 |
|---|
| 103 | |
|---|
| 104 | extern const uint32_t BaudRates_TBL[NUM_BAUD_RATES]; |
|---|
| 105 | extern const int8_t ChannelNoisePower_TBL[NUM_BAUD_RATES]; |
|---|
| 106 | extern const uint32_t PhaseLoopAcqCoeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 107 | extern const uint32_t PhaseLoopTrkCoeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 108 | extern const uint32_t PhaseLoopTrkBurstModeCoeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 109 | extern const uint16_t TimingLoopAcqCoeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 110 | extern const uint16_t TimingLoopTrk1Coeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 111 | extern const uint16_t TimingLoopTrk2Coeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 112 | extern const uint16_t FrequencyLoopCoeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 113 | extern const uint16_t FrequencyLoopBurstModeCoeffs_TBL[NUM_BAUD_RATES]; |
|---|
| 114 | typedef struct PhaseLoopSweep_s |
|---|
| 115 | { |
|---|
| 116 | uint16_t PosSweepRate; |
|---|
| 117 | uint32_t PosSweepStart; |
|---|
| 118 | uint16_t NegSweepRate; |
|---|
| 119 | uint32_t NegSweepStart; |
|---|
| 120 | uint16_t SweepTime; |
|---|
| 121 | }PhaseLoopSweep_t; |
|---|
| 122 | extern const PhaseLoopSweep_t PhaseLoopSweepAnnexA_TBL[NUM_BAUD_RATES]; |
|---|
| 123 | typedef struct PhaseLoopSweep_FFT_s |
|---|
| 124 | { |
|---|
| 125 | uint16_t PosSweepRate; |
|---|
| 126 | uint32_t PosSweepStart; |
|---|
| 127 | uint16_t SweepTime; |
|---|
| 128 | }PhaseLoopSweep_FFT_t; |
|---|
| 129 | extern const PhaseLoopSweep_FFT_t PhaseLoopSweepAnnexA_FFT_TBL[NUM_BAUD_RATES]; |
|---|
| 130 | extern const PhaseLoopSweep_t PhaseLoopSweepAnnexB_TBL[2]; |
|---|
| 131 | extern const uint32_t SNRLTHRESH_TBL[NUM_QAM_MODES]; |
|---|
| 132 | #if 0 |
|---|
| 133 | extern const uint32_t SNRHTHRESH_TBL[NUM_QAM_MODES]; |
|---|
| 134 | #endif |
|---|
| 135 | extern const uint32_t SNRHTHRESH_TBL[NUM_QAM_MODES]; |
|---|
| 136 | typedef struct FEC_s |
|---|
| 137 | { |
|---|
| 138 | uint32_t DS_FECU; |
|---|
| 139 | uint32_t DS_FECM; |
|---|
| 140 | uint32_t DS_FECL; |
|---|
| 141 | uint32_t DS_FECOUT_NCON; |
|---|
| 142 | uint32_t DS_FECOUT_NCODL; |
|---|
| 143 | }FEC_t; |
|---|
| 144 | |
|---|
| 145 | extern const FEC_t AnnexA_FEC_TBL[NUM_QAM_MODES]; |
|---|
| 146 | extern const FEC_t AnnexB_FEC_TBL[NUM_QAM_MODES]; |
|---|
| 147 | extern const uint32_t DS_EQ_CTL_TBL[NUM_QAM_MODES]; |
|---|
| 148 | extern const uint32_t DS_EQ_CPL_TBL[NUM_QAM_MODES]; |
|---|
| 149 | |
|---|
| 150 | |
|---|
| 151 | |
|---|
| 152 | #ifdef __cplusplus |
|---|
| 153 | } |
|---|
| 154 | #endif |
|---|
| 155 | |
|---|
| 156 | #endif |
|---|
| 157 | |
|---|
| 158 | |
|---|