티스토리 뷰

목차



    반응형

    직렬(시리얼) 통신의 특징

    한 순간에 데이터를 보내는 형태가 여러 데이터를 전송하는 게 아니라 하나의 데이터를 보내는 것을 의미합니다. 반대로 여러 데이터를 한 순간에 보내는 형태를 병렬(패러렐 통신)이라고 할 수 있습니다. 대표적인 예시로 컴퓨터에서 컴포트를 연결한 마우스가 되겠습니다.

    1. 컴퓨터와 외부 장비 간 통신에 주로 사용되며, 병렬 통신 보다 원거리 전송에 유리합니다.

    2. 비교적 구현 기술과 비용이 단순하며 저렴합니다.

    3. 산업 현장에서 여러 장비 간 통신에 사용되는 경우가 많습니다.

    전송 방식

    동기 전송 방식과 비동기 전송 방식으로 구분해 보겠습니다. 클럭 신호처럼 동기 신호를 함께 보내 통신하는 방식을 동기 전송 방식이라 하며, 동기를 위한 신호를 보내지 않고 통신하는 방식을 비동기 전송 방식이라고 합니다. 대신 비동기식 전송 방식은 송수신 양측에서 데이터 통신 속도와 전송하는 데이터 형태를 미리 약속하여 전송합니다.

    에러 검출

     

    1. 패리티 에러

    데이터가 깨졌음을 의미합니다. 직렬 통신 과정에서 보내는 데이터 프레임 속에 패리티 비트를 통해 오류를 검출합니다. 패리티 비트란, 패리티 연산을 통해서 데이터가 깨졌는지를 알아보는 비트를 의미합니다.

    간단하게 설명드리면, 짝수 패리티와 홀수 패리티라는 연산 방식을 이용해서 에러를 확인합니다.

    예시를 들자면, 전송하는 데이터가 '0100 1010'이라고 해보겠습니다. 그렇다면 데이터 안에 '1'의 개수는 3개로 홀수 개입니다. 짝수 패리티 방식을 사용한다면 패리티 비트는 '1'이 되면서 패리티 비트와 데이터 비트네 '1'의 개수가 짝수개가 되고 홀수 패리티 방식을 사용한다면 패리티 비트는 '0'이 됩니다. 통신 과정에서 데이터가 깨짐으로 인해 '0000 1010'으로 바뀌어 버렸다면 '패리티 에러'가 발생합니다.

     

    2. 오버런 에러

    데이터를 처리하는 측에서 처리할 수 있는 데이터 양을 넘어서 통신하는 경우 발생하는 에러입니다.

     

    3. 프레이밍 에러

    수신받은 데이터 프레임에서 정지 비트를 확인할 수 없을 때 발생하는 에러입니다. 클럭 신호를 정교하게 하거나, 정지 비트를 2비트로 설정하는 방법, 전송 과정에서 IDLE 타이밍을 두어서 오차가 발생하는 것을 줄여 에러 발생을 줄일 수 있습니다.

     

    4. 브레이크 시그널

    데이터 통신 과정에서 일정 시간 동안 데이터 값 '0'이 유지될 때를 의미합니다. 시그널 데이터 프레임 안에 IDLE 신호값도 '1'이고 정지 비트도 '1' 이므로 계속 '0'의 신호값을 유지한다는 것은 있을 수가 없다.

    비동기 직렬 통신 시스템 형태

    1. 데이터 처리부

    데이터를 처리하는 역할을 한다. CPU라고 생각하면 쉽습니다.

     

    2. UART 컨트롤러

    패러렐 데이터를 데이터 처리부에서 받아서 시리얼 데이터로 변환하거나 송신 측에서 보낸 패러렐 데이터를 시리얼 데이터로 변환하는 기능을 합니다.

     

    3. Line Transceiver

    케이블을 통해 멀리 전송할 수 있도록 신호를 증폭하는 역할을 합니다. UART 컨트롤러 이후 Line Transceiver를 통해 신호를 증폭하거나 변환하여 멀리 전송하게 됩니다.

     

    4. 커넥터, 케이블

    통신의 이동 경로를 말한다. RS232 통신에 사용되는 DB-9 커넥터나 UTP 케이블 같은 차폐선 같은 것들이 해당됩니다.

    반응형