亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? csl_tcp.h

?? mpeg2_encoder為MPEG2算法的DEMO
?? H
?? 第 1 頁 / 共 2 頁
字號:
/******************************************************************************\
*           Copyright (C) 2000 Texas Instruments Incorporated.
*                           All Rights Reserved
*------------------------------------------------------------------------------
* FILENAME...... csl_tcp.h
* DATE CREATED.. 02/22/2001 
* LAST MODIFIED. 09/17/2001 
*
\******************************************************************************/
#ifndef _CSL_TCP_H_
#define _CSL_TCP_H_

#include <csl_chip.h>   
#include <csl_stdinc.h>
#include <csl_irq.h>
#include "csl_tcphal.h"

#if (TCP_SUPPORT)
/****************************************\
* TCP scope and inline control macros
\****************************************/
#ifdef __cplusplus
#define CSLAPI extern "C" far
#else
#define CSLAPI extern far
#endif

#undef  USEDEFS
#undef  IDECL
#undef  IDEF

#ifdef  _TCP_MOD_
  #define IDECL extern far
  #define USEDEFS
  #define IDEF
#else
  #ifdef  _INLINE
    #define IDECL static inline
    #define USEDEFS
    #define IDEF  static inline
  #else
    #define IDECL extern far
  #endif
#endif

/****************************************\
* TCP global macro declarations
\****************************************/

/****************************************\
* TCP global typedef declarations
\****************************************/
typedef Uint8  TCP_Standard;
typedef Uint8  TCP_Mode;
typedef Uint8  TCP_Map;
typedef Uint8  TCP_Rate;
typedef Uint8  TCP_UserData;
typedef Uint8  TCP_ExtrinsicData;

typedef struct {
   Uint32 ic0;
   Uint32 ic1;
   Uint32 ic2;
   Uint32 ic3;
   Uint32 ic4;
   Uint32 ic5;
   Uint32 ic6;
   Uint32 ic7;
   Uint32 ic8;
   Uint32 ic9;
   Uint32 ic10;
   Uint32 ic11;
} TCP_ConfigIc;

typedef struct {
   TCP_Standard standard;
   TCP_Mode     mode;
   TCP_Map      map;
   TCP_Rate     rate;
   Uint32       intFlag;
   Uint32       outParmFlag;
   Uint32       frameLen;
   Uint32       subFrameLen;
   Uint32       relLen;
   Uint32       relLenLast;
   Uint32       prologSize;
   Uint32       numSubBlock;
   Uint32       numSubBlockLast;
   Uint32       maxIter;
   Uint32       snr;
   Uint32       numInter;
   Uint32       numSysPar;
   Uint32       numApriori;
   Uint32       numExt;
   Uint32       numHd;
} TCP_Params;

typedef struct {
   TCP_Standard standard;
   TCP_Rate     rate;
   Uint16       frameLen;
   Uint8        prologSize;
   Uint8        maxIter;
   Uint8        snr;
   Uint8        intFlag;
   Uint8        outParmFlag;
} TCP_BaseParams;

/************ New structure for Init ***************/
typedef struct {
   TCP_UserData *restrict xabData;
   TCP_Standard standard;
   TCP_Rate     rate;
   Uint16       frameLen;
   Uint8        prologSize;
   Uint8        maxIter;
   Uint8        snr;
   Uint8        intFlag;
   Uint8        outParmFlag;
} TCP_Init;

/****************************************\
* TCP global ants declarations
\****************************************/
#define TCP_RATE_1_2           2
#define TCP_RATE_1_3           3
#define TCP_RATE_1_4           4
#define TCP_MODE_SA            0
#define TCP_MODE_SP            1
#define TCP_MAP_MAP1A          0
#define TCP_MAP_MAP1B          1
#define TCP_MAP_MAP2           3 
#define TCP_STANDARD_3GPP      0
#define TCP_STANDARD_IS2000    1
#define TCP_RLEN_MAX         128
#define TCP_FLEN_MAX        5114
#define TCP_NUM_IC            12
#define TCP_NUM_OP             2

/****************************************\
* TCP global function declarations
\****************************************/

/* Set the ic6-ic9 registers (tails) based on the user data          */
/* TCP_tailConfig calls TCP_tailConfig3GPP() or TCP_tailConfigIs2000 */
/* based on the "standard" parameter value                           */
CSLAPI void TCP_tailConfig(TCP_Standard standard,
                          TCP_Mode mode,
                          TCP_Map map,
                          TCP_Rate rate,
                          TCP_UserData *restrict xabData,
                          TCP_ConfigIc *restrict configIc);
CSLAPI void TCP_tailConfig3GPP(TCP_Mode mode,
                          TCP_Map map,
                          TCP_UserData *restrict xabData,
                          TCP_ConfigIc *restrict configIc);
CSLAPI void TCP_tailConfigIs2000(TCP_Mode mode,
                          TCP_Map map,
                          TCP_Rate rate,
                          TCP_UserData *restrict xabData,
                          TCP_ConfigIc *restrict configIc);

/* Set the Parameters passed via Param structure to ic0-ic5 registers */
/* configIc is the returned config structure of the icx registers */
CSLAPI void TCP_setParams(TCP_Params *restrict configParms,
                          TCP_ConfigIc *restrict configIc);

/* Set all icx registers :                                     */ 
/* configPrams input parameters dedicated to ic0-ic5 registers */
/* xabData input parameters dedicated to set ic6-ic11 registers (tails */
/* configIc is the returned config structure of the icx registers */
CSLAPI void TCP_genIc(TCP_Params *restrict configParms,
                          TCP_UserData *restrict xabData,
                          TCP_ConfigIc *restrict configIc);

/* Divide the data frames into subframes and subblocks.                     */
/* The values calculated in these routines are entered into the configParms */
/* struct and are used in programming the TCP IC values and the EDMA        */
/* parameters. Either TCP_calcSubBlocks3GPP or TCP_calcSubBlocksIs2000 is   */
/* used depending on the standard.                                          */
CSLAPI void TCP_calcSubBlocksSA(TCP_Params *configParms);

CSLAPI Uint32 TCP_calcSubBlocksSP(TCP_Params *configParms);

/* Fill out the necessary TCP parameters.                                   */
CSLAPI Uint32 TCP_genParams(TCP_BaseParams *configBase,
                          TCP_Params *configParms);


/*** Init parameters and set registers **********/
void TCP_init(TCP_Init *Init);
void TCP_tailInit3GPP(TCP_Mode mode, TCP_Map map,TCP_UserData *restrict xabData);
void TCP_tailInitIs2000(TCP_Mode mode,TCP_Map map,TCP_Rate rate,TCP_UserData *restrict xabData);

/* Calculate the count values (number of 32-bit words) required for the     */
/* programming of the EDMA for all data buffers. The counts calculated      */
/* using either TCP_calcCounts3GPP or TCP_calcCountsIs2000 depending on the */
/* standard.                                                                */
CSLAPI void TCP_calcCountsSA(TCP_Params *configParms);

CSLAPI void TCP_calcCountsSP(TCP_Params *configParms);

/* Interleave the extrinsics data to give the apriori data required for the */
/* subsequent MAP decoding. TCP_interleaveExt is performed by the CPU       */
/* following a MAP1 decoding by the TCP. This function is used in shared    */
/* processing mode only.                                                    */
CSLAPI void TCP_interleaveExt(TCP_ExtrinsicData *restrict aprioriMap2, 
                          const TCP_ExtrinsicData *restrict extrinsicsMap1, 
                          const Uint16 *restrict interleaverTable, 
                          Uint32  numExt);

/* De-interleave the extrinsics data to give the apriori data required for  */
/* the subsequent MAP decoding. TCP_deinterleaveExt is performed by the CPU */
/* following a MAP2 decoding by the TCP. This function is used in shared    */
/* processing mode only.                                                    */
CSLAPI void TCP_deinterleaveExt(TCP_ExtrinsicData *restrict aprioriMap1, 
                          const TCP_ExtrinsicData *restrict extrinsicsMap2, 
                          const Uint16 *restrict interleaverTable, 
                          Uint32  numExt);

/* Calculate hard decisions following all MAP decodings in shared processing*/
/* mode.                                                                    */
CSLAPI void TCP_calculateHd(const TCP_ExtrinsicData *restrict extrinsicsMap1, 
                          const TCP_ExtrinsicData *restrict apriori, 
                          const TCP_UserData *restrict channel_data, 
                          Uint32 *restrict hardDecisions,
                          Uint16 numExt,
                          Uint8  rate);

/* Demultiplex the input data into two "working data" buffers. The two new  */
/* data buffers are used separately for MAP 1 and MAP 2 decodings in shared */
/* processing mode.                                                         */
CSLAPI void TCP_demuxInput(Uint32 rate,
                          Uint32 frameLen,
                          const TCP_UserData *restrict input,
                          const Uint16 *restrict interleaver,
                          TCP_ExtrinsicData *restrict nonInterleaved,
                          TCP_ExtrinsicData *restrict interleaved);
                          
/****************************************\
* TCP inline function declarations
\****************************************/

/* Master transfer functions */
IDECL void   TCP_start();
IDECL void   TCP_pause();
IDECL void   TCP_unpause();

IDECL Uint32 TCP_getNumIt();
IDECL Uint32 TCP_getSysParEndian();
IDECL Uint32 TCP_getIinterEndian();
IDECL Uint32 TCP_getAaprioriEndian();
IDECL Uint32 TCP_getExtEndian();

IDECL void   TCP_setNativeEndian();
IDECL void   TCP_setPacked32Endian();
IDECL void   TCP_setSysParEndian(Uint32 sysParEnd);
IDECL void   TCP_setInterEndian(Uint32 interEnd);
IDECL void   TCP_setAprioriEndian(Uint32 aprioriEnd);
IDECL void   TCP_setExtEndian(Uint32 extEnd);

IDECL Uint32 TCP_statPause();
IDECL Uint32 TCP_statRun();
IDECL Uint32 TCP_statError();
IDECL Uint32 TCP_statWaitIC();
IDECL Uint32 TCP_statWaitInter();
IDECL Uint32 TCP_statWaitSysPar();
IDECL Uint32 TCP_statWaitApriori();
IDECL Uint32 TCP_statWaitExt();
IDECL Uint32 TCP_statWaitHardDec();
IDECL Uint32 TCP_statWaitOutParm();

IDECL Uint32 TCP_errTest();
IDECL Uint32 TCP_getFrameLenErr();
IDECL Uint32 TCP_getProlLenErr();
IDECL Uint32 TCP_getRateErr();
IDECL Uint32 TCP_getSubFrameErr();
IDECL Uint32 TCP_getModeErr();
IDECL Uint32 TCP_getRelLenErr();
IDECL Uint32 TCP_getLastRelLenErr();
IDECL Uint32 TCP_getInterleaveErr();
IDECL Uint32 TCP_getOutParmErr();
IDECL Uint32 TCP_getAccessErr();


/* Set all the TCP registers : ic0-ic11 using a configuration structure  */
IDECL void TCP_icConfig(TCP_ConfigIc *config);

/* Set all the TCP registers : ic0-ic11 with register values   */
IDECL void TCP_icConfigArgs(Uint32 ic0, Uint32 ic1, Uint32 ic2,  Uint32 ic3,
                            Uint32 ic4, Uint32 ic5, Uint32 ic6,  Uint32 ic7,
                            Uint32 ic8, Uint32 ic9, Uint32 ic10, Uint32 ic11);
/* Get TCP registers : ic0-ic11 returned into a configuration structure  */
IDECL void TCP_getIcConfig(TCP_ConfigIc *config);

/* Build the tail value */
IDECL Uint32 TCP_makeTailArgs(Uint8 byte31_24, Uint8 byte23_16,
                              Uint8 byte15_8,  Uint8 byte7_0);

/* Ceiling functions */
IDECL Uint32 TCP_ceil(Uint32 a, Uint32 b);

IDECL Uint32 TCP_normalCeil(Uint32 a, Uint32 b);

/****************************************\
* TCP inline function definitions
\****************************************/
#ifdef USEDEFS
/*----------------------------------------------------------------------------*/
IDEF void TCP_start(){
   TCP_FSET(EXE,START,1);  
}
/*----------------------------------------------------------------------------*/
IDEF void TCP_pause(){
  TCP_FSET(EXE,PAUSE,1);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
男人的天堂久久精品| 国产.欧美.日韩| 一区二区日韩av| 国产精品一色哟哟哟| 国产精品卡一卡二| 成人一区二区三区中文字幕| 欧美国产一区二区| 99久久精品久久久久久清纯| 亚洲欧洲三级电影| 欧美少妇性性性| 日韩av午夜在线观看| 日韩免费观看高清完整版| 国产在线麻豆精品观看| 91热门视频在线观看| 99国产精品久| 欧美日韩一区精品| 欧美绝品在线观看成人午夜影视| 高清成人免费视频| 色综合久久天天综合网| 成人美女在线视频| 欧美美女直播网站| 亚洲福利视频一区二区| 欧美精品一二三| 欧美理论片在线| 国产专区综合网| 亚洲视频电影在线| 日韩精品一区二区三区四区视频 | 精品国产免费一区二区三区四区 | 国产精品成人免费| 欧美精品一卡二卡| 成人午夜私人影院| 亚洲成年人影院| 国产欧美精品一区| 欧美三片在线视频观看 | a亚洲天堂av| 日韩专区中文字幕一区二区| 亚洲国产精品ⅴa在线观看| 成人黄色大片在线观看| 久久你懂得1024| 国产成a人亚洲精品| 51精品视频一区二区三区| 亚洲欧美中日韩| 狠狠色综合播放一区二区| 欧美三级电影在线观看| 尤物av一区二区| 97久久精品人人爽人人爽蜜臀| 日韩精品中文字幕在线一区| 午夜视频在线观看一区| 国产精品亲子伦对白| 欧美精品日韩一区| av一二三不卡影片| 九九九精品视频| 亚洲永久精品大片| 欧美经典一区二区三区| 欧美xxxxx裸体时装秀| 欧美视频自拍偷拍| 一本大道久久a久久综合| 成人福利电影精品一区二区在线观看| 日韩精品一二区| 亚洲伊人色欲综合网| 国产精品成人免费在线| 亚洲国产精品成人综合色在线婷婷| 日韩亚洲欧美高清| 91精品国产91热久久久做人人 | 欧美三区在线视频| 91啪亚洲精品| 99精品桃花视频在线观看| 国产成人啪午夜精品网站男同| 激情久久久久久久久久久久久久久久 | 久久精品日产第一区二区三区高清版| 欧美美女视频在线观看| 欧美综合亚洲图片综合区| bt7086福利一区国产| 不卡的电影网站| 本田岬高潮一区二区三区| 国产91对白在线观看九色| 国产一区啦啦啦在线观看| 狂野欧美性猛交blacked| 视频一区免费在线观看| 日产精品久久久久久久性色| 午夜国产不卡在线观看视频| 一级特黄大欧美久久久| 亚洲欧美日韩在线| 欧美久久一二区| 色婷婷久久99综合精品jk白丝| 国产98色在线|日韩| 久久久久久黄色| 亚洲精品免费电影| 日韩午夜小视频| 成人精品免费网站| 日韩在线卡一卡二| 亚洲午夜在线观看视频在线| 欧美一级日韩一级| gogo大胆日本视频一区| 蜜臀国产一区二区三区在线播放| 国产欧美一区二区三区鸳鸯浴| 久久久久久毛片| 激情综合网最新| 蜜桃视频第一区免费观看| 久久99久久99精品免视看婷婷 | 色综合婷婷久久| 91国在线观看| 国产日产欧美一区二区视频| 另类人妖一区二区av| 亚洲国产精品一区二区久久 | 欧美丰满高潮xxxx喷水动漫| 国产精品资源在线观看| 亚洲一区在线观看网站| 国产精品国模大尺度视频| 日韩一区二区精品| 欧美高清你懂得| 欧美日韩精品福利| 色综合 综合色| 97成人超碰视| 色综合天天综合网天天狠天天| 国产精品一卡二卡在线观看| 午夜视频一区二区三区| 免费在线观看日韩欧美| 136国产福利精品导航| 国产精品一区在线观看乱码| 亚洲精品伦理在线| 欧美三级日本三级少妇99| 91麻豆文化传媒在线观看| 精品亚洲成a人在线观看| 在线观看亚洲成人| 久久爱另类一区二区小说| 日一区二区三区| 亚洲欧洲精品一区二区三区不卡| 亚洲精品欧美二区三区中文字幕| 五月天丁香久久| www.亚洲免费av| 欧美日韩成人综合在线一区二区| 久久久久久夜精品精品免费| 中文字幕日韩一区二区| 激情欧美一区二区| 97精品国产97久久久久久久久久久久| 在线播放亚洲一区| 欧美日韩大陆一区二区| 欧美日本不卡视频| 亚洲欧美日韩在线| 男女激情视频一区| 国产一区二区三区四| 成人精品免费视频| 日韩美女一区二区三区| 国产精品嫩草99a| 丝袜亚洲另类丝袜在线| 成人免费看视频| 免费欧美高清视频| 一区二区三区中文字幕| 亚洲视频中文字幕| 久久久久久久久岛国免费| 日韩精品乱码免费| 国产91精品在线观看| 欧美videos中文字幕| 亚洲欧美日韩国产手机在线| 免费亚洲电影在线| 欧美精品一卡二卡| 亚洲免费av高清| 波多野结衣在线一区| 日韩三级视频在线观看| 日精品一区二区| 在线看国产一区二区| 亚洲人成网站在线| 国产99精品国产| 欧美激情在线一区二区三区| 免费在线观看视频一区| 制服丝袜亚洲精品中文字幕| 91免费看视频| 亚洲欧美日韩中文播放 | 美女一区二区在线观看| 欧美不卡激情三级在线观看| 从欧美一区二区三区| 久久精品国产亚洲一区二区三区| 欧美日韩一区二区三区高清| 亚洲视频在线一区| 在线观看日韩av先锋影音电影院| 国产欧美一区二区精品性| 99久久婷婷国产综合精品| 国产精品久久久久影视| 成人午夜伦理影院| 国产精品视频免费看| 欧美亚洲一区二区三区四区| 成人精品鲁一区一区二区| 国产精品影视在线| 国产亚洲欧洲997久久综合| 美脚の诱脚舐め脚责91| 久久久三级国产网站| 青青国产91久久久久久| 日韩精品一区二区三区在线播放 | 国产拍欧美日韩视频二区| 久久精品国产精品亚洲综合| 精品国产乱码久久久久久免费 | 蜜桃精品视频在线| 制服视频三区第一页精品| 日韩综合在线视频| 欧美日韩精品一区二区三区蜜桃 | 奇米影视一区二区三区| 欧美日韩aaaaaa| 国内精品伊人久久久久av影院 | 久久99精品久久久|