Отладка IP-ядра с помощью сбора данных FPGA

В этом примере показов, как отлаживать HDL Coder сгенерированное IP-ядро с помощью функции FPGA Данных Capture HDL Verifier.

Требования

  • Набор для оценки ZC702 Xilinx Zynq

  • HDL Coder поддержки платформы Xilinx Zynq

  • HDL Verifier поддержки плат Xilinx FPGA

  • (Необязательно) Пакет поддержки Embedded Coder для платформы Xilinx Zynq

  • (Необязательно) DSP System Toolbox

  • Следуйте разделу «Set up Zynq hardware and tools» в примере HDL Coder «Начало Работы with Targeting Xilinx Zynq Platform» для настройки ZC702 оборудования.

Введение

Когда вы отлаживаете сгенерированный IP Core из HDL Coder, полезно контролировать внутренние сигналы IP Core, когда он работает на реальном оборудовании. В этом примере показано, как использовать улавливание данных FPGA HDL Verifier для захвата таких сигналов в MATLAB для отладочного анализа.

Начните с просмотра модели примера:

open_system('hdlcoder_led_blinking_data_capture');

Подсистема led_counter является оборудованием подсистемой, нацеленной на ткань FPGA. Внутри этой подсистемы мы отметили несколько внутренних сигналов как тестовые точки. HDL Coder направляет эти внутренние сигналы из DUT и в оболочку IP Core, чтобы сигналы могли быть подключены к FPGA Data Capture HDL IP.

open_system('hdlcoder_led_blinking_data_capture/led_counter');

Сгенерируйте IP-ядро HDL

Запустите HDL Workflow Advisor из модели и запустите рабочий процесс генерации ядра IP. Подробное руководство по шагам см. в примере Начало работы с таргетингом Xilinx Zynq Platform

1. На шаге 1.1 выберите IP Core Generation в рабочем процессе Target. Для «Целевой платформы» выберите «Xilinx Zynq ZC702 evaluation kit»

2. На шаге 3.1.3 на вкладке «Ports» проверьте «Enable HDL DUT port generation for тестовые точки».

3. На шаге 1.3 выберите интерфейс «FPGA Data Capture - JTAG» для портов blinkfrequency, blinkdirection, led_output и count.

4. Выполните оставшиеся шаги рабочего процесса, чтобы сгенерировать HDL-IP и запрограммировать целевое устройство.

Сбор и отображение данных из IP Core

Теперь FPGA ткань была запрограммирована и запущена, следующий шаг - это захват данных с платы Zynq.

Сначала найдите скрипт запуска FPGA Data Capture. В этом примере скрипт находится в генерации HDL-кода директории: hdl_prj/ip_core/led_count_ip_v1_0/fpga_data_capture/launchDataCaptureApp.m. Вы также можете найти этот скрипт в отчете генерации кода.

Затем запустите этот скрипт в MATLAB. Вам нужно будет добавить директории, где этот скрипт расположен, в путь MATLAB или изменить текущую папку.

После выполнения этого скрипта запускается приложение FPGA Data Capture App. Вы можете нажать кнопку «Захватить данные», чтобы захватить данные из FPGA, не настраивая триггеры.

Кроме того, можно установить условие триггера, где led_counter==0, и положение триггера 32. Затем снова нажмите кнопку «Захватить данные».