본문 바로가기

[하드웨어 뜯어보기] 인터페이스/통합편 #40 - 입출력장치의 통신 구조

📑 목차

    세상과 소통하는 감각기관

    키보드·마우스·모니터·스토리지·네트워크와 대화하는 컴퓨터의 복잡한 신경 프로토콜

    핵심요약
    입출력장치는 컴퓨터가 현실과 연결되는 감각기관이다.
    USB·HDMI·SATA·Ethernet 등 인터페이스는 각각 규격과 통신 프로토콜이 다르다.
    모든 I/O는 버스 → 드라이버 → OS → CPU 계층을 통해 동작한다.
    DMA와 인터럽트는 I/O 장치가 효율적으로 데이터를 전달하게 만든다.
    I/O 성능은 시스템 체감 속도에 지대한 영향을 미친다.

     

    입출력장치의 통신 구조
    입출력장치의 통신 구조


    1. I/O 장치란 무엇인가?

    핵심 문장: 입출력(I/O)은 컴퓨터가 세상과 만나는 관문이다.

     

    컴퓨터는 스스로 정보를 만들어낼 수 없습니다. 외부에서 데이터를 받아들이거나(입력), 외부로 결과를 전달해야(출력) 비로소 유의미한 작업을 수행할 수 있습니다.

     

    따라서 아래와 같은 입축력 장치(I/O Device)가 필요합니다.

    • 키보드
    • 마우스
    • 모니터
    • 스피커
    • 프린터
    • USB 장치
    • 카메라
    • 네트워크
    • 저장장치(SSD/HDD)

    입출력 장치는 CPU·메모리처럼 내부 부품이 아니라 외부와 상호작용하는 ‘감각기관이자 발화기관’입니다.


    2. I/O 장치는 어떻게 CPU와 대화할까? - 입력/출력의 전체 흐름

    입출력 장치의 데이터 흐름은 다음과 같습니다.

    1. 장치 → I/O 컨트롤러
    2. 컨트롤러 → 버스(USB/PCIe/SATA 등)
    3. 버스 → 칩셋(PCH)
    4. 칩셋 → CPU
    5. OS 드라이버 → 사용자 프로그램

    출력도 반대 방향으로 흐르며 이 모든 단계가 기계적으로 정밀한 프로토콜로 연결되어 있습니다.


    3. USB - 범용 입출력의 왕

    3-1. USB 구조

    USB는 가장 범용적인 I/O 인터페이스입니다.

    • 장치 연결 계층(Device)
    • 전송 방식(제어/인터럽트/벌크/아이소크로너스)
    • 속도 규격
      • USB 2.0: 480 Mbps
      • USB 3.2 Gen2x2: 20 Gbps
      • USB4/TB4: 40 Gbps

    USB 장치는 모두 호스트-장치 구조(Host–Device)로 동작하므로 PC가 항상 ‘호스트’입니다.

    3-2. USB 전송 방식

    USB는 작업에 따라 여러 전송 방식을 사용합니다.

    • Control Transfer: 장치 초기 설정
    • Interrupt Transfer: 키보드/마우스처럼 빠른 반응 필요
    • Bulk Transfer: 대용량 파일 전송(USB SSD, 외장하드 등)
    • Isochronous Transfer: 오디오·웹캠 같은 실시간 스트림

    각기 다른 I/O 요구를 충족하는 유연하고 강력한 구조입니다.


    4. HDMI - 화면을 전달하는 영상/음성 인터페이스

    HDMI는 단순 영상 케이블이 아닙니다.

    • TMDS(Transition-Minimized Differential Signaling)
    • EDID를 통한 해상도 협상
    • HDCP 콘텐츠 보호
    • 멀티채널 오디오
    • eARC, VRR, HDR

    HDMI는 GPU가 계산한 화상 정보를 손실 없이 모니터까지 전달하는 고속 신호 규격입니다.


    5. SATA - 스토리지 인터페이스의 전통

    SATA는 SSD/HDD를 연결하는 대표 저장장치 인터페이스였습니다.

    • 최대 600MB/s
    • 고정된 프로토콜
    • AHCI 기반 단일 큐 구조

    오늘날 NVMe에 주도권을 넘겼지만, 저장장치 I/O의 기초 기술을 설명하는 데 매우 중요한 규격입니다.


    6. Ethernet - 네트워크 I/O의 핵심

    LAN 케이블 하나로 이루어지는 통신 속에는 매우 복잡한 프로토콜 계층이 숨어 있습니다.

    • MAC 계층
    • IPv4/IPv6
    • TCP/UDP
    • NIC(네트워크 인터페이스 카드)
    • DMA 기반 패킷 전송
    • MSI-X 기반 인터럽트 처리

    Ethernet은 컴퓨터가 인터넷이라는 ‘세계와 연결’되는 감각기관입니다.


    7. I/O 장치의 핵심 기술 - 드라이버, 인터럽트, DMA

    I/O는 단순히 “데이터를 옮기는 과정”이 아닙니다. 아래 기술이 없으면 동작조차 불가능합니다.

    7-1. 드라이버(Driver)

    드라이버는 장치와 운영체제 사이의 통역관입니다.

     

    역할:

    • 장치 초기화
    • 데이터 포맷 변환
    • 버퍼 관리
    • 인터럽트 처리 연결
    • 사용자 공간과 커널 공간의 중계

    장치의 성능은 드라이버 품질에 크게 좌우됩니다.

    7-2. 인터럽트(Interrupt)

    장치 → CPU 방향의 신호 알림 시스템입니다.

    • “새 데이터 도착!”
    • “키보드 눌림 감지!”
    • “네트워크 패킷 준비됨!”

    현대 장치는 MSI/MSI-X 기반 인터럽트를 사용하여 멀티코어 CPU 성능을 극대화합니다.

    7-3. DMA (Direct Memory Access)

    DMA는 장치가 CPU를 거치지 않고 메모리를 직접 읽고 쓸 수 있게 하는 기술입니다.

     

    특징:

    • CPU 부하 감소
    • 고속 I/O 처리 가능
    • 데이터 병렬성 향상

    I/O가 많은 서버에서 DMA는 사실상 필수입니다.


    8. I/O의 병목은 어디에서 생기는가?

    입출력 속도가 느려지는 이유는 단계별로 다릅니다.

    • USB 컨트롤러 대역폭 부족
    • SATA vs NVMe 인터페이스 한계
    • PCIe 레인 부족
    • 드라이버 최적화 문제
    • CPU 인터럽트 오버헤드
    • OS 버퍼링 한계

    I/O는 단순히 “장치 자체의 성능”이 아니라 전체 시스템 아키텍처가 관여하는 성능 문제입니다.


    9. 비유하자며 - “눈·귀·입처럼 외부 세계를 감지하고 표현하는 감각 기관”

    • USB → 손
    • HDMI → 눈
    • 오디오 → 귀
    • 네트워크 → 언어(말하기/듣기)
    • 스토리지 인터페이스 → 기억의 문턱

    컴퓨터는 I/O 장치를 통해 외부 세계와 소통하고, 이 과정이 곧 인간의 감각 체계와 매우 닮아 있습니다.


    10. 기술 발전 - 통합 인터페이스의 시대

    최근 I/O 구조는 통합 형태로 발전하고 있습니다.

    • USB4/TB4 → 데이터·영상·충전 통합
    • PCIe tunneling → 하나의 케이블에 여러 프로토콜
    • NVMe-oF → 네트워크 기반의 고속 스토리지
    • SoC 구조 → 모든 I/O 컨트롤러가 CPU 칩 안으로 통합

    I/O는 점점 더 “단일 인터페이스로 통합되는 방향”으로 진화합니다.


    11. 오늘날 활용 - PC부터 서버·모바일·AI까지

    I/O는 단순한 주변장치 관리가 아니라 아래를 가능하게 하는 핵심 인프라 입니다.

    • AI 데이터 ingestion
    • 클라우드 네트워크
    • GPU 서버의 모델 로딩
    • 고속 스토리지 접근
    • USB-C 기반 올인원 작업환경

    12. 요약

    • I/O는 컴퓨터의 감각기관으로 외부 세계와의 통신을 담당
    • USB·HDMI·SATA·Ethernet 등 다양한 인터페이스가 존재
    • 드라이버·인터럽트·DMA가 I/O의 기술적 기반
    • 시스템 전체 구조가 I/O 성능을 결정
    • 미래 I/O는 통합·고속·저지연 방향으로 진화

    13. 다음 편 예고

    다음 글에서는 그래픽의 시대를 넘어, 병렬 연산의 중심이 된 GPU의 내부 세계로 들어갑니다.

     

    다음 글 : [컴퓨터 과학/GPU] - [하드웨어 뜯어보기] GPU #41 - GPU의 기본 구조

     

    [하드웨어 뜯어보기] GPU #41 - GPU의 기본 구조

    병렬의 제왕, 또 다른 두뇌의 등장수천 개의 연산 유닛이 동시에 사고하며, 시각과 연산을 맡는 두 번째 두뇌핵심요약GPU는 “많은 일을 동시에 처리하는” 병렬 두뇌다.SM(Streaming Multiprocessor) 내

    snappytory.com