Поднимаем Linux на плате Zynq RK-7020-F V1.1 c помощью Buildroot и U-Boot SPL
FernandesKA 2 часа назад Поднимаем Linux на плате Zynq RK-7020-F V1.1 c помощью Buildroot и U-Boot SPL Средний 23 мин 3K C * FPGA * Linux * Электроника для начинающих Системное программирование * Туториал Из песочницы...
GPT-5.6 31 Temmuz 2026'da yayınlanacak mı?
Значимый прорыв формирует отрасль ИИ: FernandesKA 2 часа назад Поднимаем Linux на плате Zynq RK-7020-F V1. 1 c помощью Buildroot и U-Boot SPL Средний 23 мин 3K C * FPGA * Linux * Электроника для начинающих Системное программирование * Туториал Из песочницы Не так давно у меня на руках появилась плата RK-ZYNQ7020-F REV 1. В данной статье я хочу поделиться своим опытом, связанным с подготовкой buildroot для данной платы.
Здесь мы разберем этапы от формирования xsa файла до запуска платы и первых логов linux, с объяснением что происходит в железе на каждом этапе. Также в рамках этой статьи я не буду использовать FSBL, мы попробуем обойтись U-Boot SPL. Итак, приступим к рассмотрению!
Технические детали
Описание отладочной платыДокументация от продавца: набор периферии на данной плате, заявленный в документации:CAN PSRS-485DDR3 1 GBОтладка через FT2232HQ (JTAG + USB - UART конвертер)EEPROM (AT24C256C)8 GB eMMCEthernet PS + PL (RTL8211F-CG)FMC 40 pinLCD256 Mbit QSPI NOR FlashRTC PCF8563USB 2. 0 PS (USB3320)XC7Z020-2CLG484IПериферия отладочной платы ZYNQ-RK7020-F Rev 1. 1На плате уже присутствует прошитый образ Linux в QSPI, который позволяет работать с PS частью нашего SoC, однако хочется научиться собирать linux для данной платы самостоятельно, как минимум для того, чтобы если мы захотели поэкспериментировать с драйверами - у нас уже были артефакты сборки ядра.
В качестве решения для подготовки образа продавец платы отправляет в архиве небольшую документацию, в которой объясняет, каким образом можно собрать petalinux под данную плату, какие исходные файлы из приложенного проекта для этого использовать. И сам проект, где все эти конфигурационные файлы petalinux присутствуют. Мануал довольно подробный, понятный, несмотря на то, что большая часть - на китайском языке.
Однако хочется иметь минимальный рабочий образ, который можно подготовить быстрее, и для этого мы будем использовать Buildroot. На отладочной плате расположился XC7Z020-2CLG484I, в составе которого есть PS часть, содержащая в себе два ядра (ARM Cortex-A9). С ней мы и будем работать, PL в данной статье рассматриваться не будет.
Отраслевые последствия
При помощи buildroot мы будем собирать U-Boot (включая SPL), Linux Kernel, rootfs, и впоследствии добавлять пакеты в наш образ, драйвера. Перед тем, как продолжить дальше, предлагаю ознакомиться, что происходит при загрузке платы, и зачем нужны те или иные параметры. Процесс загрузки платы RK-ZYNQ7020-FЧтобы понять, что нужно сделать для запуска платы, разберём, как происходит загрузка системы.
Мы рассматриваем Non-secure mode. Полная цепочка загрузки выглядит так:BootROM → FSBL/U-Boot SPL → U-Boot → Linux kernel → rootfsКаждый этап решает свою задачу и передаёт управление следующему. Разберём их по порядку.
Этап 1 — BootROMBootROM — это неизменяемый код, зашитый в кристалл производителем. Он запускается первым сразу после подачи питания, исполняется на CPU0, а CPU1 в это время стоит в WFE, ожидая явного пробуждения.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.




