chest.c

来自「软件无线电的平台」· C语言 代码 · 共 107 行

C
107
字号
/*************************************************************************** *    chest.c  -  Channel Estimation *                           ------------------- *   begin                :  2003 *   authors              :  selvan *   emails               :  email address ***************************************************************************//*************************************************************************** *                                Changes *                                ------- * date - name - description * 03/08/. - selvan - start * 04/03/06 - ineiti - adjusted description * **************************************************************************//*************************************************************************** *                                                                         * *   This program is free software; you can redistribute it and/or modify  * *   it under the terms of the GNU General Public License as published by  * *   the Free Software Foundation; either version 2 of the License, or     * *   (at your option) any later version.                                   * *                                                                         * ***************************************************************************//** * Channel knowledge is necessary for the detection of symbols in a MIMO * receiver. Knowledge of channel is gained by sending a known training * sequence. This traininig sequence satisfies certain desired properties * as given by 1) Jaiganesh Balakrishnan, Markus Rupp, Harish Viswanthan * 'Optimal Training for Multiple Antenna Systems' 2)C.Fragouli, N. Al-Dhahir, * W. Turin 'Training based channel estimation for Multiple Antenna Brodband * Transmissions'. Please refer to them for more technical details. */#include "spc.h"//#include "sequences.h"#define DBG_LVL 4int rcv_mimo_module_init( void );void rcv_mimo_module_exit( void );int ics_rcv_module_init( void );void ics_rcv_module_exit( void );int rcv_module_init( void );void rcv_module_exit( void );int send_module_init( void );void send_module_exit( void );/* * Just call the two init-functions */int spc_module_init(void) {  if( rcv_module_init() < 0 ) {    PR_DBG( 0, "Couldn't init rcv-part\n" );    return -1;  }  if ( send_module_init() < 0 ) {    rcv_module_exit();    PR_DBG( 0, "Couldn't init send-part\n" );    return -1;  }    if ( ics_rcv_module_init() < 0 ) {    rcv_module_exit();    send_module_exit();    PR_DBG( 0, "Couldn't init ics_rcv-part\n" );    return -1;  }    if ( rcv_mimo_module_init() < 0 ) {    rcv_module_exit();    send_module_exit();    ics_rcv_module_exit();    PR_DBG( 0, "Couldn't init rcv_mimo-part\n" );    return -1;  }    return 0;}/* * And call the two exit-funcitons */void spc_module_exit( void ) {  rcv_mimo_module_exit();  ics_rcv_module_exit();  rcv_module_exit();  send_module_exit();}module_init( spc_module_init );module_exit( spc_module_exit );

⌨️ 快捷键说明

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