FPGA-платы / SoM / Индивидуальный дизайн / Интеграция IP
info@profpga.net +86 18621324348
Главная/Блог/Прикладная практика/Практическая замена ZYNQ на отечественный: что меняется при переходе с Xilinx ZYNQ на PBC7Z020G/021G
Прикладная практика

Практическая замена ZYNQ на отечественный: что меняется при переходе с Xilinx ZYNQ на PBC7Z020G/021G

2026-10-22 Время чтения: ~ 11 мин. Команда разработки Дуюань Электроникс

Исходный проект использует Xilinx Zynq-7000 (XC7Z020) для гетерогенной схемы ARM-софт плюс FPGA-реалтайм-логика, и теперь его нужно локализовать. Значит ли смена чипа полный переписывание проекта или только локальные правки? Статья делит миграцию HWD7Z020 (совместим с XC7Z020) на PBC7Z020G/021G на три слоя — софт PS, логика PL, загрузка и BSP — и разбирает реальный объём изменений, переиспользуемые части и точки риска.

1. Зачем мигрировать: от XC7Z020 к отечественному HWD7Z020

Ценность ZYNQ в том, что один чип содержит и двухъядерный ARM Cortex-A9 (PS, системный софт, сеть, файловая система), и программируемую логику (PL, параллельный сбор, ускорение протоколов, реалтайм-IO). Когда проект на XC7Z020 нужно локализовать, цель — не совсем другая архитектура, а совместимый drop-in по системе команд, периферии и потоку Vivado. PBC7Z020G несёт HWD7Z020-1PBGA400, PBC7Z021G несёт HWD7Z020-1CLG484; оба промышленные, двухъядерный A9@800МГц плюс FPGA, нативно совместимы с Vivado без патча, диапазон -55~125°C сверхширокий.

До миграции разбейте проект на три слоя и оцените каждый:

1. Софт PS: bare-metal программы, задачи FreeRTOS, Linux-приложения и драйверы на A9.

2. Логика PL: RTL, IP-ядра, ограничения и назначение выводов из Vivado, работающие в ткани FPGA.

3. Загрузка и BSP: образ загрузки, конфиг запуска QSPI/eMMC/SD, device tree и пакет поддержки платы.

2. Миграция софта PS: наибольшее переиспользование BSP

1. Bare-Metal и FreeRTOS: проект почти не меняется

Проекты bare-metal и FreeRTOS обращаются к периферии A9 (UART, GPIO, таймеры, контроллер прерываний) через BSP. Раскладка регистров PS у HWD7Z020 совместима с XC7Z020, драйверы SDK/BSP переиспользуются, прикладной код переписывать не нужно. Изменения сосредоточены на регенерации BSP под отечественную библиотеку устройств, перекомпиляции и проверке номеров прерываний и конфигурации тактов. Объём измеряется днями, не месяцами.

2. Linux: локальные правки device tree, U-Boot и ядра

В Linux-проектах сторона PS меняется больше, чем в bare-metal, но это не старт с нуля:

  • Device Tree (DTS): переназначьте узлы периферии PS и подключения PL из дерева XC7Z020 на разъёмы новой платы; заполните ёмкость/ширину DDR3, разделы eMMC/QSPI, узлы Ethernet/USB под новую плату.
  • U-Boot и ядро: обрежьте конфиг, совместимый с XC7Z020; настройте bootargs, скорость консоли и монтирование rootfs; перекомпилируйте собственные драйверы и протестируйте на отечественном устройстве.
  • Прикладной слой: сервисы пользователя, сетевые программы и бизнес-алгоритмы не зависят от чипа и переносятся напрямую.

Пропускную способность DDR3 сначала оцените по конфигу платы: обе PBC7Z020G/021G используют DDR3 1ГБ, 32-битная шина, 1066Мбит/с; байтовая полоса = 4Б × 1066МТ/с ≈ 4,26 ГБ/с, достаточно для обычного управления и лёгкой передачи изображений, менять платформу из-за полосы не нужно.

3. Миграция логики PL: перепланируйте ограничения после сверки ресурсов

Сравнение ресурсов PL (класс XC7Z020 vs HWD7Z020 / PBC7Z021G)

Ресурс Класс XC7Z020 PBC7Z021G (HWD7Z020-1CLG484) Вывод по миграции
Логические ячейки ~85K 85K Тот же класс, помещается
LUT ~53,2K 53.200 Тот же класс
Триггеры ~106K 106.400 Тот же класс
DSP-множители 220 220 Тот же класс
Block RAM 4,9 Мб 4,9 Мб Тот же класс
Доступный PL-IO — 198 (плюс 48 пар LVDS, 100 настраиваемых по напряжению IO) Перепланировать под новые разъёмы

Поведенческий RTL, чисто комбинационная/последовательная логика и большинство IP-ядер (BRAM, FIFO, PLL/MMCM, AXI-interconnect) синтезируются напрямую в совместимом потоке без переписывания.

Ограничения, IP и переназначение выводов

После смены корпуса с PBGA400 (020G, компактный 35×42мм) на 1CLG484 (021G, 60×60мм) физические выводы и выведенные IO различаются, поэтому файл ограничений XDC нужно заново назначить по разъёмам новой платы; дерево питания, трассировка DDR3 и кварцы (021G: кварц PS 33,33МГц плюс кварц PL 50МГц) сверяются с новой платой. Если IP использует закрытый жёсткий блок вендора (определённые трансиверы, модули безопасности), проверьте наличие эквивалентного IP у отечественного устройства; иначе замените общим RTL.

4. Цепочка загрузки и чек-лист внедрения

Режимы загрузки и образ boot

PBC7Z021G резервирует 6-пиновый JTAG и поддерживает режимы JTAG/QSPI/SD-карта переключателем DIP; PBC7Z020G использует 2×120-пиновые разъёмы Panasonic и питание 5В. Внедрите миграцию по чек-листу:

1. Софт PS: регенерируйте BSP, перекомпилируйте и протестируйте bare-metal/FreeRTOS; для Linux обновите device tree, bootargs U-Boot и конфиг ядра.

2. Логика PL: синтезируйте исходный проект, перепишите XDC под новый корпус, проверьте совместимость IP и сходимость тайминга.

3. Конфиг загрузки: подтвердите режим (отладка JTAG → серийный QSPI/SD), соберите boot.bin (FSBL, битстрим, device tree) и rootfs.

4. Широкий диапазон и надёжность: отечественные платы -55~125°C (020G/021G); проведите термоциклы и длительное испытание под нагрузкой для целевого режима, подтвердите запас по питанию.

Выбор: 020G / 021G / чистый FPGA по размеру и IO

  • Сверхкомпактная замена (PBC7Z020G, ¥799): 35×42×5,5мм, 2×120-пиновый, для плотных по месту узлов с умеренной логикой.
  • Полностью выведенная серия (PBC7Z021G, ¥999): 60×60мм, 4×80-пиновый, 198 PL-IO и 48 пар LVDS, ресурсы PS/PL выведены полностью, для серийного производства и проектов с большим числом внешних IO.
  • Чистый FPGA с большими ресурсами (PBC7K325G, ¥1.999): когда стороне PL нужны высокоскоростные трансиверы или большая логика (16 GTX@12,5Гбит/с, 2ГБ DDR3, 326K ячеек), берёт на себя отечественный Kintex-7 SoM, дополняя схему ZYNQ.

Замена ZYNQ на отечественный — не пересборка: софт PS и прикладной слой переиспользуются сильнее всего; реально трогаете перепланирование ограничений PL под новый корпус и обновление device tree с образом загрузки. Оцените отдельно PS, PL и загрузку; в совместимом потоке проект требует лишь локальной правки, риск сосредоточен на совместимости IP и широкотемпературной регрессии, и миграция внедряется по плану.

FPGAHWD7Z020ZYNQВстраиваемые системыОтечественная замена
Дуюань Электроникс · Оригинальная техническая статья

Похожие продукты

‹ Предыдущая статья

Оптоволоконный бэкенд 10G/25G: планирование линейной скорости GTX/GTH и UDP-офлоуда

Статья не ответила на ваш вопрос?

Свяжитесь с нами, описав ваши задачи, для персональной технической поддержки.

Контакты · +86 18621324348