PCI Express 아키텍처와 레인 기반 확장 인터페이스
PCI Express의 직렬 전송, 레인 구성, 프로토콜 계층과 세대별 대역폭을 정리하고 GPU·NVMe·CXL 연결 시 고려할 점을 다룬다.
2026-08-14 · 최초 발행 2026-01-06
장치마다 독립 경로를 제공하는 직렬 확장 버스
PCI Express(PCIe)는 메인보드와 고성능 확장 카드를 잇는 고속 직렬 버스 표준이다. 공유 버스였던 병렬 PCI와 달리 장치를 포인트 투 포인트 방식으로 연결하므로, 각 장치는 독립적인 대역폭을 확보한다.
링크는 직렬 전송을 기반으로 하며 x1, x4, x8, x16처럼 레인 수를 조합한다. 송신과 수신은 동시에 이뤄지고, 핫플러그를 통해 장치를 동적으로 추가하거나 제거할 수 있다. 세대가 올라갈수록 속도는 배증됐고, PCIe 7.0은 레인당 128 GT/s에 도달한다.
세대와 레인 수를 함께 봐야 실제 연결 가능한 대역폭을 판단할 수 있다.
| 세대 | x1 레인 | x4 레인 | x8 레인 | x16 레인 |
|---|---|---|---|---|
| PCIe 3.0 | 985 MB/s | 3.94 GB/s | 7.88 GB/s | 15.75 GB/s |
| PCIe 4.0 | 1.97 GB/s | 7.88 GB/s | 15.75 GB/s | 31.5 GB/s |
| PCIe 5.0 | 3.94 GB/s | 15.75 GB/s | 31.5 GB/s | 63 GB/s |
| PCIe 6.0 | 7.5 GB/s | 30 GB/s | 60 GB/s | 121 GB/s |
요청을 전달하고 오류를 복구하는 프로토콜 계층
PCIe는 트랜잭션 계층, 데이터 링크 계층, 물리 계층으로 나뉜다. 상위 계층의 요청을 패킷으로 만들고, 링크에서 전달을 보장한 뒤, 물리 신호로 전송하는 구조다.
트랜잭션 계층은 TLP(Transaction Layer Packet)를 사용해 메모리, I/O, 설정 요청을 처리한다. 메모리 맵 I/O의 주소를 다루고, 태그로 동시 트랜잭션을 추적한다. 읽기 요청에는 완료 메커니즘으로 응답하며, 인터럽트와 전력 관리 신호도 메시지로 전달한다.
데이터 링크 계층은 LCRC로 오류를 검출하고 Ack/Nak으로 수신을 확인한다. 오류가 생기면 패킷을 자동 재전송하며, 시퀀스 번호로 순서를 보장한다. 흐름 제어는 크레딧 기반으로 수행한다.
물리 계층은 논리 서브블록과 전기 서브블록으로 구성된다. 논리 측은 인코딩을 처리하고, 전기 측은 차동 신호와 임피던스 매칭을 맡는다.
- 8b/10b (PCIe 1.0~2.0): 20% 오버헤드, DC 밸런스
- 128b/130b (PCIe 3.0+): 1.5% 오버헤드, 효율 향상
- PAM4 (PCIe 6.0+): 4-level 신호, 대역폭 배증
- FEC (PCIe 6.0+): Forward Error Correction
- 스크램블링: EMI 감소
레인 협상과 전력 상태
레인은 x1부터 x16까지 구성할 수 있으며, 링크는 레인 폭 협상을 통해 동적 스케일링을 수행한다. 장치가 필요로 하는 성능과 시스템이 제공하는 연결 폭이 맞물리는 지점이다.
전력 관리에서는 L0가 정상 동작 상태다. L0s는 us 단위의 빠른 복귀 저전력 상태이고, L1은 10us 단위의 중간 저전력 상태다. L2는 더 깊은 저전력 상태이며, ASPM(Active State Power Management)이 이 상태 전환을 다룬다.
공유 PCI와 갈라선 설계
PCI는 병렬 방식의 공유 버스였지만, PCIe는 직렬 포인트 투 포인트 연결을 채택했다. 이 차이로 장치 간 대역폭 경합을 줄이고 레인 추가에 따라 확장할 수 있게 됐다.
| 특성 | PCI | PCIe 1.0 | PCIe 4.0 |
|---|---|---|---|
| 방식 | 병렬 | 직렬 | 직렬 |
| 토폴로지 | 공유 버스 | 포인트 투 포인트 | 포인트 투 포인트 |
| 최대 대역폭 | 133 MB/s | 250 MB/s (x1) | 2 GB/s (x1) |
| 클럭 | 33/66 MHz | 2.5 GHz | 16 GHz |
| 확장성 | 낮음 | 높음 | 매우 높음 |
| 레이턴시 | 높음 | 낮음 | 매우 낮음 |
PCIe는 레인을 추가해 대역폭을 늘릴 수 있고, 장치별로 독립 대역폭을 제공한다. 이전 세대 카드를 사용할 수 있는 하위 호환성도 갖췄으며, x1~x16 범위에서 구성을 조정할 수 있다.
AGP가 그래픽 카드만을 위한 전용 버스였다면 PCIe는 범용 인터페이스다. PCIe x16은 AGP 8x를 넘는 대역폭을 제공하고, 양방향 동시 송수신과 세대별 발전을 지원한다.
GPU부터 네트워크 카드까지 이어지는 연결
그래픽 카드는 주로 x16 슬롯에 연결된다. SLI/CrossFire로 다중 GPU를 구성할 수 있고, PCIe 4.0/5.0은 최신 GPU의 대역폭 요구를 충족한다. 리사이저블 BAR는 전체 VRAM 접근을, GPU Direct는 CPU를 우회한 직접 전송을 다룬다.
고속 스토리지에서는 NVMe SSD, Optane, U.2/M.2가 PCIe를 사용한다. NVMe SSD는 x4 레인을 사용하며, Optane은 초저지연, U.2/M.2는 폼팩터 측면에서 구분된다.
네트워크 어댑터도 PCIe 확장 카드로 연결된다.
- 10/25/40/100 GbE: 고속 이더넷 카드
- InfiniBand: HPC 네트워크
- RDMA: 원격 직접 메모리 접근
- SmartNIC: 오프로드 처리
- 파이버 채널: SAN 연결
RAID 컨트롤러, 비디오·오디오 입력용 캡처 카드, AI/ML 추론과 암호화를 위한 가속기, FPGA, 고급 오디오 처리를 위한 사운드 카드도 PCIe 확장 카드로 사용된다.
PCIe 5.0 이후의 인터커넥트 변화
PCIe 5.0은 레인당 32 GT/s를 제공하고 128b/130b 인코딩을 사용한다. 개선된 신호 처리로 낮은 레이턴시를 목표로 하며, 강화된 이퀄라이제이션으로 신호 무결성을 다룬다. 표준화 시점은 2019년이고 상용화가 진행 중이다.
PCIe 6.0은 PAM4 변조, FEC, FLIT 모드를 주요 기술로 사용한다. PAM4는 4-level 신호를 사용하고, FEC는 오류 정정을 담당한다. FLIT 모드는 256-byte 단위를 사용한다. PCIe 7.0은 PCIe 6.0을 개선하며 128 GT/s를 제시한다.
CXL(Compute Express Link)은 PCIe 5.0/6.0 물리층을 기반으로 한다. CPU와 장치 사이의 캐시 일관성과 메모리 공유를 다루고, 확장 메모리 장치의 메모리 풀링 및 AI/ML 가속기 연결에 쓰인다. 데이터센터의 차세대 서버 아키텍처와도 연결된다.
보드 설계에서 확인할 PCIe 경로
슬롯의 물리적 크기와 실제 전기적 레인 수는 다를 수 있다. 일부 슬롯은 레인을 공유하고, M.2 슬롯도 CPU 또는 칩셋 레인을 사용한다. CPU와 칩셋이 제공할 수 있는 총 레인 수에는 한계가 있으므로 GPU, NVMe, 주변 장치를 함께 배치할 때 확인이 필요하다.
성능을 확인할 때는 GPU-Z, hwinfo로 실제 레인을 점검할 수 있다. BIOS의 레인 분할 옵션, 라이저 카드 품질, 케이블 길이에 따른 신호 감쇠도 영향을 준다. 고속 장치는 열 관리도 필요하다.
PCIe는 GPU, NVMe SSD, 고속 네트워크처럼 대역폭 집약적인 장치를 연결하는 컴퓨터 시스템의 핵심 인터페이스다. PCIe 6.0의 PAM4 변조와 CXL의 캐시 일관성 프로토콜은 차세대 컴퓨팅 환경의 토대가 되고 있으며, PCIe는 컴퓨터 아키텍처의 핵심 인터페이스로서 지속적으로 발전할 전망이다.