PS/2
From ArmadeusWiki
Contents
Instructions to connect a PS/2 keyboard to your Armadeus board
Introduction
Your Armadeus board allows you to connect it a PC keyboard, by using the power of the Spartan3 FPGA (if present on your board).
Hardware connection
Connect the PS/2 DATA line to the FPGA pin P137 (IO_L27N_0) and the CLOCK one to the FPGA pin P140 (IO_L01P_0).
If your keyboard supports 3,3v power supply you don't need to use the resistor divider brige ! Just use 3,3v from the Devlight and connect the PS/2 connector pins directly to the FPGA.
Firmware installation
Firmware for PS/2 is avaiblable in your SVN repository: firmware/PS2/PS2_top.bit.
Copy it to your TFTP directory and follow the procedure here: Firmware installation
Memory Map
The core uses the following register map:
Address | Name | Description |
0x12000000 | Status register | The following bits are used: 0x2 => empty, 0x8=>full, the other bits can be ignored (not used or for debug purposes) |
0x12000002 | Data read register | The keyboard scancodes can be read from this register. After each access, the next byte from the fifo appears here |
0x12000004 | Test register | (has nothing to do with the PS2 interface, just for fun) The lower 8 bit behave like a normal RAM |
0x12000006 | Test register | (has nothing to do with the PS2 interface, just for fun) The lower 8 bit behave like a normal RAM |
0x12000008 | Test register | (has nothing to do with the PS2 interface, just for fun) The value is always 0x1234, write is ignored |
Driver
BUGS
Status register starts with value 0x000A -> Fifo Full + Fifo Empty normal ??