Originally Posted by
Manyak
Key Rollover (#KRO & NKRO)
NKRO is when you can press as many keys as you want at the same time, and all of them go through. This is similar to what some 'gaming keyboards' incorrectly market as "anti-ghosting", even though Logitech and Razer only apply it to the WASD cluster. Note that
right now only PS/2 keyboards can exhibit full n-key rollover; though Microsoft and Ducky are just two companies who have already looked at designing NKRO over USB.
#KRO, where # = Any Number, is the key roll over of your board; and stands for the maximum number of keys you can press without experiencing any key blocking.
Many USB mechanical Keyboards are labeled as 6KRO, meaning any 6 keys can be pressed at once without the user experiencing blocking. This is generally enough for most users. Though a limited number of games may have a problem with 6KRO.
USB keyboards with 6KRO also allow for a maximum of 4 modifier keys to be used with those 6 normal keys. These modifiers include CTRL, ALT, Shift, & Super (Windows, Command, or Meta Key.)
Sometimes this also includes the FN key present on select keyboards.
Polling Rates and Response Times
While it is very useful for mice, it's just about meaningless for keyboards. Let's assume for a minute that all switches have the 5ms debouncing time of Cherry MX switches (which is being very generous). Even if you had super human speed and reflexes, every single key would be delayed by at least that much. So really, any polling rate over 200Hz (at best) is absolutely useless, and nothing but market hype. It may even be a bit detrimental, because you'd be wasting CPU time polling the keyboard unneededly. And unlike USB keyboards, PS/2 boards aren't polled at all. They simply send the signal to the PC whenever they are ready to, which causes a hardware interrupt, forcing the CPU to register that keystroke.
PS/2 or USB?
PS/2 wins on three fronts: First, it supports full n-key rollover. Second, PS/2 keyboards aren't polled, but are completely interrupt based. And third, it is impossible for it to be delayed by the USB bus being used by other devices. There are two types of USB transfer modes - the interrupt transfer mode (USB polls keyboard, when key is sensed the USB controller sends the interrupt to the CPU), and the isochronous transfer mode, which reserves a certain amount of bandwidth for the keyboard with a guaranteed latency on the bus. Unfortunately, there are absolutely no keyboards made that use the latter, because special controllers would have to be used, thus making it cost prohibitive.
So if your keyboard supports both PS/2 and USB, and your PC has a PS/2 port, there's no reason not to use it.