Возможно уже проскакивало, но напишу... Для подключения USB-клавиатуры не нужно городить никаких дополнительных контроллеров - достаточно подтянуть сигналы D- и D+ к +5В через 10к и клавиатура переходит в режим работы PS/2. По некоторым источникам Clock берется с D-, а Data с D+, у меня заработало, почему-то, с точностью до наоборот. Есть еще нюанс - клавиатура в таком режиме при старте может постоянно слать код 0хАА и ждать в ответ 0х55, пока не получит - передавать коды клавиш не будет.