collectMemoryStatistics

Извлечение данных о эффективности из монитора соединений AXI

Описание

пример

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

Примеры

свернуть все

AXI interconnect monitor (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. Загрузка .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. The socIPCore объект предоставляет функцию, которая выполняет эту инициализацию. Затем создайте socMemoryProfiler объект, чтобы собрать метрики.

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

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

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

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

Для 'Trace' mode, вызовите collectMemoryStatistics функция один раз. Эта функция препятствует записи транзакций IP в FIFO в AXI interconnect monitor IP, хотя транзакции продолжаются в соединении. Установите размер транзакции FIFO, Trace capture depth, в параметрах конфигурации модели, под Hardware Implementation > Target hardware resources > FPGA design (debug).

collectMemoryStatistics(profilerObj);

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

plotMemoryStatistics(profilerObj);

Входные параметры

свернуть все

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

Введенный в R2019a
Для просмотра документации необходимо авторизоваться на сайте