Тест IIC EEPROM

Проект Vivado

Измените конфигурацию оборудования на основе проекта Vivado hello world.

Изменение параметров

Нажмите "Open Block Design". Это откроет файл bd, созданный проектом Hello World:

VeryCapture_20250618112644

На основе проекта hello_world вам нужно только добавить конфигурацию IIC. (EMIO: Используется для расширения функциональности ввода-вывода FPGA, позволяя ей подключаться и обмениваться данными с внешними устройствами. Это позволяет FPGA взаимодействовать с внешними низкоскоростными устройствами ввода-вывода через секцию PS.)

Выберите правильные ограничения выводов в соответствии со схемами основной и базовой плат:

image-20250623115208054

 

image-20250623115840860

 

VeryCapture_20250618113218

Нажмите OK.

Щелкните правой кнопкой мыши на IIC_0 и выберите Make External. Программа автоматически сгенерирует внешние выводы, соответствующие интерфейсу IIC_0 в модуле верхнего уровня:

VeryCapture_20250618113810

Нажмите сочетание клавиш Ctrl+S, чтобы сохранить текущий проект. Затем нажмите кнопку, указанную стрелкой на рисунке ниже, чтобы проверить текущий проект. После завершения проверки появится диалоговое окно, сообщающее об отсутствии ошибок или критических предупреждений. Нажмите "OK", как показано ниже:

VeryCapture_20250618113838

Сгенерируйте файл верхнего уровня: В окне Sources выберите sysetm.bd в разделе Design Sources. Это Block Design, который мы только что завершили. Щелкните правой кнопкой мыши на sysetm.bd и в появившемся меню выберите "Reset Output Products", а затем "Generate Output Products":

VeryCapture_20250618113858

На вкладке "Hierarchy" снова щелкните правой кнопкой мыши на system.bd, а затем выберите "Create HDL Wrapper":

VeryCapture_20250618135331

Запуск синтеза

Нажмите Run Synthesis, затем нажмите OK:

VeryCapture_20250618114617

VeryCapture_20250618114647

После успешного завершения появится диалоговое окно. Выберите второй вариант:

VeryCapture_20250618115003

После открытия интерфейс будет выглядеть так:

VeryCapture_20250618115207

Поскольку мы используем EMIO, нам необходимо добавить ограничения для выводов. Есть два способа сделать это:

image-20250623120350009

 

Запуск реализации

Нажмите Run Implementation, затем нажмите Yes. Подсказка указывает, что когда изменения в файле проекта делают недействительными предыдущие результаты синтеза, инструмент спросит пользователя, следует ли повторно запустить синтез. После завершения синтеза он автоматически перейдет к этапу реализации.

Поскольку мы добавили ограничения, результаты предыдущего шага Run Synthesis изменились. Появится всплывающее окно:

VeryCapture_20250618120042

Нажмите, чтобы сохранить файл ограничений:

VeryCapture_20250618120117

Нажмите OK:

VeryCapture_20250618120727

Выбор среднего варианта приведет к прямому переходу к следующему шагу: генерации файла bitstream:

VeryCapture_20250618120938

Генерация Bitstream

После успешной генерации файла bitstream нажмите Cancel:

VeryCapture_20250618121208

Генерация нового файла .xsa

Нажмите File->Export->Export Hardware:

VeryCapture_20250618121240

Выберите второй вариант, Include bitstream:

VeryCapture_20250618121259

Открытие Vitis и обновление файла .xsa

Щелкните правой кнопкой мыши по созданному проекту платформы и выберите Update Hardware Specification. Укажите путь к файлу .xsa. Появится следующее диалоговое окно. Нажмите OK, что означает успешное обновление. Рекомендуется после обновления снова щелкнуть правой кнопкой мыши по проекту платформы и выполнить его сборку (Build).

VeryCapture_20250618121412

VeryCapture_20250618121446

VeryCapture_20250618121501

Создание нового проекта приложения на проекте платформы

Чтобы создать новый проект приложения на существующем платформенном проекте, обратитесь к инструкции по созданию проекта Hello World. Единственное отличие — выберите шаблон "Empty Application (C)". Код необходимо писать вручную, так как программное обеспечение не предоставляет шаблон для этого проекта.

VeryCapture_20250618121953

После создания щёлкните правой кнопкой мыши на Src → New → File:

VeryCapture_20250618122207

VeryCapture_20250618145806

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

image-20250808142335994

image-20250808142508287

Компиляция и отладка

После успешной компиляции проекта подключите JTAG платы разработки к компьютеру с помощью кабеля USB Type-C. Используйте другой кабель USB Type-C для подключения PS UART платы к компьютеру. Откройте на компьютере инструмент для последовательной отладки, например MobaXterm, и установите соединение с PS UART платы разработки.

image-20250623121938035

Войдите в режим отладки в Vitis: в меню Debug As выберите первый вариант. Запустите на полной скорости, чтобы просматривать информацию отладки через последовательный порт.

image-20250813184538599

Результаты отладки приведены ниже:

image-20250813183951738