addAXI4SlaveInterface

Запись данных в IP-ядро или чтение данных из IP-ядра с помощью AXI4 или AXI4-Lite интерфейса

Описание

пример

addAXI4SlaveInterface(hFPGA) добавляет AXI4 подчиненный интерфейс, который можно использовать для управления портами DUT, сопоставленными с AXI4 или AXI4-Lite интерфейсами в HDL- Coder™ сгенерированном IP-ядре из MATLAB®.

пример

addAXI4SlaveInterface(hFPGA, Name,Value) добавляет AXI4 подчиненный интерфейс, который можно использовать для управления портами DUT, сопоставленными с AXI4 или AXI4-Lite интерфейсами в HDL Coder сгенерированном ядре IP из MATLAB, с одним или несколькими свойствами, заданными как аргументы пары "имя-значение". Заключайте каждое свойство и пару значений в одинарные кавычки.

Примеры

свернуть все

Добавьте AXI4 подчиненный интерфейс для Xilinx® цель.

Создайте целевой объект, hFPGA, для целевого устройства.

hFPGA = fpga("Xilinx")
hFPGA = 

  fpga with properties:

       Vendor: "Xilinx"
   Interfaces: [0x0 fpgaio.interface.InterfaceBase]

    

Добавьте AXI4 подчиненный интерфейс к hFPGA объект при помощи addAXI4SlaveInterface функция.

%% AXI4-Lite
addAXI4SlaveInterface(hFPGA, ...
	... % Interface properties
    "InterfaceID", "AXI4-Lite", ...
    "BaseAddress", 0xA0000000, ...
    "AddressRange", 0x10000, ...
    ... % Driver properties
    "WriteDeviceName", "mwipcore0:mmwr0", ...
    "ReadDeviceName", "mwipcore0:mmrd0");

После добавления интерфейсов используйте mapPort функция для сопоставления портов с этим интерфейсом, а затем чтения и записи данных. См. раздел Сопоставление портов DUT в IP-ядре HDL и AXI4 подчиненных интерфейсов.

Добавьте AXI4 подчиненный интерфейс для Intel® цель.

Создайте целевой объект, hFPGA, для целевого устройства Intel.

hFPGA = fpga("Intel")
hFPGA = 

  fpga with properties:

       Vendor: "Intel"
   Interfaces: [0x0 fpgaio.interface.InterfaceBase]

    

Добавьте AXI4 подчиненный интерфейс к hFPGA объект при помощи addAXI4SlaveInterface функция.

%% AXI4
addAXI4SlaveInterface(hFPGA, ...
	... % Interface properties
    "InterfaceID", "AXI4", ...
    "BaseAddress", 0xA0000000, ...
    "AddressRange", 0x10000, ...
    ... % Driver properties
    "WriteDeviceName", "mwipcore0:mmwr0", ...
    "ReadDeviceName", "mwipcore0:mmrd0");

После добавления интерфейсов используйте mapPort функция для сопоставления портов с этим интерфейсом, а затем чтения и записи данных. См. раздел Сопоставление портов DUT в IP-ядре HDL и AXI4 подчиненных интерфейсов.

Добавьте AXI4 подчиненный интерфейс для автономного целевого объекта Xilinx.

Создайте целевой объект, hFPGA, для целевого устройства.

hFPGA = fpga("Xilinx")
hFPGA = 

  fpga with properties:

       Vendor: "Xilinx"
   Interfaces: [0x0 fpgaio.interface.InterfaceBase]

    

Поскольку автономные платы FPGA не имеют встроенного процессора ARM, можно использовать драйвер MATLAB AXI Master. Используйте aximaster объект, чтобы задать драйвер MATLAB AXI Master, а затем добавить эту информацию к addAXI4SlaveInterface функция.

% Create an "aximaster" object 
hAXIMDriver = aximaster("Xilinx");

% Pass it into the addInterface command
addAXI4SlaveInterface(hFPGA, ...
    ... % Interface properties
    "InterfaceID",  "AXI4-Lite", ...
    "BaseAddress",  0xB0000000, ...
    "AddressRange", 0x10000, ...
    ... % Driver properties
    "WriteDriver", hAXIMDriver, ...
    "ReadDriver", hAXIMDriver, ...
    "DriverAddressMode", "Full");


После добавления интерфейсов используйте mapPort функция для сопоставления портов с этим интерфейсом, а затем чтения и записи данных. См. раздел Сопоставление портов DUT в IP-ядре HDL и AXI4 подчиненных интерфейсов.

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

свернуть все

fpga объект для целевого поставщика, заданный как fpga объект.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: addAXI4SlaveInterface(hFPGA, "InterfaceID", "AXI4-Lite") создает AXI4 подчиненный интерфейс с InterfaceID как AXI4-Lite.

Имя AXI4-Lite или AXI4 интерфейса, который вы хотите сопоставить портам DUT, заданное как строка.

Базовый адрес для AXI4 или AXI4-Lite подчиненного интерфейса, заданный как числовое значение.

Пример: 0x40010000

Адресная область значений для AXI4 или AXI4-Lite интерфейса, заданная в виде числового значения.

Пример: 0x10000

Имя и путь к устройству IIO, на которое вы хотите записать данные. Когда вы генерируете ядро IP при помощи IP Core Generation рабочий процесс, имя по умолчанию mwipcore0:mmwr0.

Пример: "mwipcore0:mmwr0"

Имя и путь к устройству IIO, с которого необходимо считать данные. Когда вы генерируете ядро IP при помощи IP Core Generation рабочий процесс, имя по умолчанию mwipcore0:mmrd0.

Пример: "mwipcore0:mmrd0"

Имя драйвера AXI, в который вы используете для записи данных. Можно задать это свойство как HDL- Verifier™ aximaster объект для автономных плат FPGA. Для SoC-платформ HDL Coder автоматически создает драйверы.

Пример: "aximaster('Xilinx')"

Имя драйвера AXI, с которого вы считываете данные. Вы можете задать это свойство как HDL Verifier aximaster объект для автономных плат FPGA, не имеющих встроенного процессора ARM. Для SoC-платформ HDL Coder автоматически создает драйверы.

Пример: "aximaster('Xilinx')"

Укажите, ожидает ли драйвер AXI полный адрес, включающий базовый адрес и адрес смещения, или он ожидает только адрес смещения.

Пример: "Offset"

Введенный в R2020b