본문 바로가기
IT/하드웨어

[하드웨어] 시리얼 통신 용어 정리 (Serial Communication)

by 제가이버 2020. 9. 29.
반응형

 

 

시리얼 통신(Serial Communication)이란?

 

 

 

직렬(Serial) 통신의 모식도

 

 

 

 

시리얼 통신은 통상적으로 하나의 신호선을 이용하여 데이터를 주고받는 통신을 말합니다.

 

하나의 신호선을 이용하기 때문에 일정한 시간 간격으로 데이터를 전송하게 됩니다. 즉 한 시간 간격 동안에 하나의 논리적인 데이터인 0과 1(High 혹은 Low)을 보내며, 일정한 길이의 데이터를 모두 전송하기 위해서는 다소 시간이 소요됩니다.

 

그렇지만 시리얼 통신은 적은 수의 신호선을 사용하기 때문에 저렴하게 통신을 할 수 있습니다. 이런 장점 때문에 최근에 대부분의 통신은 직렬 통신으로 데이터를 전송합니다.

 

시리얼 통신의 적용 예는 USB, PC COM Port 등이 있습니다.

 

 

 

 

 

 

 

 

 

병렬(Parallel) 통신의 모식도

 

 

병렬(Parallel) 통신은 여려 개의 신호선을 사용합니다.

 

신호선의 개수는 하나의 시간 간격 동안에 전송되는 데이터의 크기에 따라서 달라지는데, 일반적으로 8-Bit, 16-Bit, 32-Bit의 데이터 선과 제어 신호선으로 구성되어 있습니다.

 

많은 선을 사용하므로 단위 시간당 전송되는 데이터 Bit의 양은 많지만, 통신 거리가 길어지게 될 경우에 이런 수 많은 선을 모두 연장하여야 하므로 통신 비용이 매우 크다고 할 수 있습니다.

 

최근 다양한 기능을 지닌 단말 장치들이 점차 소형화 되어가는 현실인데, 데이터 통신을 위해서 구성해야하는 I/O 단자의 크기를 크게 줄일 수 없기 때문에 병렬 통신은 쇠퇴의 길을 걷고 있습니다.

 

 

 

 

 

 

동기 시리얼 통신과 비동기 시리얼 통신이란 무엇인가?

 

동기 클록선이 있는 동기 시리얼 통신 모식도

 

 

 

데이터 시작과 끝을 별도의 Bit를 추가하여 동기 클록선이 없는 비동기 시리얼 통신 모식도

 

 

 

위의 그림에서와 같이 동기 시리얼 통신은 데이터를 주고받을 때 동기 클록을 사용하여 전송되는 2진 데이터 신호 정보를 파악하는 통신을 일컫습니다.

 

동기 시리얼 통신에서는 데이터 송수신과 별도의 제어 신호선 이외에 통신을 수행하는 노드 상에 연결된 각 장치에 동기 통신만을 위한 동기화 클록선이 별도로 존재합니다.

 

이런 동기 시리얼 통신은 오류가 적으며, 빠른 데이터 통신을 할 수 있도록 합니다. 그러나 별도의 클록선을 배정해야해 통신비용이 증가되고, 데이터 통신을 위한 주변 전자회로가 다소 복잡해지는 결과를 가져옵니다.

 

비동기 시리얼 통신은 데이터를 주고받는 통신선과 제어선으로만 구성된 통신을 일컫습니다. 비동기 시리얼 통신은 별도의 클록선을 배정하지 않아도 되며, 도선 몇 가닥으로 손쉽게 통신 회선을 구축할 수 있는 장점이 있으며, 통신을 위한 주변 전자회로 장치가 매우 간단한 것이 특징입니다.

 

그러나 비동기 시리얼 통신은 2진 데이터 신호가 통신 회선을 통해서 이동하는 과정 중 원본 데이터에 대한 2진 데이터 신호가 사라지거나 동기 시리얼 통신에 비해서 전송할 데이터의 처금과 끝에 각종 통신 제어관련 정보를 함께 실어 보내야한다는 단점이 있습니다.

 

이 때문에 동기 시리얼 통신보다 그 속도가 더 빠를 수는 없는 구조입니다.

 

하지만 비동기 시리얼 통신은 매우 저렴한 통신을 할 수 있기 때문에 동기 시리얼 통신과 더불어 여러 산업 분야에서 많이 사용되고 있습니다.

 

 

 

 

널리 쓰이고 있는 시리얼 통신들은 무엇인가?

 

· RS-232 : 원래는 터미널 단말기와 모뎀의 접속용으로 쓰였습니다. CCITT(현재 ITU-T)가 V.24, V.28을 권고로 하고 있던 것을 미국 EIA(The Electronic Industries Alliance)가 통신용으로 규격화한 것으로, 텔레타이프 라이터, PC 등의 DTE(Data Terminal Equipment : 데이터 단말장치), 모뎀 등의 데이터 회선 종단 장치(DCE: Data Circuit-Terminating Equipment)를 접속해 데이터를 전송하기 위한 전기적, 기계적인 특성을 정의한 것입니다.

 

25핀의 단자 규격은 단말 쪽은 아니고 모뎀 쪽의 연결기 규격으로 정해져 있기 때문에 PC에서 케이블 본체는 아니고 모뎀 등에 붙어 있는 것이 많다. 현재 많이 이용되고 있는 규격으로는 IBM사가 만든 9핀 단자(직렬 포트)가 있으며 널리 보급되어 있다. 이로써 새롭게 규격에 더해져서 ANSI/TIA/EIA-574-90으로 정해졌다.

 

현재는 그 규격이 오래된 인터페이스로 분류되었고, 주변기기의 접속 용도에는 USB, IEEE1394 등과 통신 용도로는 이더넷(ethernet) 등에 그 역할이 대체되고 있다. 그러나 노이즈에 큰 영향을 받지 않고 먼 곳까지 신호를 전달하고, 단순하게 사용하기 위해서는 아직까지도 유용하다. 일반적으로 한 케이블에 10m 정도까지는 정상적으로 데이터를 통신할 수 있게 되어 있다.

 

 

 

 

· RS-422 : EIA-422(RS-422의 공식적인 명칭, 지금은 TIA-422로 되어 있음)는 '평형 디지털 인터페이스 회로의 전기적 특성'을 규정하는 기술 규격입니다.

 

이 규격은 데이터 전송을 위한 평형 전송 내지 차동신호의 채용, 단방향/무반전, 전송로의 터미네이트의 유무, 포인트 투 포인트(point-to-point), 멀티 드롭 등을 규정합니다. RS-485와 비교해서 EIA-422는 복수 드라이버가 아닌 복수 리시버만을 허용하고 있습니다.

 

평형형 리시버나 평형형 드라이버, 12미터(40피트), 10M메가보의 데이터 속도 등이 이 표준의 이점입니다. EIA-422은 비평형, 평형 신호로의 전기적 신호 특성만을 규정하고 있습니다. 프로토콜이나 핀 할당은 정의되고 있지 않습니다. 이 인터페이스의 접속은 EIA-530(DB-25 커넥터)이나 EIA-449(DC-37 커넥터)로 정해져 있습니다.

 

그러나 송수신을 실현하기 위해서 4개의 나사구멍을 가지는 디바이스도 존재합니다. 최대 케이블 길이는 1200m이며, 최대 데이터 속도는 1.2m에서 10Mbps, 1.2km에서 100kbps입니다. EIA-422는 하나의 드라이버에 10개까지 리시버를 접속할 수 있지만, EIA-485와 같은 진정한 멀티 포인트 접속형 통신 네트워크를 구축할 수 없습니다.

 

 

 

 

· RS-485 : EIA-485(이전에는 TIA/EIA-485 또는 RS-485)는 2선식 반이중 다중점 직렬 연결에 대한 OSI 모델의 물리 계층 명세입니다. EIA-485 표준은 차분 신호를 정의하는데, 두 선 사이의 전압차로 데이터를 표현합니다. 전압의 한쪽이 「1」레벨이면, 다른 한쪽은 「0」레벨을 나타냅니다. 올바른 신호로 인식하려면 적어도 전압의 차이가 0.2V 이상 이어야 합니다. 수신측은 +12V 으로부터 -7V까지의 전압이면 올바른 것이라고 인식합니다.

 

EIA-485는 드라이버와 리시버의 전기적 특성만을 정한 것입니다. 데이터 프로토콜에 대해서는 가이드라인이 존재하지 않습니다. EIA-485를 사용하면 저가의 로컬 네트워크나 멀티 드롭 통신망을 구축할 수 있습니다. 이 규격은 고속 데이터 통신 속도를 낼 수 있는데 10m까지는 35M bit/s, 1200m 에서는 100kbit/s 입니다. EIA-485는 EIA-422과 같이 트위스트 페어(twisted pair)를 이용한 평형형 전송로를 채택하고 있기 때문에 비교적 먼 거리(4000 피트, 1200m 이상)까지 늘리는 것이 가능합니다.

 

EIA-485는 2선식으로, EIA-422는 4선식으로 알려져 있어 많은 엔지니어들이 그라운드(Ground) 연결을 하지 않아 시스템의 문제를 일으키는 경우가 있습니다. EIA-485와 EIA-422 네트워크 연결시에 반드시 그라운드를 연결하여야 하며 만일 연결하지 않는 경우에는 연결되 각 장비 사이의 그라운드 전위가 발생하여 잡음이 발생하거나 드라이버가 파손될 수 있으니 주의가 필요합니다.

 

 

 

 

· SPI : 직렬 주변기기 인터페이스 버스(Serial Peripheral Interface Bus) 또는 SPI 버스는 아키텍처 전이중 통신 모드로 동작하는 모토로라 아키텍처에 이름을 딴 동기화 직렬 데이터 연결 표준입니다. 장치들은 마스터 슬레이브 모드로 통신하며 여기서 마스터 장치는 데이터 프레임을 초기화합니다. 여러 슬레이브 장치들은 개별 슬레이브 셀렉트(칩 셀렉트) 라인과 함께 동작할 수 있습니다.

 

 

 

 

· I2C : I2C(Inter-Integrated Circuit, 아이-스퀘어-씨)는 필립스에서 개발한 직렬 컴퓨터 버스이며 마더보드, 임베디드 시스템, 휴대전화등에 저속의 주변 기기를 연결하기 위해 사용됩니다.

 

I2C는 풀업 저항이 연결된 직렬 데이터(SDA)와 직렬 클럭(SCL)이라는 두 개의 양 방향 오픈 컬렉터 라인을 사용합니다. 최대 전압은 +5 V 이며, 일반적으로 +3.3V 시스템이 사용되지만 다른 전압도 가능합니다.

 

I2C 레퍼런스 디자인은 7 비트의 주소 공간을 가지며, 이 중 16개는 예약되어 있으므로, 동일한 버스에 최대 112개의 노드를 연결할 수 있습니다. 가장 일반적으로 사용되는 I2C 버스의 모드는 표준 모드인 100 kbit/s와, 저속 모드인 10 kbit/s 가 사용됩니다.

 

최신 리비전의 I2C 는 보다 빠르게 동작하며, 패스트(fast) 모드인 400 kbit/s와 고속(high-speed) 모드인 3.4 Mbit/s를 지원합니다. 최대 1008 노드까지 연결 가능한 10 비트 주소 지정 등의 확장된 기능들을 지원합니다.

 

 

 

 

· CAN : CAN 통신(Controller Area Network)은 차량 내에서 호스트 컴퓨터 없이 마이크로 콘트롤러나 장치들이 서로 통신하기 위해 설계된 표준 통신 규격입니다. CAN 통신은 메시지 기반 프로토콜이며 최근에는 차량 뿐만 아니라 산업용 자동화기기나 의료용 장비에서도 종종 사용되고 있습니다.

 

CAN 통신은 로버트 보쉬사에서 1983년부터 개발에 착수해 1986년 미국 미시간주 디트로이트에서 열린 SAE(Society of Automotive Engineers)에서 공식적으로 발표되었습니다. 최초의 CAN 콘트롤러 칩은 인텔과 필립스에 의해 생산되었으며 1987년 시장에 출시되었습니다. 1991년 보쉬는 CAN 2.0 스펙을 발표하였습니다.

 

CAN 통신은 OBD-II라고 불리는 차량 진단용 통신 표준의 5대 프로토콜 중 하나로 포함되어 있습니다. OBD-II 표준은 1996년 이후로 미국에서 판매되는 모든 승용차와 소형 트럭에 필수사항으로 적용되었으며 EU에서는 2001년 이후 판매되는 가솔린 차량에 대해, 2004년 이후 판매되는 모든 디젤차량에 대해 EOBD 표준을 적용하도록 규격이 정립되었습니다.

 

 

 

 

· LIN : LIN(Local Interconnect Network)은 주로 ECU와 능동센서 및 능동 액추에이터 간의 데이터 전송에 사용됩니다. LIN은 간단하며, 느린 12V, 단선 버스입니다. LIN은 마스터-슬레이브(master-slave) 원리에 따라 작동하며, 신호형태 및 프로토콜(디지털 정보의 형식)은 표준화되어 있습니다.

 

특히 LIN 버스 시스템은 멀티플렉스 시스템과는 달리, 데이터 전송의 신호형태 및 프로토콜(데이터 정보의 형식)이 표준화되어 있기 때문에 다수의 시스템 생산회사 및 자동차 회사들이 LIN 부품을 공용할 수 있습니다. 따라서 표준화된 진단-툴(tool) 및 진단 소프트웨어의 사용, 그리고 고장진단의 단순화가 가능하다는 점이 장점입니다.

 

 

 

+

 

RS-232C와 같은 규격의 시리얼 통신에서는 기본적으로 3선이 이용됩니다.

데이터 전송을 위한 RxD, 수신을 위한 TxD, 그리고 신호선의 기준 전압을 위한 GND 선이 그것입니다.

 

일단 Tx는 통신에서 Transmit의 약어이고, D는 Data를 뜻합니다. 따라서 TxD는 송신 데이터 선이란 뜻이죠.

비슷하게 Rx는 Receive의 약어이고, D는 동일하므로, RxD는 수신 데이터 선이란 뜻입니다.

 

그밖에 간단하게 통신 관련해서 약어 설명을 드리자면,

DTE(Data Terminal Equipment) : 컴퓨터 등의 제어장치

DCE(Data Communication Equipment) : 제어장치와 연결되는 주변장치

 

DTE 두개를 연결하려면 RxD, TxD가 서로 꼬인 크로스 케이블을 사용해야 하고,

DTE와 DCE를 연결할 때는 일반적인 널 케이블을 사용하면 됩니다.

 

RTS(Ready To Send) : DTE가 DCE에게 데이터를 받을 준비가 됐음을 나타내는 신호선.

CTS(Clear To Send) : DCE가 DTE에게 데이터를 받을 준비가 됐음을 나타내는 신호선.

 

DTR(Data Terminal Ready) : DTE가 DCE에게 자신이 송수신 가능한 상태임을 알리는 신호선. 일반적으로 컴퓨터등이 전원 인가후 통신 포트를 초기화한 후 이신호를 출력

 

DSR(Data Set Ready) : DCE가 DTE에게 자신이 송수신 가능한 상태임을 알려주는 신호선. 일반적으로 모뎀에 전원 인가 후 모뎀이 자신의 상태를 파악한 후 이상이 없을 때 이 신호를 출력

 

 

 

 

반응형

'IT > 하드웨어' 카테고리의 다른 글

[하드웨어] SMT 용어 정리 <2편>  (0) 2020.09.29
[하드웨어] SMT 용어 정리 <1편>  (0) 2020.09.29
[ROS] 로봇 운영체제 ROS  (0) 2020.08.07
[ROS] 로봇 소프트웨어 플랫폼  (0) 2020.08.07
블로그 운영 목적  (0) 2020.03.13

댓글