직렬 통신과 병렬 통신

2015. 6. 1. 12:59 from 통신

병렬 통신


일반적으로 마이크로프로세서가 데이터를 주고 받는 방식은 병렬 통신과 직렬 통신 2가지로 볼 수 있다. 병렬 통신이란 다수의 비트를 한번의 클럭 타이밍에 처리하는 방식을 말한다. 이는 대량의 데이터를 짧은 시간에 한꺼번에 처리함으로써 통신 속도의 향상을 꾀한 방식이다. 8비트 병렬 통신이라고 하면 8개의 IO 포트들을 통해서 한번에 8비트(1바이트)가 동시에 전송된다. 하지만 병렬 통신은 한 번에 처리하는 비트가 많아질수록 많은 데이터 라인이 필요하고 사용되는 포트수가 많아져서 설계의 어려움과 함께 비용이 증가한다. 그리고 라인수가 많기 떄문에 멀리까지 통신하기 어려울 뿐만 아니라 선간 누화(노이즈)현상까지 생겨서 데이터 무결성에도 문제가 생긴다. 이러한 이유로 외부와 통신하는 경우에는 병렬 통신보다 라인수가 훨씬 적은 직렬 통신을 많이 사용하게 된다.



직렬 통신


직렬 통신이란 데이터 비트를 1개의 비트 단위로 송수신하는 방식을 말한다. 데이터 비트가 1비트이기 때문에 송순에 필요한 라인수가 2개면(RX/TX) 충분해진다.

한 개의 비트의 정보를 순차적으로 전달하는데, 8비트 통신의 경우 1비트씩 순차적으로 8개의 정보를 전달하는 방식이며, 직렬 통신을 시리얼 통신이라고 부르는 이유이다. 직렬 통신은 한 번에 처리하는 데이터가 많지 않기 때문에 병렬 통신에 비해 느리지만 라인 구성이 간단해서 구현하기 쉽고 비용이 적다. 거기에다가 멀리까지 갈 수 있는 장점이 있어서 OpenCM9.04와 같은 임베디드 환경에서 많이 쓰인다.



출처 : 임베디드 로보틱스  (오픈 소스를 활용한,OpenCM의 활용)

'통신' 카테고리의 다른 글

왜 TTL 통신인가  (0) 2015.06.01
RS-232와 UART  (0) 2015.06.01
Buad rate  (0) 2015.06.01
동기 비동기 개념  (0) 2015.05.28
시리얼 통신 개요  (0) 2015.05.28
Posted by 나무길 :