⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csl_tcphal.h

📁 麦克风阵列的TLS自适应波束形成算法仿真
💻 H
📖 第 1 页 / 共 3 页
字号:
/******************************************************************************\
*           Copyright (C) 1999-2000 Texas Instruments Incorporated.
*                           All Rights Reserved
*------------------------------------------------------------------------------
* FILENAME...... csl_tcphal.h
* DATE CREATED.. 02/21/2001 
* LAST MODIFIED. 04/20/2001
*------------------------------------------------------------------------------
* REGISTERS
*
* IC0   - TCP input configuration register  0
* IC1   - TCP input configuration register  1
* IC2   - TCP input configuration register  2
* IC3   - TCP input configuration register  3
* IC4   - TCP input configuration register  4
* IC5   - TCP input configuration register  5
* IC6   - TCP input configuration register  6
* IC7   - TCP input configuration register  7
* IC8   - TCP input configuration register  8
* IC9   - TCP input configuration register  9
* IC10  - TCP input configuration register 10
* IC11  - TCP input configuration register 11
* OUT   - TCP output parameters register
* EXE   - TCP execution register 
* END   - TCP endian mode register
* ERR   - TCP error register
* STAT  - TCP status register
*
*------------------------------------------------------------------------------
* MEMORY REGIONS
*
* ICMEM - TCP interrupt configuration register space
* OPMEM - TCP output parameter register space
* SPMEM - TCP systematics and parities memory
* EXMEM - TCP extrinsics memory
* APMEM - TCP apriori memory
* ILMEM - TCP interleaver memory
* HDMEM - TCP hard decisions memory
*
\******************************************************************************/
#ifndef _CSL_TCPHAL_H_
#define _CSL_TCPHAL_H_

#include <csl_stdinc.h>
#include <csl_chip.h>

#if (TCP_SUPPORT)

/******************************************************************************\
* Memory section
\******************************************************************************/

  #define _TCP_BASE_IC               0x01BA0000u
  #define  TCP_ICMEM_ADDR            0x58000000u
  #define  TCP_OPMEM_ADDR            0x58000030u
  #define  TCP_SPMEM_ADDR            0x58020000u
  #define  TCP_EXMEM_ADDR            0x58040000u
  #define  TCP_APMEM_ADDR            0x58060000u
  #define  TCP_ILMEM_ADDR            0x58080000u
  #define  TCP_HDMEM_ADDR            0x580A0000u


/******************************************************************************\
* module level register/field access macros
\******************************************************************************/

  /* ----------------- */
  /* FIELD MAKE MACROS */
  /* ----------------- */

  #define TCP_FMK(REG,FIELD,x)\
    _PER_FMK(TCP,##REG,##FIELD,x)

  #define TCP_FMKS(REG,FIELD,SYM)\
    _PER_FMKS(TCP,##REG,##FIELD,##SYM)


  /* -------------------------------- */
  /* RAW REGISTER/FIELD ACCESS MACROS */
  /* -------------------------------- */

  #define TCP_ADDR(REG)\
    _TCP_##REG##_ADDR

  #define TCP_RGET(REG)\
    _PER_RGET(_TCP_##REG##_ADDR,TCP,##REG)

  #define TCP_RSET(REG,x)\
    _PER_RSET(_TCP_##REG##_ADDR,TCP,##REG,x)

  #define TCP_FGET(REG,FIELD)\
    _TCP_##REG##_FGET(##FIELD)

  #define TCP_FSET(REG,FIELD,x)\
    _TCP_##REG##_FSET(##FIELD,##x)

  #define TCP_FSETS(REG,FIELD,SYM)\
    _TCP_##REG##_FSETS(##FIELD,##SYM)


  /* ------------------------------------------ */
  /* ADDRESS BASED REGISTER/FIELD ACCESS MACROS */
  /* ------------------------------------------ */

  #define TCP_RGETA(addr,REG)\
    _PER_RGET(addr,TCP,##REG)

  #define TCP_RSETA(addr,REG,x)\
    _PER_RSET(addr,TCP,##REG,x)

  #define TCP_FGETA(addr,REG,FIELD)\
    _PER_FGET(addr,TCP,##REG,##FIELD)

  #define TCP_FSETA(addr,REG,FIELD,x)\
    _PER_FSET(addr,TCP,##REG,##FIELD,x)

  #define TCP_FSETSA(addr,REG,FIELD,SYM)\
    _PER_FSETS(addr,TCP,##REG,##FIELD,##SYM)


/******************************************************************************\
* _____________________
* |                   |
* |  I C 0            |
* |___________________|
*
* TCP input configuration register  0
*
* FIELDS (msb -> lsb)
* (rw) FL
* (rw) OUTF
* (rw) INTER
* (rw) RATE
* (rw) OPMOD
* 
*
\******************************************************************************/
  #define _TCP_IC0_OFFSET            0

    #define _TCP_IC0_ADDR              0x01BA0000u
 // #define _TCP_IC0_ADDR              0x58000000u

  #define _TCP_IC0_FL_MASK           0xFFFF0000u
  #define _TCP_IC0_FL_SHIFT          0x00000010u
  #define  TCP_IC0_FL_DEFAULT        0x00000000u
  #define  TCP_IC0_FL_OF(x)          _VALUEOF(x)

  #define _TCP_IC0_OUTF_MASK         0x00002000u // error doc
  #define _TCP_IC0_OUTF_SHIFT        0x0000000Du
  #define  TCP_IC0_OUTF_DEFAULT      0x00000000u
  #define  TCP_IC0_OUTF_OF(x)        _VALUEOF(x)
  #define  TCP_IC0_OUTF_NO           0x00000000u
  #define  TCP_IC0_OUTF_YES          0x00000001u

  #define _TCP_IC0_INTER_MASK          0x00001000u
  #define _TCP_IC0_INTER_SHIFT         0x0000000Cu
  #define  TCP_IC0_INTER_DEFAULT       0x00000000u
  #define  TCP_IC0_INTER_OF(x)         _VALUEOF(x)
  #define  TCP_IC0_INTER_NO            0x00000000u
  #define  TCP_IC0_INTER_YES           0x00000001u

  #define _TCP_IC0_RATE_MASK         0x00000300u
  #define _TCP_IC0_RATE_SHIFT        0x00000008u
  #define  TCP_IC0_RATE_DEFAULT      0x00000000u
  #define  TCP_IC0_RATE_OF(x)        _VALUEOF(x)
  #define  TCP_IC0_RATE_1_2          0x00000001u
  #define  TCP_IC0_RATE_1_3          0x00000002u
  #define  TCP_IC0_RATE_1_4          0x00000003u

  #define _TCP_IC0_OPMOD_MASK        0x0000000Eu
  #define _TCP_IC0_OPMOD_SHIFT       0x00000001u
  #define  TCP_IC0_OPMOD_DEFAULT     0x00000000u
  #define  TCP_IC0_OPMOD_OF(x)       _VALUEOF(x)
  #define  TCP_IC0_OPMOD_SA          0x00000000u
  #define  TCP_IC0_OPMOD_MAP1A       0x00000004u
  #define  TCP_IC0_OPMOD_MAP1B       0x00000005u
  #define  TCP_IC0_OPMOD_MAP2        0x00000007u

 
  #define  TCP_IC0_OF(x)             _VALUEOF(x)

  #define TCP_IC0_DEFAULT (Uint32)(\
    _PER_FDEFAULT(TCP,IC0,FL)\
   |_PER_FDEFAULT(TCP,IC0,OUTF)\
   |_PER_FDEFAULT(TCP,IC0,INTER)\
   |_PER_FDEFAULT(TCP,IC0,RATE)\
   |_PER_FDEFAULT(TCP,IC0,OPMOD)\
  )

  #define TCP_IC0_RMK(fl,outf,inter,rate,opmod) (Uint32)(\
     _PER_FMK(TCP,IC0,FL,fl)\
    |_PER_FMK(TCP,IC0,OUTF,outf)\
    |_PER_FMK(TCP,IC0,INTER,inter)\
    |_PER_FMK(TCP,IC0,RATE,rate)\
    |_PER_FMK(TCP,IC0,OPMOD,opmod)\
  )

  #define _TCP_IC0_FGET(FIELD)\
    _PER_FGET(_TCP_IC0_ADDR,TCP,IC0,##FIELD)

  #define _TCP_IC0_FSET(FIELD,field)\
    _PER_FSET(_TCP_IC0_ADDR,TCP,IC0,##FIELD,field)

  #define _TCP_IC0_FSETS(FIELD,SYM)\
    _PER_FSETS(_TCP_IC0_ADDR,TCP,IC0,FIELD,##SYM)

/******************************************************************************\
* _____________________
* |                   |
* |  I C 1            |
* |___________________|
*
* TCP input configuration register  1
*
* FIELDS (msb -> lsb)
* (rw) LASTR
* (rw) R
* (rw) SFL
*
\******************************************************************************/
  #define _TCP_IC1_OFFSET            1

    #define _TCP_IC1_ADDR              0x01BA0004u   
//  #define _TCP_IC1_ADDR              0x580000004u
 
 #define _TCP_IC1_LASTR_MASK        0x7F000000u
  #define _TCP_IC1_LASTR_SHIFT       0x00000018u
  #define  TCP_IC1_LASTR_DEFAULT     0x00000000u
  #define  TCP_IC1_LASTR_OF(x)       _VALUEOF(x)

  #define _TCP_IC1_R_MASK           0x007F0000u
  #define _TCP_IC1_R_SHIFT          0x00000010u
  #define  TCP_IC1_R_DEFAULT        0x00000000u
  #define  TCP_IC1_R_OF(x)          _VALUEOF(x)

  #define _TCP_IC1_SFL_MASK          0x0000FFFFu
  #define _TCP_IC1_SFL_SHIFT         0x00000000u
  #define  TCP_IC1_SFL_DEFAULT       0x00000000u
  #define  TCP_IC1_SFL_OF(x)         _VALUEOF(x)

  #define  TCP_IC1_OF(x)             _VALUEOF(x)

  #define TCP_IC1_DEFAULT (Uint32)(\
    _PER_FDEFAULT(TCP,IC1,LASTR)\
   |_PER_FDEFAULT(TCP,IC1,R)\
   |_PER_FDEFAULT(TCP,IC1,SFL)\
  )

  #define TCP_IC1_RMK(lastr,r,sfl) (Uint32)(\
     _PER_FMK(TCP,IC1,LASTR,lastr)\
    |_PER_FMK(TCP,IC1,R,r)\
    |_PER_FMK(TCP,IC1,SFL,sfl)\
  )

  #define _TCP_IC1_FGET(FIELD)\
    _PER_FGET(_TCP_IC1_ADDR,TCP,IC1,##FIELD)

  #define _TCP_IC1_FSET(FIELD,field)\
    _PER_FSET(_TCP_IC1_ADDR,TCP,IC1,##FIELD,field)

  #define _TCP_IC1_FSETS(FIELD,SYM)\
    _PER_FSETS(_TCP_IC1_ADDR,TCP,IC1,FIELD,##SYM)

/******************************************************************************\
* _____________________
* |                   |
* |  I C 2            |
* |___________________|
*
* TCP input configuration register  2
*
* FIELDS (msb -> lsb)
* (rw) SNR
* (rw) MAXIT
* (rw) LASTNSB
* (rw) NSB
* (rw) PS
*
\******************************************************************************/
  #define _TCP_IC2_OFFSET            2

  #define _TCP_IC2_ADDR              0x01BA0008u
  // #define _TCP_IC2_ADDR              0x58000008u

  #define _TCP_IC2_SNR_MASK          0xFF000000u
  #define _TCP_IC2_SNR_SHIFT         0x00000018u
  #define  TCP_IC2_SNR_DEFAULT       0x00000000u
  #define  TCP_IC2_SNR_OF(x)         _VALUEOF(x)
  #define  TCP_IC2_SNR_NONE          0x00000000u

  #define _TCP_IC2_MAXIT_MASK        0x001F0000u
  #define _TCP_IC2_MAXIT_SHIFT       0x00000010u
  #define  TCP_IC2_MAXIT_DEFAULT     0x00000000u
  #define  TCP_IC2_MAXIT_OF(x)       _VALUEOF(x)

  #define _TCP_IC2_LASTNSB_MASK      0x0000F000u
  #define _TCP_IC2_LASTNSB_SHIFT     0x0000000Cu
  #define  TCP_IC2_LASTNSB_DEFAULT   0x00000000u
  #define  TCP_IC2_LASTNSB_OF(x)     _VALUEOF(x)

  #define _TCP_IC2_NSB_MASK          0x00000F00u
  #define _TCP_IC2_NSB_SHIFT         0x00000008u
  #define  TCP_IC2_NSB_DEFAULT       0x00000000u
  #define  TCP_IC2_NSB_OF(x)         _VALUEOF(x)

  #define _TCP_IC2_P_MASK           0x0000003Fu
  #define _TCP_IC2_P_SHIFT          0x00000000u
  #define  TCP_IC2_P_DEFAULT        0x00000000u
  #define  TCP_IC2_P_OF(x)          _VALUEOF(x)

  #define  TCP_IC2_OF(x)             _VALUEOF(x)

  #define TCP_IC2_DEFAULT (Uint32)(\
    _PER_FDEFAULT(TCP,IC2,SNR)\
   |_PER_FDEFAULT(TCP,IC2,MAXIT)\
   |_PER_FDEFAULT(TCP,IC2,LASTNSB)\
   |_PER_FDEFAULT(TCP,IC2,NSB)\
   |_PER_FDEFAULT(TCP,IC2,P)\
  )

  #define TCP_IC2_RMK(snr,maxit,lastnsb,nsb,p) (Uint32)(\
     _PER_FMK(TCP,IC2,SNR,snr)\
    |_PER_FMK(TCP,IC2,MAXIT,maxit)\
    |_PER_FMK(TCP,IC2,LASTNSB,lastnsb)\
    |_PER_FMK(TCP,IC2,NSB,nsb)\
    |_PER_FMK(TCP,IC2,P,p)\
  )

  #define _TCP_IC2_FGET(FIELD)\
    _PER_FGET(_TCP_IC2_ADDR,TCP,IC2,##FIELD)

  #define _TCP_IC2_FSET(FIELD,field)\
    _PER_FSET(_TCP_IC2_ADDR,TCP,IC2,##FIELD,field)

  #define _TCP_IC2_FSETS(FIELD,SYM)\
    _PER_FSETS(_TCP_IC2_ADDR,TCP,IC2,FIELD,##SYM)

/******************************************************************************\
* _____________________
* |                   |
* |  I C 3            |
* |___________________|
*
* TCP input configuration register  3
*
* FIELDS (msb -> lsb)
* (rw) NWDSYPAR
* (rw) NWDINTER
*
\******************************************************************************/
  #define _TCP_IC3_OFFSET            3

  #define _TCP_IC3_ADDR              0x01BA000Cu
 
 // #define _TCP_IC3_ADDR                0x5800000Cu

  #define _TCP_IC3_NWDSYPAR_MASK      0xFFFF0000u
  #define _TCP_IC3_NWDSYPAR_SHIFT     0x00000010u
  #define  TCP_IC3_NWDSYPAR_DEFAULT   0x00000000u
  #define  TCP_IC3_NWDSYPAR_OF(x)     _VALUEOF(x)

  #define _TCP_IC3_NWDINTER_MASK       0x0000FFFFu
  #define _TCP_IC3_NWDINTER_SHIFT      0x00000000u
  #define  TCP_IC3_NWDINTER_DEFAULT    0x00000000u
  #define  TCP_IC3_NWDINTER_OF(x)      _VALUEOF(x)

  #define  TCP_IC3_OF(x)             _VALUEOF(x)

  #define TCP_IC3_DEFAULT (Uint32)(\
    _PER_FDEFAULT(TCP,IC3,NWDSYPAR)\
   |_PER_FDEFAULT(TCP,IC3,NWDINTER)\
  )

  #define TCP_IC3_RMK(nwdsypar,nwdinter) (Uint32)(\
     _PER_FMK(TCP,IC3,NWDSYPAR,nwdsypar)\
    |_PER_FMK(TCP,IC3,NWDINTER,nwdinter)\
  )

  #define _TCP_IC3_FGET(FIELD)\
    _PER_FGET(_TCP_IC3_ADDR,TCP,IC3,##FIELD)

  #define _TCP_IC3_FSET(FIELD,field)\
    _PER_FSET(_TCP_IC3_ADDR,TCP,IC3,##FIELD,field)

  #define _TCP_IC3_FSETS(FIELD,SYM)\
    _PER_FSETS(_TCP_IC3_ADDR,TCP,IC3,FIELD,##SYM)

/******************************************************************************\
* _____________________
* |                   |

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -