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

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

?? main.c

?? 用于LDPC編碼譯碼的仿真實現。包括隨機生成校驗矩陣、由校驗矩陣產生生成矩陣、編碼、加隨機噪聲、譯碼等內容。原作者是老外
?? C
字號:
/* MAKE-LDPC.C - Make a Low Density Parity Check code's parity check matrix. */

/* Copyright (c) 2000, 2001 by Radford M. Neal 
 *
 * Permission is granted for anyone to copy, use, or modify this program 
 * for purposes of research or education, provided this copyright notice 
 * is retained, and note is made of any changes that have been made. 
 *
 * This program is distributed without any warranty, express or implied.
 * As this program was written for research purposes only, it has not been
 * tested to the degree that would be advisable in any important application.
 * All use of this program is entirely at the user's own risk.
 */

//#include <stdafx.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <time.h>

#include "rand.h"
#include "alloc.h"
#include "mod2sparse.h"
#include "rcode.h"
#include "make-ldpc.h"
#include "make-gen.h"
#include "encode.h"
#include "transmit.h"
#include "dec.h"
#include "check.h"
#include "extract.h"




seed = 15963;	//initiation number for random
block_num=1000;		//number of blocks to tansmitting要傳送的分組數
max_iter=200;   //最大迭代次數  
M=252;N=512;   //校驗矩陣的維數


/* METHODS FOR CONSTRUCTING CODES. */

/* MAIN PROGRAM. */
void main()
{
	int i;

	mod2sparse_strategy strategy;  //枚舉型變量

	/*parameter for decode解碼參數 */
	int iter,c;   //iter迭代次數,c用于標實解得的碼字是否滿足校驗矩陣
	double tot_iter=0;
	int nb;     //傳送的碼塊數
	double *lratio,*LLR;   /*demodulator output解調輸出*/

	FILE *stream;	/* point to "simu_report.txt" which is used to record the results */
	int err_bit,totbit;
 
	clock_t start, end;
	
	/* = = = = parameter  for channel = = = = = */
	float Eb_N0_dB[7] = {0.5,1,1.5,2,2.5,3};  //信道的幾種信噪比的情況
	float EbN0dB;
	int ien;

	double sgma;// = 1/sqrt(pow( 10.0, Eb_N0_dB/10.0 )*2*(N-M)/N);	//Eb / N0 = 1 / 2Rs2
	
	int *source_data, *encoded_data, *decoded_data, *decoded_source,*pchk;
	double *received_data;
	int err_num,err_blck;  //錯碼數和錯分組數
	double blck_err_prop[7],bit_err_prop[7];  //對應于每種信道參數的誤碼率和誤分組率

	/* = = = =生成 LDPC 碼的輸入參數 = = = = = = */

	char *pchk_file="pchk_file",*gen_file="gen_file";
	double  *lamita;	//distribution of check bits in each col
	double  *lao;		//lao[i]/i is distribution of check bits in each row

    int Dlmax = 10,Drmax = 10;			/* max number of check bits in rows */
  			/* max number of check bits in cols */


   lamita = chk_alloc (Dlmax+1, sizeof *lamita);
    for (i=0; i<Dlmax+1; i++)
       lamita[i] = 0;

    lao = chk_alloc (Drmax+1, sizeof *lao);
    for (i=0; i<Drmax+1; i++)
       lao[i] = 0;

	lamita[3] = 1;

	lao[6] = 1;		//intiation the distribution of check bit in each col
   

   /*====*/


	
	received_data = chk_alloc (N, sizeof *received_data);
 	
	source_data = chk_alloc (N-M, sizeof *source_data);
	encoded_data = chk_alloc (N, sizeof *encoded_data);
	decoded_data = chk_alloc (N, sizeof *decoded_data);
	pchk = chk_alloc (M, sizeof *pchk);
	decoded_source = chk_alloc (N-M, sizeof *decoded_source);
	lratio = chk_alloc (N, sizeof *lratio);
	LLR = chk_alloc (N, sizeof *LLR);


	if ((stream=fopen( "test_ldpc_report.txt", "a+" )) == NULL)
    {
	  printf("\nError! Can not open file simu_report.txt\n");
	  exit(1);
    }


	strategy = Mod2sparse_minprod;
	
	/*print the ldpc code structure to screen*/

	printf("/*=================================*/\n");
	printf("LDPC code structure\n");

	printf("M=%d, N=%d, blck_num=%d\n", M, N, block_num);
	

	/*print the ldpc code structure to simu_report.txt*/

	fprintf(stream,"/*=================================*/\n");
	fprintf(stream,"LDPC code structure KTS\n");

	fprintf(stream,"M=%d, N=%d, blck_num=%d\n", M, N, block_num);

    /*cycle for different signal to noise ratio*/

	for (ien=0;ien<6;ien++)
	{
		EbN0dB = (float)Eb_N0_dB[ien];
		sgma = 1/sqrt(pow( 10.0, EbN0dB/10.0 )*2*(N-M)/N);
		err_num=0,err_blck=0,totbit=0;

		/*====   output the simulation parameters	=====*/
		/*	to screen	*/
		printf("/*=================================*/\n");
		printf("LDPC code simulation:\n");
		printf("/*=================================*/\n");
		printf("====signal to noise ratio====\n");
		printf("Eb_N0_dB=%f, sgma=%f\n",EbN0dB, sgma);

		/*encode and decode for each block*/
		for (nb=0; nb<block_num;nb++)
		{

		    start=clock();
		    err_bit=0;

            make_ldpc_l(pchk_file,lamita, Dlmax,lao, Drmax, seed);
	
	        make_gen(pchk_file,gen_file, strategy);
		

         rand01(source_data, N-M,seed);

		 encode(pchk_file,gen_file, source_data,encoded_data);
		

		 /*modulation mode in communication system*/
		 bpsk_transmit(encoded_data, received_data, N ,seed, sgma);
		 
		 for (i=0;i<N;i++)
		 {
		    lratio[i] = (2*received_data[i]/(sgma*sgma)) ;//log(P(x=1)/P(x=0))
		 }
	
		 /* Read parity check matrix. */

         read_pchk(pchk_file);

		 initprp(H,lratio,decoded_data);   //初始化概率解碼
		   
		 for (iter = 0; ; iter++)
		 {
			   c = check(H,decoded_data,pchk);

				   
               if (iter==max_iter || (max_iter>0 && c==0))
			   { break; 
			   }

		    iterprp(H, lratio, decoded_data, LLR);
		}

   		   mod2sparse_free(H);

		   extract(gen_file, decoded_data, decoded_source);
		   err_bit=0;
		   /* = = = statistic error= = = */
		   for (i = 0; i<(N-M); i++)
		   {
			   err_bit += decoded_source[i] ^ source_data[i];

		   }
		   if (err_bit!=0)
		   {
			   err_num +=err_bit;
		       err_blck ++;
		       err_bit = 0;
		   }
		   printf("%d %s", nb+1, "block transmitted\n");
		   end=clock();
		   printf( "\n%5f seconds\n", (double)(end - start) / CLOCKS_PER_SEC);
		   totbit+=N-M;
		}

		blck_err_prop[ien] = (double) err_blck /(nb+1);
	    bit_err_prop[ien] = (double) err_num / totbit;
        fprintf(stream,"perr_num=%d,  err_blck=%d,  bit_err_prop=%f,  blck_err_pro=%f\n",
 		  err_num, err_blck, bit_err_prop[ien], blck_err_prop[ien]);

	}

	fclose(stream);

    free(received_data);
    free(source_data);
	free(encoded_data);
	free(decoded_data);
	free(decoded_source);
	free(pchk);
	free(lratio);
 
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
制服丝袜av成人在线看| 久久精品水蜜桃av综合天堂| 亚洲免费av在线| 在线看一区二区| 亚洲激情在线播放| 欧美亚洲综合久久| 91精品国产欧美一区二区18| 精品制服美女丁香| 久久婷婷成人综合色| 成人黄色免费短视频| 专区另类欧美日韩| 欧美日韩日日摸| 日韩激情中文字幕| 日韩精品一区二区三区在线播放| 国产喂奶挤奶一区二区三区| 菠萝蜜视频在线观看一区| 亚洲三级电影全部在线观看高清| 在线观看网站黄不卡| 蜜桃视频一区二区| 中文字幕国产一区| 欧美日韩精品一区二区三区| 蜜桃传媒麻豆第一区在线观看| 久久久久久97三级| 91福利在线看| 久久精品国产亚洲高清剧情介绍 | 亚洲欧美视频在线观看| 欧美日韩国产高清一区二区 | 国产精品久久久久久久久图文区| 色噜噜偷拍精品综合在线| 美女www一区二区| 中文字幕亚洲不卡| 日韩免费看网站| 成人av先锋影音| 日韩制服丝袜av| 国产精品网站导航| 91精品国产麻豆国产自产在线 | 欧美久久免费观看| 国产精品538一区二区在线| 亚洲高清免费观看| 亚洲国产精品精华液ab| 欧美男女性生活在线直播观看| 国产成人精品三级| 日韩va亚洲va欧美va久久| 国产精品色在线| 4438x成人网最大色成网站| 波波电影院一区二区三区| 久久99精品久久久久久国产越南| 亚洲乱码国产乱码精品精可以看| 精品国产三级电影在线观看| 欧美性色黄大片| 成人91在线观看| 久久精品99国产国产精| 亚洲福中文字幕伊人影院| 国产精品九色蝌蚪自拍| 精品国产成人在线影院| 欧美日韩在线三区| 91在线视频播放地址| 国产又黄又大久久| 日本系列欧美系列| 亚洲最大的成人av| 亚洲人成精品久久久久| 久久午夜电影网| 日韩欧美在线网站| 6080亚洲精品一区二区| 欧美在线观看一区| 91久久精品一区二区| 91在线国产福利| 成人黄动漫网站免费app| 国产成人一区在线| 国产精品资源网站| 激情另类小说区图片区视频区| 美国十次综合导航| 美女脱光内衣内裤视频久久影院| 午夜视黄欧洲亚洲| 天天操天天综合网| 亚洲.国产.中文慕字在线| 亚洲成在人线在线播放| 亚洲一二三四在线观看| 一区二区三区视频在线看| ㊣最新国产の精品bt伙计久久| 日本一区二区久久| 欧美国产乱子伦| 国产精品乱人伦中文| 亚洲欧洲色图综合| 亚洲黄色小视频| 亚洲一二三区不卡| 婷婷久久综合九色综合绿巨人| 日本亚洲最大的色成网站www| 日本aⅴ亚洲精品中文乱码| 日韩av电影一区| 久久av资源网| 国产久卡久卡久卡久卡视频精品| 国产不卡免费视频| 99九九99九九九视频精品| 色婷婷一区二区三区四区| 欧美性大战xxxxx久久久| 欧美日韩在线直播| 日韩欧美一级二级三级久久久| 精品粉嫩超白一线天av| 久久精品视频免费观看| 中文字幕一区二区三区不卡在线| 亚洲精品久久嫩草网站秘色| 午夜av电影一区| 国产尤物一区二区| 91麻豆swag| 91精品啪在线观看国产60岁| 久久久久久99精品| 亚洲欧美日本韩国| 久久成人羞羞网站| 成人免费高清在线| 欧美精品三级日韩久久| 欧美专区日韩专区| 日韩久久久精品| 国产精品国产三级国产| 性做久久久久久免费观看 | 国产麻豆成人传媒免费观看| 99久久免费精品| 欧美日韩精品专区| 久久蜜桃av一区精品变态类天堂| 亚洲视频一二三区| 轻轻草成人在线| 北条麻妃国产九九精品视频| 欧美乱妇20p| 久久亚洲春色中文字幕久久久| 亚洲最新在线观看| 国模少妇一区二区三区| 色国产综合视频| 久久一留热品黄| 亚洲电影第三页| caoporen国产精品视频| 88在线观看91蜜桃国自产| 日本一区二区三区高清不卡| 日日摸夜夜添夜夜添亚洲女人| 成人午夜在线免费| 欧美一区二区三区免费观看视频| 国产精品毛片无遮挡高清| 美日韩一级片在线观看| 在线观看亚洲a| 国产精品久久久99| 国精产品一区一区三区mba桃花| 欧洲精品视频在线观看| 国产免费观看久久| 美女网站一区二区| 欧美日韩成人激情| 亚洲美女免费在线| 风间由美性色一区二区三区| 日韩午夜激情视频| 亚洲18色成人| 欧美在线免费观看亚洲| 国产精品久久久久一区二区三区| 久久精品理论片| 欧美一区午夜视频在线观看| 亚洲综合色成人| 色综合激情五月| 亚洲婷婷综合色高清在线| 国产a精品视频| 精品av综合导航| 久久成人18免费观看| 在线成人小视频| 亚洲国产一二三| 欧美亚洲精品一区| 亚洲精品国久久99热| 色综合天天狠狠| 中文字幕一区二区在线播放| 成人在线综合网站| 久久久久久久久久久久电影| 美女在线视频一区| 欧美大白屁股肥臀xxxxxx| 日本在线不卡视频一二三区| 在线成人av网站| 天天综合天天做天天综合| 欧美美女一区二区在线观看| 午夜av区久久| 91精品国产综合久久香蕉麻豆| 天天影视网天天综合色在线播放| 欧美日韩五月天| 日韩激情一二三区| 日韩一二三四区| 久久99精品一区二区三区| 日韩你懂的在线播放| 国产一区91精品张津瑜| 久久久久久久精| 成人精品国产福利| 亚洲精品美腿丝袜| 欧美日韩一本到| 久久精品国产免费看久久精品| 精品美女一区二区三区| 国产电影一区在线| 亚洲视频在线观看一区| 在线观看精品一区| 裸体健美xxxx欧美裸体表演| 久久综合九色综合97_久久久| 国产精品综合一区二区三区| 国产精品每日更新| 欧美性受xxxx| 国产资源在线一区| 自拍av一区二区三区| 欧美精品粉嫩高潮一区二区| 精彩视频一区二区三区| 中文字幕亚洲一区二区av在线|