Рабочий процесс совместного проектирования аппаратного и программного обеспечения для однокристальных платформ

Рабочий процесс совместного проектирования аппаратного HDL Coder™ помогает автоматизировать развертывание MATLAB® и Simulink® проект в Zynq®-7000 платформа или Intel® SoC платформа. Можно исследовать лучшие способы разбиения и развертывания проекта путем итерации через следующий рабочий процесс.

  1. MATLAB и Simulink Algorithm and Разработка Системы: Вы начинаете с реализации своего проекта в MATLAB или Simulink. Когда поведение проекта соответствует вашим требованиям, решите, как разделить ваш проект: какие части вы хотите запускать на оборудовании и какие части вы хотите запускать во встроенном программном обеспечении.

    Часть проекта, которую вы хотите запустить в оборудовании, должна использовать синтаксис MATLAB или блоки Simulink, которые поддерживаются и конфигурируются для генерации HDL-кода. См.:

  2. HDL IP Core Generation: Заключайте аппаратную часть вашего проекта в атомарный блок Subsystem или функцию MATLAB, и используйте HDL Workflow Advisor, чтобы определить и сгенерировать HDL-ядро IP.

    Следующая схема показывает проект, который был разделен на оборудование часть, оранжевым цветом и программную часть, синим цветом. Генерация IP-ядра HDL создает IP-ядро из аппаратной части модели. Ядро IP включает компоненты аппаратного интерфейса, такие как AXI4 доступные регистры, AXI4 или AXI4-Lite интерфейсы, AXI4-Stream или AXI4-Stream Video интерфейсы, AXI4 Master интерфейсы и внешние порты.

  3. Embedded System Инструмента Интегрирования: Как часть рабочего процесса HDL Workflow Advisor IP core generation, вы вставляете сгенерированное IP-ядро в исходный проект и генерируете битовый поток FPGA для оборудования SoC.

    Этот исходный проект является предопределенным встраиваемой системой интегрирования проектом. Он содержит все элементы Intel или Xilinx® программное обеспечение должно развертывать ваш проект на платформе SoC, за исключением пользовательского IP-ядра и встроенного программного обеспечения, которое вы генерируете.

    Следующая схема иллюстрирует отношение между исходным проектом, зеленым цветом и сгенерированным IP-ядром, оранжевым цветом.

  4. Генерация интерфейса SW (требует лицензии Simulink и Embedded Coder® лицензия): В HDL Workflow Advisor, после того, как вы сгенерируете IP-ядро и вставите его в исходный проект, вы можете опционально сгенерировать модель интерфейса программного обеспечения и скрипт интерфейса программного обеспечения. Модель интерфейса программного обеспечения является вашей исходной моделью с блоками драйверов AXI, заменяющими часть оборудования. Скрипт является файлом MATLAB, который генерируется на основе настроек таблицы интерфейсов исходного проекта и Target. Он содержит команды, которые позволяют вам подключаться к целевому компьютеру и записывать или читать из сгенерированного IP-ядра с помощью блоков драйверов AXI.

    Если у вас есть лицензия Embedded Coder, можно автоматически сгенерировать модель и скрипт интерфейса программного обеспечения, сгенерировать из него встраиваемый код, а также создать и запустить исполняемый файл на Linux® ядро на ARM® процессора. Сгенерированное встроенное программное обеспечение включает код драйвера AXI, сгенерированный из блоков драйверов AXI, который управляет ядром IP HDL.

    Если у вас нет лицензии Embedded Coder или лицензии Simulink, можно написать встроенное программное обеспечение и вручную создать его для процессора ARM. Смотрите Сгенерируйте скрипт интерфейса программного обеспечения для зондирования и быстро прототипа HDL IP Core

    Следующая схема показывает различие между исходной моделью и моделью интерфейса программного обеспечения.

  5. SoC Platform и Режим external mode PIL: Используя HDL Workflow Advisor, вы программируете свой битовый поток FPGA на платформу SoC. Затем можно запустить модель интерфейса программного обеспечения в режим external mode или цикл (PIL) режиме, чтобы протестировать развернутый проект.

    Если ваша развернутая конструкция не соответствует требованиям проекта, можно повторить рабочий процесс с измененной моделью или другим аппаратно-программным разделом.

Похожие темы