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

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

?? viterbi_decoding.c

?? 用simlink開發的space-time coding仿真模型,仿真的精度與效率有不小的提高
?? C
字號:
/*
 * File: Viterbi_Decoding.c
 *
 *
  *
  *   --- THIS FILE GENERATED BY S-FUNCTION BUILDER: 3.0 ---
  *
  *   This file is an S-function produced by the S-Function
  *   Builder which only recognizes certain fields.  Changes made
  *   outside these fields will be lost the next time the block is
  *   used to load, edit, and resave this file. This file will be overwritten
  *   by the S-function Builder block. If you want to edit this file by hand, 
  *   you must change it only in the area defined as:  
  *
  *        %%%-SFUNWIZ_defines_Changes_BEGIN
  *        #define NAME 'replacement text' 
  *        %%% SFUNWIZ_defines_Changes_END
  *
  *   DO NOT change NAME--Change the 'replacement text' only.
  *
  *   For better compatibility with the Real-Time Workshop, the
  *   "wrapper" S-function technique is used.  This is discussed
  *   in the Real-Time Workshop User's Manual in the Chapter titled,
  *   "Wrapper S-functions".
  *
  *  -------------------------------------------------------------------------
  * | See matlabroot/simulink/src/sfuntmpl_doc.c for a more detailed template |
  *  ------------------------------------------------------------------------- 
 * Created: Fri Aug 26 16:11:14 2005
 * 
 *
 */


#define S_FUNCTION_NAME Viterbi_Decoding
#define S_FUNCTION_LEVEL 2
/*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<*/
/* %%%-SFUNWIZ_defines_Changes_BEGIN --- EDIT HERE TO _END */
#define NUM_INPUTS          3
/* Input Port  0 */
#define IN_PORT_0_NAME      r
#define INPUT_0_WIDTH       130
#define INPUT_DIMS_0_COL    1
#define INPUT_0_DTYPE       creal_T
#define INPUT_0_COMPLEX     COMPLEX_YES
#define IN_0_FRAME_BASED    FRAME_YES
#define IN_0_DIMS           1-D
#define INPUT_0_FEEDTHROUGH 1
#define IN_0_ISSIGNED        0
#define IN_0_WORDLENGTH      8
#define IN_0_FIXPOINTSCALING 1
#define IN_0_FRACTIONLENGTH  9
#define IN_0_BIAS            0
#define IN_0_SLOPE           0.125
/* Input Port  1 */
#define IN_PORT_1_NAME      h1
#define INPUT_1_WIDTH       130
#define INPUT_DIMS_1_COL    1
#define INPUT_1_DTYPE       creal_T
#define INPUT_1_COMPLEX     COMPLEX_YES
#define IN_1_FRAME_BASED    FRAME_YES
#define IN_1_DIMS           1-D
#define INPUT_1_FEEDTHROUGH 1
#define IN_1_ISSIGNED        0
#define IN_1_WORDLENGTH      8
#define IN_1_FIXPOINTSCALING 1
#define IN_1_FRACTIONLENGTH  9
#define IN_1_BIAS            0
#define IN_1_SLOPE           0.125
/* Input Port  2 */
#define IN_PORT_2_NAME      h2
#define INPUT_2_WIDTH       130
#define INPUT_DIMS_2_COL    1
#define INPUT_2_DTYPE       creal_T
#define INPUT_2_COMPLEX     COMPLEX_YES
#define IN_2_FRAME_BASED    FRAME_YES
#define IN_2_DIMS           1-D
#define INPUT_2_FEEDTHROUGH 1
#define IN_2_ISSIGNED        0
#define IN_2_WORDLENGTH      8
#define IN_2_FIXPOINTSCALING 1
#define IN_2_FRACTIONLENGTH  9
#define IN_2_BIAS            0
#define IN_2_SLOPE           0.125

#define NUM_OUTPUTS          1
/* Output Port  0 */
#define OUT_PORT_0_NAME      y
#define OUTPUT_0_WIDTH       130
#define OUTPUT_DIMS_0_COL    1
#define OUTPUT_0_DTYPE       real_T
#define OUTPUT_0_COMPLEX     COMPLEX_NO
#define OUT_0_FRAME_BASED    FRAME_YES
#define OUT_0_DIMS           1-D

#define NPARAMS              0

#define SAMPLE_TIME_0        INHERITED_SAMPLE_TIME
#define NUM_DISC_STATES      0
#define DISC_STATES_IC       [0]
#define NUM_CONT_STATES      0
#define CONT_STATES_IC       [0]

#define SFUNWIZ_GENERATE_TLC 1
#define SOURCEFILES "__SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB____SFB__"
#define PANELINDEX           6
#define SFUNWIZ_REVISION     3.0
/* %%%-SFUNWIZ_defines_Changes_END --- EDIT HERE TO _BEGIN */
/*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<*/
#include "simstruc.h"

extern void Viterbi_Decoding_Outputs_wrapper(const creal_T *r,
                          const creal_T *h1,
                          const creal_T *h2,
                          real_T *y);

/*====================*
 * S-function methods *
 *====================*/
/* Function: mdlInitializeSizes ===============================================
 * Abstract:
 *   Setup sizes of the various vectors.
 */
static void mdlInitializeSizes(SimStruct *S)
{

    DECL_AND_INIT_DIMSINFO(inputDimsInfo);
    DECL_AND_INIT_DIMSINFO(outputDimsInfo);
    ssSetNumSFcnParams(S, NPARAMS);
     if (ssGetNumSFcnParams(S) != ssGetSFcnParamsCount(S)) {
	 return; /* Parameter mismatch will be reported by Simulink */
     }

    ssSetNumContStates(S, NUM_CONT_STATES);
    ssSetNumDiscStates(S, NUM_DISC_STATES);

    if (!ssSetNumInputPorts(S, NUM_INPUTS)) return;
    /*Input Port 0 */
    inputDimsInfo.width = INPUT_0_WIDTH;
    ssSetInputPortDimensionInfo(S, 0, &inputDimsInfo);
    ssSetInputPortMatrixDimensions(  S ,0, INPUT_0_WIDTH, INPUT_DIMS_0_COL);
    ssSetInputPortFrameData(S, 0, IN_0_FRAME_BASED);
    ssSetInputPortDataType(S, 0, SS_DOUBLE);
    ssSetInputPortComplexSignal(S, 0, INPUT_0_COMPLEX);
    ssSetInputPortDirectFeedThrough(S, 0, INPUT_0_FEEDTHROUGH);
    ssSetInputPortRequiredContiguous(S, 0, 1); /*direct input signal access*/

    /*Input Port 1 */
    inputDimsInfo.width = INPUT_1_WIDTH;
    ssSetInputPortDimensionInfo(S, 1, &inputDimsInfo);
    ssSetInputPortMatrixDimensions(  S ,1, INPUT_1_WIDTH, INPUT_DIMS_1_COL);
    ssSetInputPortFrameData(S, 1, IN_1_FRAME_BASED);
    ssSetInputPortDataType(S, 1, SS_DOUBLE);
    ssSetInputPortComplexSignal(S, 1, INPUT_1_COMPLEX);
    ssSetInputPortDirectFeedThrough(S, 1, INPUT_1_FEEDTHROUGH);
    ssSetInputPortRequiredContiguous(S, 1, 1); /*direct input signal access*/

    /*Input Port 2 */
    inputDimsInfo.width = INPUT_2_WIDTH;
    ssSetInputPortDimensionInfo(S, 2, &inputDimsInfo);
    ssSetInputPortMatrixDimensions(  S ,2, INPUT_2_WIDTH, INPUT_DIMS_2_COL);
    ssSetInputPortFrameData(S, 2, IN_2_FRAME_BASED);
    ssSetInputPortDataType(S, 2, SS_DOUBLE);
    ssSetInputPortComplexSignal(S, 2, INPUT_2_COMPLEX);
    ssSetInputPortDirectFeedThrough(S, 2, INPUT_2_FEEDTHROUGH);
    ssSetInputPortRequiredContiguous(S, 2, 1); /*direct input signal access*/


    if (!ssSetNumOutputPorts(S, NUM_OUTPUTS)) return;
    outputDimsInfo.width = OUTPUT_0_WIDTH;
    ssSetOutputPortDimensionInfo(S, 0, &outputDimsInfo);
    ssSetOutputPortMatrixDimensions( S ,0, OUTPUT_0_WIDTH, OUTPUT_DIMS_0_COL);
    ssSetOutputPortFrameData(S, 0, OUT_0_FRAME_BASED);
    ssSetOutputPortDataType(S, 0, SS_DOUBLE);
    ssSetOutputPortComplexSignal(S, 0, OUTPUT_0_COMPLEX);
    ssSetNumSampleTimes(S, 1);
    ssSetNumRWork(S, 0);
    ssSetNumIWork(S, 0);
    ssSetNumPWork(S, 0);
    ssSetNumModes(S, 0);
    ssSetNumNonsampledZCs(S, 0);

    /* Take care when specifying exception free code - see sfuntmpl_doc.c */
    ssSetOptions(S, (SS_OPTION_EXCEPTION_FREE_CODE |
                     SS_OPTION_USE_TLC_WITH_ACCELERATOR |
		     SS_OPTION_WORKS_WITH_CODE_REUSE));
}

#if defined(MATLAB_MEX_FILE)
#define MDL_SET_INPUT_PORT_DIMENSION_INFO
static void mdlSetInputPortDimensionInfo(SimStruct        *S, 
                                         int_T            port,
                                         const DimsInfo_T *dimsInfo)
{
    if(!ssSetInputPortDimensionInfo(S, port, dimsInfo)) return;
}
#endif

#define MDL_SET_OUTPUT_PORT_DIMENSION_INFO
#if defined(MDL_SET_OUTPUT_PORT_DIMENSION_INFO)
static void mdlSetOutputPortDimensionInfo(SimStruct        *S, 
                                          int_T            port, 
                                          const DimsInfo_T *dimsInfo)
{
 if (!ssSetOutputPortDimensionInfo(S, port, dimsInfo)) return;
}
#endif
# define MDL_SET_INPUT_PORT_FRAME_DATA
static void mdlSetInputPortFrameData(SimStruct  *S, 
                                     int_T      port,
                                     Frame_T    frameData)
{
    ssSetInputPortFrameData(S, port, frameData);
}
/* Function: mdlInitializeSampleTimes =========================================
 * Abstract:
 *    Specifiy  the sample time.
 */
static void mdlInitializeSampleTimes(SimStruct *S)
{
    ssSetSampleTime(S, 0, SAMPLE_TIME_0);
    ssSetOffsetTime(S, 0, 0.0);
}

#define MDL_SET_INPUT_PORT_DATA_TYPE
static void mdlSetInputPortDataType(SimStruct *S, int port, DTypeId dType)
{
    ssSetInputPortDataType( S, 0, dType);
}
#define MDL_SET_OUTPUT_PORT_DATA_TYPE
static void mdlSetOutputPortDataType(SimStruct *S, int port, DTypeId dType)
{
    ssSetOutputPortDataType(S, 0, dType);
}

#define MDL_SET_DEFAULT_PORT_DATA_TYPES
static void mdlSetDefaultPortDataTypes(SimStruct *S)
{
  ssSetInputPortDataType( S, 0, SS_DOUBLE);
 ssSetOutputPortDataType(S, 0, SS_DOUBLE);
}
/* Function: mdlOutputs =======================================================
 *
*/
static void mdlOutputs(SimStruct *S, int_T tid)
{
    const creal_T   *r  = (const creal_T*) ssGetInputPortSignal(S,0);
    const creal_T   *h1  = (const creal_T*) ssGetInputPortSignal(S,1);
    const creal_T   *h2  = (const creal_T*) ssGetInputPortSignal(S,2);
    real_T        *y  = (real_T *)ssGetOutputPortRealSignal(S,0);

    Viterbi_Decoding_Outputs_wrapper(r, h1, h2, y);
}



/* Function: mdlTerminate =====================================================
 * Abstract:
 *    In this function, you should perform any actions that are necessary
 *    at the termination of a simulation.  For example, if memory was
 *    allocated in mdlStart, this is the place to free it.
 */
static void mdlTerminate(SimStruct *S)
{
}

#ifdef  MATLAB_MEX_FILE    /* Is this file being compiled as a MEX-file? */
#include "simulink.c"      /* MEX-file interface mechanism */
#else
#include "cg_sfun.h"       /* Code generation registration function */
#endif


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久国产精品人| 五月婷婷激情综合| 亚洲综合成人网| 国内成人免费视频| 欧美中文字幕久久| 中文在线资源观看网站视频免费不卡| 亚洲无人区一区| 99亚偷拍自图区亚洲| 精品国产91乱码一区二区三区| 一区二区三区在线观看视频| 国产激情一区二区三区桃花岛亚洲| 欧美自拍偷拍一区| **欧美大码日韩| 成人精品电影在线观看| 日本一区二区在线不卡| 精品一区二区三区久久久| 欧美肥大bbwbbw高潮| 亚洲综合免费观看高清完整版在线 | 国产一区二区精品在线观看| 欧美在线视频日韩| 亚洲精品日韩综合观看成人91| 国产盗摄一区二区| 久久这里只有精品视频网| 久久91精品久久久久久秒播| 91精品欧美久久久久久动漫| 偷拍一区二区三区| 欧美日韩一区不卡| 亚州成人在线电影| 欧美巨大另类极品videosbest | 久久爱www久久做| 欧美一区二区在线看| 天天色综合成人网| 欧美精品乱码久久久久久| 日本成人在线网站| 欧美一区二区三区免费大片| 日本亚洲一区二区| 欧美zozozo| 国产二区国产一区在线观看| 中文字幕乱码日本亚洲一区二区 | 国产激情一区二区三区四区| 国产校园另类小说区| 99这里都是精品| 亚洲最大成人网4388xx| 欧美婷婷六月丁香综合色| 无码av免费一区二区三区试看| 欧美日韩亚洲综合在线| 欧美aaaaaa午夜精品| 久久蜜桃av一区精品变态类天堂| 国产不卡高清在线观看视频| 亚洲欧洲精品一区二区三区| 欧美亚洲国产一区在线观看网站| 午夜免费欧美电影| 久久网这里都是精品| 成人免费高清视频| 亚洲成年人影院| 久久人人超碰精品| 色综合天天综合色综合av| 亚洲成a人v欧美综合天堂下载| 91麻豆精品国产无毒不卡在线观看| 麻豆91免费观看| 中文字幕亚洲综合久久菠萝蜜| 欧美亚州韩日在线看免费版国语版| 天天综合天天综合色| 精品福利一区二区三区| 波多野结衣中文字幕一区 | 成人午夜av电影| 亚洲午夜国产一区99re久久| 日韩一级二级三级精品视频| 成人高清免费观看| 午夜精品影院在线观看| 国产亚洲精品福利| 欧美三区免费完整视频在线观看| 国产一区激情在线| 一区二区在线观看视频| 久久综合久久久久88| 欧美性生活久久| 国产不卡在线播放| 蜜臀久久99精品久久久久久9| 国产精品国产三级国产aⅴ原创| 777色狠狠一区二区三区| 国产99久久久久久免费看农村| 午夜一区二区三区视频| 国产精品美女视频| 久久青草欧美一区二区三区| 制服丝袜激情欧洲亚洲| 欧美性猛交一区二区三区精品| 成人免费看黄yyy456| 国产精品资源在线| 免费日本视频一区| 亚洲一区在线视频观看| 国产精品久99| 国产免费成人在线视频| 精品日韩99亚洲| 51久久夜色精品国产麻豆| 91亚洲国产成人精品一区二区三 | 蜜臀久久99精品久久久久久9| 亚洲在线观看免费视频| 亚洲欧美另类在线| 国产精品电影一区二区三区| 国产欧美精品在线观看| 欧美大片一区二区| 欧美久久免费观看| 欧美日韩国产一级| 欧美自拍偷拍一区| 欧美亚洲综合久久| 在线观看视频一区| 欧美日韩中文字幕一区二区| 色呦呦日韩精品| 91蝌蚪porny| 91视频免费播放| 色先锋aa成人| 91久久国产综合久久| 91美女视频网站| 一本久道久久综合中文字幕| 在线精品国精品国产尤物884a| 91麻豆文化传媒在线观看| 色婷婷一区二区| 欧美日韩中文字幕一区| 91精品国产综合久久久久久漫画 | 国产精品萝li| 综合在线观看色| 亚洲综合精品自拍| 一级做a爱片久久| 视频在线观看91| 九九久久精品视频| 国产成人超碰人人澡人人澡| 99精品国产一区二区三区不卡| 色综合 综合色| 91精品免费在线观看| 久久亚洲一级片| 国产精品免费久久| 亚洲国产欧美另类丝袜| 免费成人在线影院| 国产精品亚洲专一区二区三区| 成人开心网精品视频| 色偷偷久久一区二区三区| 91精品国产免费| 国产日韩欧美制服另类| 一区二区三区在线视频观看58| 日本成人中文字幕在线视频| 国产成人午夜视频| 色婷婷av一区二区三区gif| 欧美亚洲禁片免费| 久久久亚洲精华液精华液精华液| 国产精品久久精品日日| 日日夜夜一区二区| 国产99久久精品| 欧美日韩电影一区| 中文字幕va一区二区三区| 舔着乳尖日韩一区| 成人黄色片在线观看| 51午夜精品国产| 亚洲男同1069视频| 激情成人午夜视频| 欧美影视一区二区三区| 国产日韩在线不卡| 免费亚洲电影在线| 色婷婷综合五月| 日本一区二区视频在线| 秋霞国产午夜精品免费视频| 成人app下载| 精品国产一区二区国模嫣然| 有码一区二区三区| 成人午夜在线播放| 欧美va亚洲va| 亚洲国产三级在线| 成人综合在线观看| 精品久久国产老人久久综合| 一区二区在线观看不卡| 国产精品18久久久久久久久| 欧美二区三区的天堂| 一区二区三区在线播| 懂色av一区二区三区免费观看| 欧美老女人第四色| 亚洲欧美韩国综合色| 成人精品视频一区| 久久久久久久综合| 美国十次了思思久久精品导航| 欧美在线一区二区三区| 最新热久久免费视频| 国产电影精品久久禁18| 久久影院午夜论| 久色婷婷小香蕉久久| 欧美精品日韩一区| 亚洲电影你懂得| 在线观看亚洲专区| 亚洲影院在线观看| 色婷婷久久久综合中文字幕| 亚洲欧美日韩中文播放| 99国产精品视频免费观看| 久久精品视频免费| 国产宾馆实践打屁股91| 久久精品一区四区| 国产精品99久久久久久宅男| 久久综合一区二区| 国产一区二区电影| 日本一区二区视频在线观看| 大白屁股一区二区视频| 日韩毛片高清在线播放| 日本伦理一区二区|