Проект посвящен настройке платы на базе FPGA Artix-7 с микросхемой USB3300 PHY для работы в качестве USB-устройства с собственным питанием. Система использует Vivado и Vitis 2024.1, включая процессор MicroBlaze со 128 КБ памяти BRAM, ядро AXI USB2 Device и Clocking Wizard для генерации частот 50 МГц и 24 МГц.
Основная проблема заключалась в отсутствии физического соединения линии VBUS с PHY USB3300, из-за чего стандартное ядро AXI USB2 Device не распознавало подключение. Для решения задачи автор модифицировал RTL-код ядра, добавив параметр SELF_POWERED, который принудительно устанавливает состояние VBUS в норму, игнорируя отсутствие сигнала от PHY.
Для внедрения параметра потребовалось пробросить его через иерархию ядра с помощью Python-скрипта hdl-param-propagate, а также обновить Tcl-скрипт XGUI и файл component.xml. Это позволило вывести настройку в интерфейс IP Integrator и обеспечить корректное распознавание обновленного ядра средой Vivado.
Реализация включает модуль-обертку для назначения пинов и временные ограничения для 60-мегагерцового сигнала ULPI. Весь процесс сборки, включая синтез и генерацию битстрима, автоматизирован с помощью Tcl-скрипта, который учитывает версии IP-ядер и применяет необходимые параметры конфигурации.






