비동기식 전송

AI
qwen-3-235b-a22b-instruct-2507
작성자
익명
작성일
2025.09.14
조회수
None
버전
v1

비동기식 전송

비동기식 전송Asynchronous Transmission)은 데이터 통신에서 널리 사용되는 전송 방식 중 하나로, 데이터를 일정한 시간 간격 없이 필요할 때마다 전송하는 기술. 이 방식 송신자와 수신자 간에 사전에 동기화된 클록 신호를 공유하지 않기 때문에, 각 데이터 단위(보통 문자 단위)를 독립적으로 전송하고 수신하는 구조를 가집니다. 주로 저속 통신 환경이나 간헐적인 데이터 전송이 필요한 시스템에서 활용되며, 초기 컴퓨터 통신, 직렬 포트 통신, 키보드 입력 등 다양한 분야에서 사용됩니다.

개요

비동기식 전송은 데이터를 전송할 때마다 시작 비트(start bit)와 정지 비트(stop bit)를 사용하여 각 문자의 전송 시점을 명확히 함으로써 송수신 장치 간의 시간 동기화를 유지합니다. 이 방식은 전송 속도가 느리고 오버헤드가 크다는 단점이 있지만, 구현이 간단하고 비용이 낮아 간단한 통신 시스템에 적합합니다.

비동기식 전송은 주로 직렬 통신(Serial Communication) 환경에서 사용되며, 전송되는 데이터는 바이트 단위로 나뉘어 전송됩니다. 각 바이트는 시작 비트로 시작하고, 데이터 비트(보통 7~8비트), 패리티 비트(선택 사항), 정지 비트로 구성됩니다.


비동기식 전송의 구조

비동기식 전송은 하나의 문자(또는 바이트)를 전송할 때 다음과 같은 프레임 구조를 사용합니다:

구성 요소 비트 수 설명
시작 비트 1 데이터 전송의 시작을 알리는 신호. 보통 '0'
데이터 비트 5~8 실제 전송할 데이터 (ASCII 코드 등)
패리티 비트 0 또는 1 오류 검출을 위한 비트 (짝수/홀수 패리티)
정지 비트 1~2 데이터 전송의 끝을 알리는 신호. 보통 '1'

전송 예시

예를 들어, ASCII 문자 'A'(65, 이진수 1000001)를 8비트 데이터, 짝수 패리티, 1비트 정지로 전송할 경우:

Start | Data (LSB first)       | Parity | Stop
  0   | 1 0 0 0 0 0 1 0         |   1    |  1

이처럼 각 문자는 독립적인 프레임으로 전송되며, 다음 문자는 이전 문자의 종료 후 임의의 시간 간격을 두고 전송될 수 있습니다.


동기식 전송과의 비교

비동기식 전송은 동기식 전송(Synchronous Transmission) 과 대조되는 개념입니다. 두 방식의 주요 차이점은 다음과 같습니다.

항목 비동기식 전송 동기식 전송
클록 동기화 없음 (각 프레임 독립) 있음 (공유 클록 또는 클록 신호 포함)
전송 단위 문자 단위 블록 또는 프레임 단위
오버헤드 높음 (시작/정지 비트 포함) 낮음
전송 속도 느림 빠름
구현 복잡도 낮음 높음
주요 사용처 키보드, 모뎀, 저속 직렬 통신 고속 네트워크, 디스크 I/O, 프로토콜(예: HDLC)

비동기식 전송은 간단한 하드웨어로 구현 가능하지만, 반복되는 시작/정지 비트로 인해 전송 효율이 떨어집니다. 예를 들어, 8비트 데이터에 시작 1비트, 정지 1비트를 사용하면 8/10 = 80%의 효율만 달성됩니다.


장점과 단점

장점

  • 구현이 간단함: 복잡한 클록 동기화 회로가 필요 없음.
  • 비용 효율적: 저렴한 하드웨어로 구현 가능.
  • 유연성: 데이터 전송 간격이 자유로우며, 간헐적인 통신에 적합.

단점

  • 전송 효율 낮음: 시작/정지 비트로 인한 오버헤드 증가.
  • 속도 제한: 고속 통신에는 부적합.
  • 오류 발생 가능성: 클록 불일치로 인해 수신 오류가 발생할 수 있음 (패리티 비트로 일부 방지 가능).

주요 활용 분야

비동기식 전송은 다음 분야에서 널리 사용됩니다:

특히 UART(Universal Asynchronous Receiver/Transmitter) 칩은 비동기식 전송을 위한 대표적인 하드웨어로, 많은 마이크로컨트롤러에 내장되어 있습니다.


관련 기술 및 프로토콜

  • UART (Universal Asynchronous Receiver/Transmitter): 비동기식 직렬 통신을 위한 하드웨어 인터페이스.
  • RS-232: 비동기식 전송을 기반으로 하는 직렬 통신 표준.
  • ASCII 통신: 텍스트 기반 데이터 전송에서 주로 사용.

// 예: 간단한 UART 초기화 코드 (가상 예시)
void uart_init() {
    UBRR = 103; // 9600bps 설정 (16MHz 클록 기준)
    UCSR0B = (1 << RXEN0) | (1 << TXEN0); // 수신/전송 활성화
    UCSR0C = (1 << UCSZ01) | (1 << UCSZ00); // 8비트 데이터
}


참고 자료

  • Tanenbaum, A. S., & Wetherall, D. J. (2011). Computer Networks. Pearson Education.
  • Stallings, W. (2017). Data and Computer Communications. Pearson.
  • IEEE Standard for Serial Communications (RS-232-C)
  • UART 통신 원리 - Embedded.com

비동기식 전송은 현대 고속 네트워크에서는 주로 동기식 방식이 사용되지만, 간단한 통신 인터페이스와 레거시 시스템에서 여전히 중요한 역할을 하고 있습니다.

AI 생성 콘텐츠 안내

이 문서는 AI 모델(qwen-3-235b-a22b-instruct-2507)에 의해 생성된 콘텐츠입니다.

주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.

이 AI 생성 콘텐츠가 도움이 되었나요?