buy a University Program (UP) board from altera n it can do all... keyboard interface, VGA interface and 7 segments display and many more.... now the UP version is UP3..
the UP3 contain a cyclone (FPGA).. large resources in this cyclone,, check it out at altera.com
you will have to design a module (vhdl/schematic) that will decode the input and decide which key was pressed.and another module that will manage the interface with the LCD.
I have done the manage the lcd display (16 characters)
I'm going to make the keyboard ip but i dont know how to start i remenber that i need to make pullup on every matrix connection. Do you have more informations to do this please?
what you should add here is a pullup resistor at each row.. the bottom port is an output port, and the top one is input... you will "scan" the coloumns by sending 0111 , 1011, 1101, 1110 on the out port and reading the values that you recieve on the input port...for example, if the output is B4:0 B5: 1 B6: 1 B7: 1, (0111)and no key is pressed, the input will read 1111 because of the pull up resistors, but if for instance SW9 was pressed and the output was 0111 then the input port will read B0:1 B1:1 B2: 0 B3:1 (1101) because the third row is connected to the zero from the output port and no longer pulled up... so your decoder should understand that 0111 on output and 1101 on input means that SW9 was pressed..