Цитата(iosifk @ May 24 2015, 17:44)

по первому пункту - делаете неправильно, т.к. из памяти можно читать и по одной шине, а не по 16-ти...
Данные можно читать, но для этого нужно выставлять адрес на считывание этих данных, и, если делать это в state-машине, то нужно под чтение адреса выделять одно состояние.
В процессе работы планируется постоянная передача данных от MCU к ПЛИС, т.е. нужно еще и за синхронизацией доступа к памяти следить, когда можно просто вывести значения регистров на шины и получать в каждый момент нужное значение. Поправьте, если не прав.
Цитата(des00 @ May 24 2015, 17:52)

если учесть, что в вашем чипе
памяти нет, то вы потратите 16*16 = 256 тригеров, только под хранение информации. В любом случае. Меняйте архитектуру решения.
16*16 - это по максимуму, заменить в крайнем случае epm570 на epm2210 - не проблема.
Основной вопрос был по коду - можно ли его оптимизировать или нет?