Design of Implementation of a Compatible Keyboard Controller for Keyboards and Mice

Y.-W. Bai and H.-C. Chen (Taiwan)


Keyboard Controller (KBC), Firmware, Keyboard (KBD),Mouse


By integration of the basic functions of both a standard keyboard controller and the key matrix of a scan code, we provide a compatible design for both keyboards and mice. The key matrix of a scan code consists of 16 output pins by 8 input pins, which can support up to 128 keys. Usually, we can build a matrix table based on the mapping relationship between the column and the row of a ROM/RAM. If we store the mapping relationship in the Table of an RAM chip, then we can re-download the table content at run time by means of the commands of either BIOS or the various applications. Hence, we can gain more flexibility and compatibility by means of firmware setting. We can also use the multiple sets of the matrix table pre-stored in a ROM chip. The multiple sets of the matrix table are selected by the command from BIOS. Although this selection method may require more ROM space, 128KB ROM can support a sufficient number of sets of the matrix table to thus provide a feasible solution for a design which is compatible for a keyboard controller.

Important Links:

Go Back