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

📄 init_system.h

📁 DPCM编码的联合信源信道译码
💻 H
字号:
#ifndef	_INIT_SYSTEM_H_
#define	_INIT_SYSTEM_H_
/*
**********************************************************************************
  	FILENAME: simconfig.h
	version 0.1
	(C) Pan Yu, 2004
	Declaration:
		All right is deserved by author
		Anyone use this source codes and remove author's name is prohibited   
		Without agreement,noboby can transfer this codes to others. 
	Fucntion Description:
		global variables declaration in this file.
*********************************************************************************
        ChangeLog:
	2004-07-10 : start
	
**********************************************************************************
*/	



#include <time.h>
#include <string.h>
#include <stdio.h>
#include <memory.h>
#include <stdlib.h>
#include "sim_config.h"


typedef struct Str_sys_spt_{
/**********************************************************************************/
// Global variables
/**********************************************************************************/
	int	col_num;
	int row_num;
	int message_bits;
	int check_bits;
	int max_col_wt;
	int max_row_wt;
//-------------------------------------for encoding
	int		*message_locations;
	int		*G_sp_col;
	double	code_rate;
	int		*source_bits;
	int		*source_code;
	int		*send_code;
	int		*received;
	int		*rece_code;
	int		*source_bits_in;
	int		*source_bits_out;
//-------------------------------------for decoding	
	int		iter_times;
	double	*llr_init;
	typedef	struct{
		int	*size;
		int **index;
		double **llr;
		double *llr_sum;
		double *llr_out;
		int *llr_in;
		int **llr_sign;
	}BIT_NODE;
	BIT_NODE	bit_nodes;
	typedef	struct{
		int	*size;
		int **index;
		double *llr;
		int *llr_sign;
		double *llr_min;
		double *llr_sub_min;
		double *llr_sub_min2;
	}CHECK_NODE;
	CHECK_NODE	check_nodes;
//-------------------------------------for simulation_loop
	int	max_block;
	int min_block;
	int max_error_bits;
//-------------------------------------channel dependent parameters
	double noisemean;
	double noisevar;
	double EbNo;
	double EbNo_start;
	double EbNo_end;
	double EbNo_step;
	
//-------------------------------------for statistic 
	clock_t start_time;
	clock_t stop_time;
	time_t	timenow;
	int		run_time;
	int		bit_error;
	int		block_error;
	int		hard_error;
	int		undetected_bit_error;
	int		undetected_block_error;
	int		max_iterations;
	int		min_iterations;
	double	aver_iterations;
	double	ber;
	double	bler;
	double	undet_ber;
	double	undet_bler;
	double  hard_ber;
	double  target_ber;
	double  *ber_iter;
	int     *error_iter;
	FILE	*fp_result;
}Str_sys_spt;

extern Str_sys_spt sys_spt;


void Init_system();
	

#endif

⌨️ 快捷键说明

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