А вообще сделать управление для ak4490 на ПЛИС не так сложно.
Логика работы как раз понятна.
Реализация в железе вызывает ряд вопросов, просто по отсутствию достаточных знаний.
Я тут недавно, после двух десятков лет перерыва, вспомнил про программирование, и освоил немного программирование на платформе Arduino. До этого по работе только FreeBSD/Linux администрирование.
Так вот по Arduino.
Сначала ATMega, теперь STM32.
Там прекрасно работает функция spi_transfer.
Сейчас в железе работает связка АК4137 + АК4490. STM32 c цветным дисплеем 320*240. Все возможные режимы: переключение sample rate, DSD/PCM - PCM/DSD, источников I2S, 5 режимов ЦФ. Уже даже в корпусе.
Но это контроллер - у него свои достоинства и недостатки. И самое главное, при работе с Arduino есть масса примеров, которые можно "подпилить" под себя.
Для CPLD Altera, да и других подобных ПЛИС этого нет, и даже глянуть особо негде.
Нашел один пример SPI в разработке, но там MASTER/SLAVE, и не завершен...
Даже даташит, IMHO, могли бы написать более понятно.
Напоминает позицию разработчиков платформы ARM. Мы вам дали, а дальше сами разбирайтесь.
Просто, видя изящество работ Дмитрия, хотелось бы попробовать (просто попробовать) получить что-то похожее по управлению.
Я пошел с начала. Регистр/преобразователь параллельного кода в последовательный и далее все нужные тайминги по сигналу Chip Select (Slave select).
Но размер проекта в "железе" уже превысил все допустимые мной объемы для EPM240 (80% на формирование одной SPI команды), хотя на логическом анализаторе все вроде в норме.
Поэтому, естественно предположил, что проект разрабатывался не в виде проекта на простой логике, а использовался язык высокого уровня, который позволил уменьшить размер проекта до приемлемых значений, оставив место под простую логику( переключение источников, генераторов, служебные сигналы).
Но, по словам Дмитрия, размер проекта не сильно отличается, если его создавать как принципиальную схему, или как код на VHDL\AHDL.
Поэтому делаю вывод - я просто делал немного не так, как надо.
Так что есть, к чему стремиться...
Спасибо, Дмитрий, Вы не даете мне расслабиться!