• LF몰 이벤트
  • 캠퍼스북
  • 파일시티 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

CRC(cyclic redundancy check) 기본 설명 및 C 를 이용한 소스 구현

*재*
개인인증판매자스토어
최초 등록일
2007.06.01
최종 저작일
2007.04
14페이지/한글파일 한컴오피스
가격 5,000원 할인쿠폰받기
다운로드
장바구니

소개글

Cyclic redundancy check 를 C(C++)로 구현하는 것이 본 프로젝트의 목적이다. 시뮬레이션은 오로지 C 또는 C++로만 구현해야 하며, CRC를 생성하여 이를 전송하는 부분과 전송받은 데이터를 토대로 에러발생 여부를 검사하는 부분 2가지로 구성한다. 보내고자 하는 char형의 데이터가 입력되면 송신부분에서 CRC를 생성하여 보내고자 하는 데이터와 함께 수신부로 전송을 한다. 이때 비트당 0.1% 에러 발생 확률로 데이터를 전송한다. 수신부분에서는 전송받은 데이터의 error를 검출하여 최종 결과를 얻는다.
- 송신부분
보내고자 하는 데이터는 char형을 scanf로 입력받는다. 예를 들어 “data communications and networking” 이라는34개의 character를 입력 받았다고 가정하면, 각 character에 대한 ASCII 코드를 추출한다. 그리고 이를 바탕으로 CRC를 생성한 후 보내고자 하는 데이터와 함께 수신측으로 전송한다. 이 때 비트당 에러 발생 확률은 0.1%로 한다.

- 수신부분
수신된 데이터를 가지고 에러의 발생 여부를 검사한다. 만약 에러가 발생하였다면 에러가 발생하지 않을 때까지 송신측으로 부터 데이터를 전송 받는다.

CRC를 이용한 에러 check 를 C프로그램을 이용하여 구현하였습니다.
첫 부분은 기본적인 CRC의 설명을 하였고, 소스코드를 구현하기 위해
순서도(flow chart)를 나타내었습니다.
각 순서도는 system,sender and reciever, CRC generator, CRC checker 등 상세하게 나타내었고
소스코드도 상세한 주석을 통해 모두가 이해할수 있도록 작성하였습니다.

목차

1. CRC의 정의, 특성 등의 기본적인 개념 정리
1.1 What is the error?
1.2 What is the CRC?
1.3 Fundamental notion of CRC
1.4 Commonly used and standardized CRCs
2. Flow chart 작성
- System
- Sender 및 receiver
- CRC generator 및 CRC checker
- 전송 중 에러 발생에 대한 부분
3. Source Code 설명
4. 실행결과에 대한 설명
5. 그 외 필요한 설명

본문내용

1. CRC의 정의, 특성 등의 기본적인 개념 정리

1.1 What is the error?
트랜지스터를 기반으로 하는 컴퓨터는 모든 데이터 처리를 2진법에 기초한다. high-low voltage동작을 컴퓨터 프로세서는 0과 1로 표현하는 것이다. 우리가 컴퓨터로 사용하는 문서, 음악, 영화 등 모든 데이터는 0과 1로 이루어진 binary 덩어리이다. 마치 영화 ‘매트릭스’의 도입화면에서 나타나는 녹색 줄의 0과1의 무수한 코드처럼 말이다. 그러므로 컴퓨터간의 데이터 전송 시에도 0과 1의 조합이 전송되는 것이다. 문제는 이런 데이터의 이동에 있어서 방해요인이 있다는 것이다. 비록 미미한 정도지만 전송선의 저항이 있을 수도 있고, 혹은 네트워크 내의 오류가 있을 수도 있고, 주변 통신기기의 강력한 전파로 인해 전송에 장애가 올 수도 있는 것이다. 이런 약간의 방해요인으로 0과 1의 조합에 균열이 가면 데이터는 엉망이 되고 만다. 이렇게 sender가 의도하지 않은 전송 중에 일어나는 error를 receiver쪽에서는 전혀 알 수 없으므로 이것을 detecting하고 더 나아가 correcting하기 위한 기술들이 필요하다.

1.2 What is the CRC?
Network는 한 장치에서 다른 장치로 정확하게 데이터를 전송할 수 있어야 한다. 한 장치에서 수신한 데이터가 다른 장치 송신된 데이터와 동일하다고 확신할 수 없는 network는 쓸모가 없다. 그러나 sender에서 receiver로 전송되는 데이터는 전송 중에 변경될 가능성을 항상 가지고 있다. 신뢰성 있는 시스템은 이러한 errors를 Detecting하고 Correcting할 수 있는 기법을 포함하고 있어야 한다.
순환중복검사(巡環重復檢査), CRC(cyclic redundancy check)는 네트워크 등을 통하여 데이터를 전송할 때 전송된 데이터에 오류가 있는지를 확인하기 위한 체크값을 결정하는 방식을 말한다.

참고 자료

없음

자료후기(1)

*재*
판매자 유형Bronze개인인증

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우

이런 노하우도 있어요!더보기

최근 본 자료더보기
  • 프레시홍 - 전복
탑툰 이벤트
CRC(cyclic redundancy check) 기본 설명 및 C 를 이용한 소스 구현
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업