NKRO vs 6KRO 설명: 키보드 고스팅 & 롤오버 가이드
격렬한 퍼슨 슈터를 플레이하면서 대각선으로 돌진하고(W + D + Shift), 스페이스바가 점프를 트리거하지 못한 적이 있나요? 그 짜증나는 하드웨어 제한은 키보드 고스팅 또는 키 잠김으로 알려져 있습니다.
이 기술 가이드에서 우리는 키보드 스위치 매트릭스의 전기 아키텍처, 레거시 사무용 키보드가 멀티키 게이밍 콤보에서 왜 잠기는지, 최신 기계식 키보드가 진정한 <strong class="text-neutral-900 dark:text-white">N-키 롤오버(NKRO)</strong>를 어떻게 달성하는지, 그리고 스위치 디바운스 알고리즘이 전체 입력 지연에 어떤 영향을 미치는지 분석합니다.
1. 전기 그리드: 키보드가 키를 스캔하는 방법
표준 풀사이즈 키보드에는 104개의 개별 키가 있습니다. 각 스위치가 키보드 마이크로컨트롤러까지 자체 전용 배선 트레이스를 필요로 한다면, PCB에는 100개 이상의 핀이 필요하여 제조 비용과 복잡성이 급격히 증가합니다.
이 문제를 해결하기 위해, 키보드는 행과 열(일반적으로 16~18열과 6~8행)로 구성된 전기 매트릭스에 스위치를 조직합니다:
- 마이크로컨트롤러가 열 1, 열 2, 열 3 등으로 빠르게 전기를 스트로브합니다.
- 동시에 각 행 라인의 입력 전압을 읽습니다.
- 키가 눌리면 특정 행과 열 사이의 전기 접점이 닫혀 키의 매트릭스 좌표를 정확히 지정합니다.
2. 고스팅 및 잠김: 저가 키보드가 키를 차단하는 이유
다이오드가 없는 기본 키보드 회로에서, 그리드에서 직사각형을 이루는 세 키가 동시에 눌리면 문제가 발생합니다:
Row 1: [Key A: PRESSED] ———— [Key B: PRESSED]
| |
Row 2: [Key C: PRESSED] ———— [Key D: OPEN/UNPRESSED]
전기적 전류가 닫힌 기계식 스위치를 통해 역류할 수 있으므로, 행 1에서 키 A를 통해 흐르는 전류는 키 C 아래로, 키 D의 열로 흐르고, 마이크로컨트롤러를 속여서 키 D도 눌려 있다고 믿게 만듭니다! 이 잘못된 등록은 고스트 키라고 불립니다.
무작위 의도치 않은 문자가 화면에 스팸되는 것을 방지하기 위해, 저가 멤브레인 키보드는 <strong class="text-neutral-900 dark:text-white">마스킹/잠김</strong>을 사용합니다: 컨트롤러가 애매한 상태를 감지하면, 의도적으로 세 번째 키프레스를 무시하고 침묵시킵니다.
3. NKRO vs. 6KRO: 다이오드의 구원
게이밍 기계식 키보드가 고스팅을 완전히 제거하는 방법은 무엇일까요?
고성능 키보드는 인쇄 회로 기판의 모든 개별 스위치 교차점에 스위칭 다이오드(예: 1N4148 다이오드)를 설치합니다. 다이오드는 전기적 일방향 체크 밸브 역할을 합니다: 전류는 한 방향으로만 흐를 수 있어 역류가 불가능합니다.
6KRO (6키 롤오버)
표준 USB 휴먼 인터페이스 디바이스(HID) 사양 패킷은 리포트당 6개의 알파넘érica 키코드와 4개의 수정자키(Ctrl, Shift, Alt, GUI)를 허용합니다. 대부분의 게이밍에는 충분하지만, 리듬 게임(osu!, StepMania)이나 분할 키보드 멀티플레이어에는 제한될 수 있습니다.
NKRO (풀 N-키 롤오버)
최신 게이밍 키보드는 커스텀 USB 리포트 디스크립터 또는 여러 가상 HID 엔드포인트를 사용하여 모든 키를 동시에 보고합니다. 손바닥으로 50개의 키를 한꺼번에 물리적으로 눌러도 모든 키가 정확히 등록됩니다.
4. 스위치 디바운스, 광선 및 마그네틱 홀 효과
전체 키보드 지연은 세 가지 순차 파이프라인 단계로 구성됩니다:
- 기계적 이동 시간: 손가락이 키를 작동 지점까지 누르는 데 걸리는 물리적 시간(일반적으로 1.2mm~2.0mm).
- 디바운스 알고리즘 시간: 전통적인 기계식 스위치(Cherry MX, Gateron, Kailh)는 금속 리프가 충돌할 때 물리적으로 바운스합니다. 키보드 컨트롤러는 바운스 노이즈가 안정될 때까지 2ms~8ms를 기다린 후 키를 디스패치합니다.
- USB 스캔 및 폴링 시간: 매트릭스 스캔 주기 주파수(1,000Hz = 1.0ms).
홀 효과 혁명: 최신 마그네틱 스위치(Wooting, Razer Analog, SteelSeries OmniPoint)는 물리적 금속 접점 대신 홀 효과 센서를 사용하여 영구 자석 근접을 감지합니다. 물리적 금속 리프가 없으므로 디바운스 지연이 제로로 줄어들고, 상향 움직임 시 즉시 리셋됩니다(래피드 트리거).
5. 브라우저 DOM 이벤트로 키보드 테스트하기
키보드가 고스팅에 시달리거나 6KRO로 제한되어 있는지 어떻게 테스트할 수 있을까요?
우리의 키보드 테스터는 키보드의 키 매트릭스를 실시간으로 시각화합니다. 해석된 문자 대신 물리적 스캔 식별자(e.code)를 사용하여 브라우저 keydown 및 keyup 이벤트를 수신하여, 10개 이상의 키를 동시에 눌러 보드가 진정한 NKRO를 제공하는지 확인할 수 있습니다.
❓자주 묻는 질문
키보드 고스팅이란 무엇인가요?▼
키보드 고스팅은 여러 키를 동시에 누를 때 키보드가 하나 이상의 키 입력을 등록하지 못하는 현상입니다. 이는 키보드 매트릭스 회로 설계로 인해 발생합니다 — 여러 키가 행과 열 라인을 공유하면 컨트롤러가 어떤 물리적 키가 신호를 발생시켰는지 구별할 수 없습니다.
NKRO와 6KRO의 차이점은 무엇인가요?▼
6KRO(6-Key Rollover)는 키보드가 최대 6개의 동시 키 입력(수정자키 제외)을 등록할 수 있음을 의미합니다. NKRO(N-Key Rollover)는 키보드의 모든 키를 동시에 눌러도 모두 독립적으로 등록됨을 의미합니다. NKRO 키보드는 고스팅을 방지하기 위해 각 키 스위치에 다이오드를 사용합니다.
기계식 키보드가 멤브레인 키보드보다 입력 지연이 적나요?▼
기계식 키보드는 일반적으로 작동 이동 거리가 짧고 스위치 반응이 빨라 지연이 더 낮습니다. 그러나 키보드 지연의 주된 원인은 디바운스 시간(2–8ms)과 USB 폴링 간격(1000Hz에서 1ms)입니다. Hall Effect 마그네틱 스위치는 디바운스 지연을 완전히 제거하여, 현재 사용 가능한 것 중 가장 빠릅니다.
스위치 디바운스란 무엇이며 왜 중요한가요?▼
기계식 키 스위치를 누르면 금속 접점이 안정적으로 접촉하기 전에 몇 밀리초 동안 물리적으로 바운스합니다. 키보드 펌웨어는 디바운스 알고리즘(일반적으로 2–8ms 지연)을 사용하여 이러한 바운스를 무시하고 물리적 누름당 하나의 키 입력만 등록합니다. 디바운스가 없으면 한 번의 누름이 여러 번의 키 입력으로 등록될 수 있습니다.
키보드에 고스팅이나 롤오버 문제가 있는지 어떻게 테스트하나요?▼
spacebarclickeronline.com/keyboard-tester에서 무료 키보드 테스터를 사용하여 키보드 고스팅과 롤오버를 테스트할 수 있습니다. 이 도구는 물리적 스캔 코드(e.code)와 함께 브라우저 keydown 및 keyup 이벤트를 사용하여 동시 키 입력을 감지합니다. 10개 이상의 키를 한꺼번에 눌러 키보드가 진정한 NKRO를 제공하는지 확인하세요.
참고 자료 및 추가 읽을거리
이 가이드에서 설명하는 회로 수준 및 펌웨어 동작은 다음 기술 참고 자료와 사양에 기반합니다:
- 키보드 매트릭스가 키를 스캔하는 방식과 고스팅 및 재밍이 발생하는 이유 — Dribin, D. Keyboard Matrix Help. dribin.org →
- USB HID 부트 키보드 리포트: 6키 롤오버(6KRO)의 기원 — USB Implementers Forum. Device Class Definition for Human Interface Devices (HID), Version 1.11 — boot keyboard report descriptor (Appendix B). USB-IF (PDF) →
- 6KRO, NKRO 및 안티고스팅 용어 — Wikipedia. Key rollover. Wikipedia →
- 접점 바운스와 컨트롤러가 디바운스 지연을 추가하는 이유 — Ganssle, J. A Guide to Debouncing. ganssle.com →
참고: 롤오버 한계, 디바운스 윈도우, 액추에이션 지점은 키보드 모델, 스위치 종류, 펌웨어에 따라 다릅니다. 여기에 인용된 밀리초 범위는 대표값이며 특정 보드를 측정한 것이 아닙니다. 키보드 테스터로 직접 키보드의 롤오버와 스위치 채터를 확인해 보세요.
키보드 롤오버 및 스위치 채터 테스트
키 매트릭스 롤오버를 테스트하고, 고스팅을 감지하고, 동시 키 입력을 계산하고, 스위치 디바운스 상태를 확인합니다.