Цитата
Требуется написать программу для уже готовой платы с ПЛИС, МК, дисплеем и 40 кнопками на ней. Кнопки завязаны на 5 регистров (по 8 на каждом). Все регистры подключены к ПЛИС. С помощью кода выше хочу мониторить эти регистры на предмет нажатия кнопки.
Не влезет ваша программа в вашу ПЛИС

На VHDL это будет монстр огромных размеров.
Я думаю, что автор схемы расчитывал, что с кнопками и LCD будет работать МК, а ПЛИС будет не более чем расширителем портов для него.
Покажите, что уже написали - вам тут подробно раскажут, почему это работать не будет

PS. Ваш loop не синтезируемый, компиляция не пройдет (даже если исправить SHIFT_LEFT)
PPS. Бросайте VHDL и берите Verilog. Там гораздо меньше писанины и все более прозрачно