COM (하드웨어 인터페이스)
1. 개요
COM 포트는 최초의 IBM PC에서 시작된 하드웨어 인터페이스로, RS-232 직렬 통신을 위한 포트를 의미한다. IBM은 COM1부터 COM4까지 4개의 포트를 정의했으며, MS-DOS를 사용하는 PC 호환 기종에서 사용되었다. 1980년대와 1990년대에는 PC에 COM 포트가 일반적으로 탑재되었으나, 2007년 이후 대부분의 컴퓨터에서 사라졌다. COM 포트는 I/O 포트와 인터럽트 요청을 통해 16550 UART와 같은 집적 회로와 인터페이스하며, COM1은 I/O 포트 0x3F8, IRQ 4를 사용하고 COM2는 I/O 포트 0x2F8, IRQ 3을 사용한다. COM 포트가 없는 경우 USB-to-UART 직렬 어댑터 케이블을 통해 대체할 수 있다.
| 유형 | 직렬 포트 |
|---|---|
| 소개 시기 | 1982년 |
| 장치 | 모뎀 마우스 프린터 기타 장치 |
| 데이터 전송 방식 | 직렬 통신 |
| 전기적 신호 표준 | RS-232 |
| 다른 이름 | 직렬 포트 RS-232 포트 |
| 도입 시기 | 1982년 |
|---|---|
| 사용 | IBM PC 호환 컴퓨터에서 모뎀, 마우스, 구형 프린터 및 기타 직렬 장치를 연결하는 데 사용됨. |
| 물리적 인터페이스 | 초기 IBM PC: 25핀 D-sub 커넥터 이후: 9핀 D-sub 커넥터 |
| 신호 | 송신 데이터 (TD 또는 TxD) 수신 데이터 (RD 또는 RxD) 요청 전송 (RTS) 전송 가능 (CTS) 데이터 단말 준비 (DTR) 데이터 세트 준비 (DSR) 캐리어 감지 (DCD) 링 표시기 (RI) 접지 (GND) |
| 전압 레벨 | RS-232 표준에 따름 |
| 속도 | 초기: 110 bps에서 9600 bps 이후: 115200 bps까지 지원 |
| IRQ | COM1: IRQ 4 COM2: IRQ 3 |
| I/O 포트 주소 | COM1: 0x3F8-0x3FF COM2: 0x2F8-0x2FF |
| 통신 방식 | 비동기식 직렬 통신 |
|---|---|
| 데이터 형식 | 시작 비트 데이터 비트 (5, 6, 7 또는 8) 패리티 비트 (짝수, 홀수, 없음) 정지 비트 (1 또는 2) |
| 흐름 제어 | 하드웨어 흐름 제어 (RTS/CTS) 소프트웨어 흐름 제어 (XON/XOFF) |
| 플러그 앤 플레이 | 플러그 앤 플레이 직렬 포트는 자원 충돌을 줄이는 데 도움이 됨. |
| 과거 | 모뎀 연결 마우스 연결 프린터 연결 직렬 통신이 필요한 장치 연결 |
|---|---|
| 현재 | 임베디드 시스템 산업 제어 시스템 과학 장비 일부 구형 장비 |
-
컴퓨터 버스 -
NMEA 0183
NMEA 0183은 선박용 GPS, 자동식별장치(AIS) 등 항해 장비에서 데이터를 송수신하는 데 사용되는 ASCII 기반의 직렬 통신 프로토콜로, RS-422 전기 표준을 사용하며, 문장 형태의 데이터를 통해 정보를 전달하고, 물리 계층, 데이터 링크 계층, 애플리케이션 계층의 3가지 레이어로 구성되어 다양한 소프트웨어에서 지원된다. -
컴퓨터 버스 -
인피니밴드
인피니밴드는 고성능 컴퓨팅 환경에서 서버, 스토리지, 네트워크 장치 간 고속 데이터 전송을 위한 직렬 통신 기술로, 슈퍼컴퓨터나 데이터 센터에서 주로 사용되지만 이더넷 기반 기술과의 경쟁 및 새로운 컴퓨팅 환경에 대한 적응이라는 과제를 안고 있다.
2. 역사
COM 포트의 이름은 최초의 IBM PC에서 시작되었다. IBM은 4개의 명확하게 정의된 통신 RS-232 포트를 "COM" 포트라고 명명했으며, COM1부터 COM4까지를 사용했다. BASICA와 PC DOS에서는 이러한 포트를 "COM1:"에서 "COM4:"로 열 수 있으며, MS-DOS를 사용하는 모든 PC 호환 기종에서도 동일한 표기를 사용했다. 1980년대와 1990년대의 대부분의 PC 호환 컴퓨터에는 한두 개의 COM 포트가 있었다.
2007년까지, 대부분의 컴퓨터는 하나 또는 아예 물리적인 COM 포트가 없는 상태로 출하되었다. 일부는 여전히 마더보드에 COM 핀 헤더를 포함하고 있다.
RS-232 COM 포트가 대부분의 소비자용 컴퓨터에서 제거된 후, 그 대안으로 외부 USB-to-UART 직렬 어댑터 케이블이 사용되었다. 이러한 칩의 주요 공급업체는 FTDI이다.
3. I/O 주소
PC 호환 컴퓨터의 COM 포트들은 보통 다음과 같이 정의된다.
| 포트 | I/O 포트 | IRQ |
|---|---|---|
| COM1 | 0x3F8-0x3FF | 4 |
| COM2 | 0x2F8-0x2FF | 3 |
| COM3 | 0x3E8-0x3EF | 4 |
| COM4 | 0x2E8-0x2EF | 3 |
COM 포트는 16550 UART와 같은 IC를 통해 인터페이스된다. 이 IC는 전송 또는 수신할 데이터, 전송 속도, 인터럽트 구성 등에 대한 정보와 구성 데이터를 담는 7개의 내부 8비트 레지스터를 가지고 있다. COM1의 경우, 이 레지스터는 0x3F8에서 0x3FF까지의 I/O 주소에 쓰거나 읽음으로써 접근할 수 있다.
예를 들어, CPU가 COM1으로 정보를 전송하려는 경우, I/O 포트 0x3F8에 쓰는데, 이 I/O 포트가 전송될 정보를 담고 있는 UART IC 레지스터에 "연결"되어 있기 때문이다.
4. 구현
--
--
--
--