Intel Cyclone не сохраняет конфигурацию после перезагрузки -9


Этот факт вводит в ступор начинающего разработчика, имевшего ранее дело с микроконтроллерами. С другой стороны такое поведение является нормальным, так как ПЛИС — набор гибко конфигурируемых логических ячеек и в простом случае на борту нет памяти где бы эту конфигурацию можно было хранить. Решением является запись конфигурации во внешнюю память и автоматическая загрузка её при подаче питания. Процесс описан в официальном документе AN 370. Также предлагаю посмотреть мой вариант иллюстрации этого процесса.

Имеется совет по развитию отладочная плата на базе EP4CE6E22C8N. При первом включении грузится красивый проект.

image

И мы видим его вновь и вновь после перезагрузки, несмотря на то, что заливали написанную свою конфигурацию. Для того, чтобы при подаче питания грузилась написанная нами конфигурация, нужно проделать пару действий в Quartus:

  1. Убедиться, что в поле Configuration scheme выбрано Active Serial. (Assigments -> Device -> Device and pin options -> Configuration)

    image
  2. Скомпилировать проект
  3. Сгенерировать jiс файл: File -> Convert Programming Files -> Output programming file type -> .jiс

    В том же окне выбрать тип флеш. Смотрим на схему платы, видим что у нас M25C16. Именно такой вариант Quartus не предлагает, но подойдёт вариант EPCS16.

    В том же окне ниже Input files to convert -> Flash Loader -> Add device -> Cyclone IV E -> EP4CE6
    SOF Data -> указать файл, полученный на этапе компиляции (тот, который мы хотим видеть при загрузке)

    image

    Жмём Generate.
  4. Зальём полученный jiс файл

    image

Теперь после перезагрузки мы увидим созданную нами конфигурацию, которая будет автоматически настраивать ПЛИС при подаче питания.




К сожалению, не доступен сервер mySQL