exponenta event banner

plotMemoryStatistics

График данных о производительности, полученных с монитора межсоединений AXI

Описание

пример

plotMemoryStatistics(profiler) генерирует визуализацию данных о производительности из IP-адреса монитора межсоединений AXI, работающего на вашей аппаратной плате. profiler объект представляет соединение с этим IP-адресом. Когда монитор межсоединений AXI сконфигурирован в 'Profile' эта функция запускает инструмент графика производительности. Инструмент можно настроить для построения графика пропускной способности, количества пакетов и средней задержки транзакций. В 'Trace' эта функция открывает Logic Analyzer для просмотра подробных данных о событиях транзакций памяти.

Примеры

свернуть все

Монитор межсоединений AXI (AIM) - это ядро IP, которое собирает метрики производительности для конструкции FPGA на основе AXI. Создание socIPCore для установки и конфигурирования IP AIM и использования socMemoryProfiler для извлечения и отображения данных.

Пример настройки и запроса AIM IP в конструкции с использованием MATLAB ® в качестве AXI Master см. в разделе Анализ пропускной способности памяти с использованием генераторов трафика. В частности, просмотрите soc_memory_traffic_generator_axi_master.m сценарий, который настраивает и контролирует конструкцию на устройстве.

Монитор производительности может собирать данные двух типов. Выберите режим «Профиль», чтобы собрать среднее время задержки транзакций и количество байтов и пакетов. В этом режиме можно запустить средство графика производительности, а затем настроить его для графика пропускной способности, количества пакетов и задержки транзакций. Выберите режим трассировки для сбора подробных данных о событиях транзакций памяти и просмотра данных в виде формы сигнала.

Mode = 'Profile'; % or 'Trace'

Чтобы получить показатели производительности диагностики из созданной конструкции FPGA, необходимо настроить соединение JTAG с устройством из MATLAB. Загрузить a .mat файл, содержащий структуры, полученные из параметров конфигурации платы. Этот файл был создан инструментом SoC Builder. Эти структуры описывают межсоединение памяти и основные конфигурации, такие как размеры буфера и адреса. Используйте socHardwareBoard объект для настройки соединения JTAG.

load('soc_memory_traffic_generator_zc706_aximaster.mat');
hwObj = socHardwareBoard('Xilinx Zynq ZC706 evaluation kit','Connect',false);
AXIMasterObj = socAXIMaster(hwObj);

Сконфигурируйте AIM. socIPCore объект предоставляет функцию, выполняющую эту инициализацию. Затем создайте socMemoryProfiler объект для сбора метрик.

apmCoreObj = socIPCore(AXIMasterObj,perf_mon,'PerformanceMonitor','Mode',Mode);
initialize(apmCoreObj);
profilerObj = socMemoryProfiler(hwObj,apmCoreObj);

Извлеките метрики производительности или данные сигналов из проекта, запущенного в FPGA, с помощью socMemoryProfiler функции объекта.

Для 'Profile' режим, вызовите collectMemoryStatistics функция в цикле.

NumRuns = 100;
for n = 1:NumRuns
    collectMemoryStatistics(profilerObj);
end
Время настройки конструкции JTAG является большим относительно времени транзакций FPGA, и, если в конструкции имеется небольшое количество транзакций, они могут быть уже завершены к моменту запроса монитора. В этом случае график полосы пропускания показывает только одну выборку, и вычисление пропускной способности не является точным. В этом случае увеличьте общее количество транзакций, выполняемых конструктором.

Для 'Trace' режим, вызовите collectMemoryStatistics функция один раз. Эта функция останавливает IP от записи транзакций в FIFO в мониторе межсоединений AXI IP, хотя транзакции продолжаются на межсоединении. Задайте размер транзакции FIFO, глубину отслеживания в параметрах конфигурации модели по пути Аппаратная реализация > Целевые аппаратные ресурсы > FPGA design (debug).

collectMemoryStatistics(profilerObj);

Визуализация данных о производительности с помощью plotMemoryStatistics функция. В 'Profile' эта функция запускает инструмент графика производительности, и его можно настроить для построения графика пропускной способности, количества пакетов и средней задержки транзакций. В 'Trace' эта функция открывает инструмент Logic Analyzer для просмотра данных о событиях пакетной транзакции.

plotMemoryStatistics(profilerObj);

Входные аргументы

свернуть все

Объект профилировщика памяти, указанный как socMemoryProfiler объект, обеспечивающий доступ к IP-протоколу межсоединений памяти AXI, работающему на аппаратной плате.

Представлен в R2019a