C언어를 이용한 Matched Filter를 사용한 최적 수신기를 구현과 BER 측정
- 최초 등록일
- 2009.03.09
- 최종 저작일
- 2008.09
- 9페이지/ 압축파일
- 가격 2,000원
소개글
★ 문제마다 C프로그래밍을 이용하여 정합필터(matched filter)를 구현하고
BER을 측정하였습니다.
★ 문제마다 상세한 해설과 그림, 표가 있어서 이론을 이해하기 쉽습니다.
★ 주요 C code에 주석을 달아 수정하고 싶을 때 바꿔야 할 부분을 찾을 수 있습니다.
★ 통신이론 2학기 제출 과제 입니다.
※ C코드에 input으로 들어가는 dat 파일은 압축 파일에 같이 있습니다.
목차
없음.
본문내용
C코드로 구현한 것을 보면, 세 입력신호 모두 한 비트구간이 10 sample 이므로 신호가 입력 될 때 10개씩의 합을 한 비트로 보고 0과 1로 판정하면 된다. 이 때 0과 1을 판정할 수 있는 기준인 경계값 를 정해야 한다. input#1의 경우에는 20과 0의 평균값인 10이 10 sample이 입력되므로 면적은 100이고 이 값이 10 sample을 합한 값보다 크면 1이고 작으면 0이다.
<중 략>
input#5의 경우 다른 신호들과 다르게 한 비트 구간이 20 sample이다. input#2와 1과 0에 대응하는 파형은 비슷하지만 진폭 A 값이 더 작다. 앞 문제에서 비교한 것처럼 input#5의 성능이 input#2의 성능 보다 안 좋은 이유는 energy가 더 작아서 이다. input#2의 energy는 1000인 반면 input#5의 energy는 999.7로 다소 차이가 있는 것을 볼 수 있다.
아래의 그래프와 같이 energy가 클수록 오류율이 줄어드는 것을 볼 수 있다.
<중 략>
3. input#5의 최적수신기
#include <stdio.h>
void main()
{
FILE *fin,*fin_bit,*fout;
fin = fopen("input#5.dat","rb");
fin_bit = fopen("bit.dat","rb");
fout = fopen("output#5.dat","wb");
int i,s,temp1,temp2,err=0 ;
float input, sum=0;
for(i = 0; i<1000 ; i++)
참고 자료
Communication system
압축파일 내 파일목록
통신HW_1.hwp
bit.dat
input#1.dat
input#2.dat
input#3.dat
input#4.dat
input#5.dat