직렬 통신

전기 통신과 컴퓨터 과학 분야에서 직렬 통신(Serial Bus, 시리얼 버스)은 연속적으로 통신 채널이나 컴퓨터 버스를 거쳐 한 번에 하나의 비트 단위로 데이터를 전송하는 과정을 말한다. 이 용어는 여러 개의 병렬 채널을 갖춘 링크 위에서 동시에 여러 개의 비트를 보내는 병렬 통신과 대조된다.

컴퓨터에서 데이터 처리가 병렬로 되는데, 통신을 위해 병렬 통신을 하려면 여러개의 채널이 필요하다. 거리와 비용을 고려하면 많을 경우 병렬 통신은 문제가 될 수 있다. 결국 병렬로 처리되는 데이터를 통신할 때 시간으로 나누어 차례대로 전송함으로써 문제를 해결할 수 있다.

직렬 통신에서 데이터가 계속되어 전송되면, 각 비트를 구별할 방법이 필요하다. 디지털 회로의 입장에서 수신된 데이터의 비트가 시간적으로 어디서부터 시작이고 끝인지를 알 필요가 있다. 이렇게 데이터 비트를 복구하기 위해 데이터의 시간적 위치를 알리기 위해 동기신호를 보내는 경우와 동기 신호 없이 신호 자체에서 데이터 비트를 복원하는 방식으로 나눌 수 있다.
 동기 방식 : 데이터 신호와는 별도로 동기신호를 함께 보낸다.
 비동기 방식 : 데이터 신호만을 보내고 각각의 방식에 따라 데이터 비트를 찾아낸다.

직렬 버스 
집적회로(IC)들은 이들이 여러 개의 핀을 갖추고 있을 수록 더 비싸다. 수많은 IC들은 핀들의 수를 줄이기 위해 속도가 중요하지 않을 시점에 직렬 버스를 사용하여 데이터를 전송한다. 값싼 직렬 버스의 예를 들자면 SPI, I²C, 1-Wire가 있다.

직렬 통신 구조의 예 
 모스 부호 전보
 RS-232
 RS-422
 RS-485
 I²C
 ARINC 818
 범용 직렬 버스 (USB)
 IEEE 1394
 이더넷
 파이버 채널
 인피니밴드
 MIDI
 DMX512
 SDI-12
 직렬 결합 SCSI
 SATA
 스페이스와이어
 PCI 익스프레스
 SONET, SDH
 T-1, E-1
 모드버스
 USART

같이 보기 
 직렬 포트
 컴퓨터 버스
 병렬 통신
 데이터 전송
 비동기 직렬 통신

외부 링크 
 Wiki:SerialPorts

직렬 버스
물리 계층 프로토콜