Bàn phím N-Key Rollover (NKRO) và độ trễ nhập game

Đăng 2026-04-13 8 phút đọc

Tóm tắt (TL;DR)

Ở chế độ training của Street Fighter 6, khi dùng bàn phím màng tầm 30 USD không có diode để nhập liên tiếp chiêu Shoryuken của Ryu, sẽ xuất hiện những khoảnh khắc “nhập motion DP rõ ràng mà nhân vật vẫn đứng yên”. Hiện tượng controller bỏ sót một tổ hợp hoặc xử lý như phím khác được gọi là ghosting, và khả năng xử lý đồng thời bao nhiêu phím được gọi là rollover. Bàn phím màng giá rẻ điển hình chỉ nhận ổn định 2–3 phím, trong khi hầu hết bàn phím cơ đảm bảo 6KRO theo USB HID Boot Protocol (6 phím + modifier). N-Key Rollover (NKRO) thực sự đòi hỏi report HID đầy đủ riêng hoặc descriptor USB tuỳ biến. Polling rate phổ biến là 125/500/1000/8000 Hz; 1000 Hz gần như là chuẩn cho game, còn chênh lệch cảm nhận trên mức đó tuỳ từng người nên nên kiểm đo. Bài này điểm qua phân biệt 1KRO/6KRO/NKRO, ảnh hưởng polling rate lên độ trễ thực, và cách kiểm “bàn phím của tôi thực tế thế nào” bằng test rollover trên trình duyệt và monitor polling rate.

Bối cảnh và khái niệm

Bên trong bàn phím có các switch nối thành ma trận (matrix) lưới, controller quét hàng và cột rất nhanh để phát hiện switch nào bị nhấn. Cấu trúc này đơn giản nhưng có nhược điểm: tuỳ tổ hợp phím được nhấn đồng thời, các đường tín hiệu giao nhau, khiến controller có thể nhầm tưởng một phím chưa bị nhấn thực sự cũng đang được nhấn — đó là ghosting. Để chặn, phải thêm diode ở mỗi switch cho dòng điện chỉ chảy theo một chiều; bàn phím giá rẻ không diode bị giới hạn khả năng nhập đồng thời theo cấu trúc. Các bàn phím switch Hall effect analog như Wooting 80HE lắp cảm biến từ riêng cho từng phím ngay từ đầu, bỏ qua matrix luôn và tránh vấn đề này. Logitech G915 Pro dùng kiến trúc tương tự với optical switch, còn các bàn phím custom trong cộng đồng QMK thường thêm diode vào PCB DIY — chi phí tăng 5–10 USD nhưng đổi lấy rollover toàn phím.

Đặc tả USB HID có Boot Protocol phải chạy được ngay cả khi boot, dùng report cố định báo cáo tối đa 6 phím thông thường + modifier. Vì vậy BIOS và boot loader hoạt động ổn, nhưng để báo cáo nhiều hơn phải mở rộng cấu trúc report. Nhà sản xuất thường triển khai NKRO theo hai cách. Một là HID Boot Protocol 6KRO + chuyển sang NKRO qua mode switch (switch vật lý hoặc toggle phần mềm); hai là đặt report dựa trên bit-field làm mặc định. Dòng Razer Huntsman và Corsair K70 gần cách đầu, còn Wooting và các bàn phím firmware tuỳ biến (QMK/VIA) nghiêng cách sau.

Polling rate là tần suất host hỏi trạng thái bàn phím. 125 Hz là 8 ms một lần, 1000 Hz là 1 ms. Càng nhanh thì độ trễ lý thuyết càng giảm, nhưng thời gian debounce và chu kỳ quét của switch ảnh hưởng lớn hơn, nên trên 500–1000 Hz rất khó phân biệt bằng cảm nhận.

So sánh và dữ liệu

Tiêu chí1KRO6KRONKRO
Thiết bị phổ biếnBàn phím màng giá rẻ, một số thiết bị nhỏMặc định USB, chế độ HID BootBàn phím cơ trung cao cấp, gaming
Cách kiểmNhấn 2–3 phím đồng thời đã bỏ sótỔn định tới 6 phím, từ phím thứ 7 bỏ sót hoặc vướng modifierTừ 10 phím đồng thời trở lên vẫn báo đủ
Ảnh hưởng gameBỏ sót tổ hợp trong FPS, game đối khángĐủ cho hầu hết điều khiển thông thường nhưng giới hạn với macro tuỳ biến và chồng modifierCó lợi thế cho đối kháng, rhythm, RTS — các thể loại nhiều tổ hợp

Polling rate là trục độc lập với 1KRO/6KRO/NKRO, nhưng khi bàn về độ trễ phải xem cùng. Debounce tiếp điểm switch thường 2–5 ms, lớn hơn 1 ms lý thuyết mà polling 1000 Hz cung cấp. Bàn phím gaming mới hỗ trợ 8000 Hz (Razer Huntsman V3 Pro, Wooting 80HE, v.v.) đồng thời tinh chỉnh debounce và logic quét để thực sự giảm độ trễ, nhưng chênh lệch cảm nhận thuộc vùng của game thủ thi đấu nhạy input. Theo kinh nghiệm tôi, phân biệt 1000 Hz và 8000 Hz bằng bài test mù trong môi trường văn phòng thông thường gần như không thể.

Tình huống thực tế

Tình huống 1 — Đối kháng và rhythm. Các thể loại kết hợp hướng + tấn công + modifier có vấn đề khi tổ hợp phức tạp cần phím thứ 7 dù đã 6KRO. Đặc biệt tổ hợp “low guard + jump cancel + attack” trong đối kháng có Shift/Ctrl tham gia nên bỏ sót cảm nhận rõ. Với Street Fighter 6 hoặc Guilty Gear Strive bằng bàn phím, kiểm tra xem chế độ NKRO có bật bằng test rollover trên trình duyệt là nhanh nhất.

Tình huống 2 — Gõ phím thông thường và văn phòng. Con người dù gõ nhanh cỡ nào cũng hiếm khi có 6 phím nhấn đồng thời. 6KRO mặc định đủ cho chất lượng gõ, và việc đẩy polling rate lên 1000 Hz cũng gần như không đổi cảm giác nhập ký tự. Trong môi trường văn phòng, cảm giác phím, layout, tiếng ồn tạo khác biệt lớn hơn rollover.

Tình huống 3 — Thiết bị streaming và macro. Phím tắt OBS hay thiết bị macro trigger tổ hợp modifier (Ctrl+Alt+F12, v.v.) liên tục nên polling rate và tốc độ đáp macro là trục quan trọng. Nhưng trong trường hợp này, nút thắt thực tế thường ở phía xử lý phím tắt phần mềm, nên nâng riêng polling rate bàn phím cải thiện hạn chế.

Tình huống 4 — Chơi FPS cạnh tranh. Trong CS2 hoặc Valorant, rollover ít quan trọng hơn (hiếm khi bạn nhấn đồng thời quá 4 phím), nhưng polling rate và debounce nhất quán lại quan trọng. Bàn phím có debounce biến thiên (20 ms lúc này, 5 ms lúc khác) tạo cảm giác “phím dính” khó chịu khi nhả để strafe. Các bàn phím Hall effect analog còn cho phép thiết lập rapid trigger — reset actuation ngay khi bạn nhả thay vì chờ toàn bộ switch trở về trên — tạo ưu thế trong counter-strafing. Đây cũng là lý do Wooting 60HE và Keychron Q1 HE được cộng đồng FPS Việt Nam săn lùng từ giữa 2024.

Những hiểu lầm thường gặp

“Mọi bàn phím cơ đều NKRO.” Nhiều bàn phím cơ hỗ trợ NKRO nhưng không phải tất cả. Có cả dạng 6KRO mặc định + toggle NKRO, hoặc dòng giá rẻ chỉ 6KRO. Cần kiểm tra xem firmware/tài liệu có ghi “USB NKRO” hay không. Ngay trong cùng dòng Razer, mỗi model có thể hoạt động khác nhau, nên đọc trực tiếp trang spec của hãng an toàn hơn bao bì.

“Polling rate càng cao càng tốt.” Trong gõ phím, 500 Hz và 1000 Hz gần như không khác, và trong game thi đấu 1000 Hz đã sát chuẩn nên lợi ích giảm dần nhanh phía trên đó. Tăng polling rate mà không thấy khác biệt không phải bất thường — đó là bình thường. 8000 Hz chỉ có ý nghĩa khi hiển thị 240 Hz trở lên, chuột cùng mức, game engine tick rate đủ cao; còn lại chỉ làm tăng interrupt CPU mà không đổi cảm nhận.

“Văn phòng bị mất phím là vì không có NKRO.” Bỏ phím ở văn phòng thường do đường USB hub, driver, switch bẩn hoặc lỗi firmware. Bỏ sót vì giới hạn 6KRO hiếm trong thực tế; nếu triệu chứng lặp lại, thử cắm thẳng, reboot, vệ sinh, cập nhật firmware trước sẽ hiệu quả hơn.

“Bàn phím cơ tự động có độ trễ thấp hơn bàn phím màng.” Không đúng. Độ trễ input phụ thuộc chủ yếu vào polling rate, debounce, và pipeline phần cứng, không phải cơ chế switch. Có những bàn phím màng văn phòng chạy 1000 Hz và các bàn phím cơ “gaming” vẫn dùng 125 Hz mặc định. Tra spec trước khi gán niềm tin; dòng Filco Majestouch dùng membrane rubber dome có độ trễ lý thuyết tương đương nhiều bàn phím cơ trung cấp.

Danh sách kiểm tra

  1. Mở trang test rollover trong trình duyệt. Nhấn lần lượt nhiều phím để xem tất cả hiển thị trên màn hay không.
  2. Tăng từ 1–6 phím lên 7+ phím. Nếu phím thứ 7 không hiện thì 6KRO; 10 phím trở lên vẫn hiện thì NKRO.
  3. Nếu NKRO là dạng toggle, bật chế độ NKRO qua phím tắt firmware/Fn rồi test lại.
  4. Dùng công cụ monitor polling rate để đo chu kỳ polling thực tế. Dù spec ghi 1000 Hz, kết quả có thể thấp hơn tuỳ stack USB host và hub.
  5. Định nghĩa mục tiêu theo thể loại game. FPS, đối kháng, rhythm → cần NKRO; gõ thường → 6KRO đủ.
  6. Nếu vẫn cảm thấy độ trễ lớn, kiểm cả hiển thị, âm thanh, mạng. Thường không phải chỉ input.

Công cụ liên quan

Công cụ chẩn đoán bàn phím của Patrache Studio trực quan hoá các phím đang nhấn đồng thời trong trình duyệt, giúp kiểm trần rollover ngay tại chỗ. Bộ kiểm tra đi kèm tốt với chẩn đoán thiết bị nhập là Kiểm tra điểm chết màn hình: Nguyên lý và chuẩn bảo hành; khi đánh giá toàn bộ ngân sách độ trễ của game, tham khảo thêm phần phân tích phía âm thanh trong Đo độ trễ (latency) micro và loa để cân bằng “mắt + tay + tai” trên toàn chuỗi.

Tài liệu tham khảo