При разработке устройств часто приходится заниматься созданием интерфейса между FPGA и МК. С физическим интерфейсом обычно проблем нет - ввести параллельную или последовательную шину в FPGA не сложно. Проблемы обычно возникают, когда делается раскладка сигналов по регистрам. Если отдать её на откуп "железячникам", то она может получиться неудобной. Типичная ситуация - когда существует один write-only регистр, в который заведены сигналы, управляющие совсем разными блоками. Это удобно для "железячника", но создает кучу проблем для программиста. Хотелось бы дать "железячникам" какую-нибудь умную книжку, в которой был бы рассмотрен вопрос проектирования интерфейса и приведены рекомендации, как правильно его делать.