readPort

Считывает выходные данные и возвращает их с типом данных порта и размерностью

Описание

пример

data = readPort(hFPGA, portName) считывает выходные данные и возвращает это значение с типом данных порта и размерностью.

Примеры

свернуть все

В этом примере показано, как считать данные из портов DUT, которые сопоставлены с AXI4 подчиненными интерфейсами.

Создайте fpga объект с Xilinx как Vendor.

hFPGA = fpga("Xilinx")
hFPGA = 

  fpga with properties:

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

    

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

%% AXI4 Slave
addAXI4SlaveInterface(hFPGA, ...
	"InterfaceID", "AXI4-Lite", ...
	"BaseAddress", 0xA0000000, ...
	"AddressRange", 0x10000);

Укажите порты DUT в IP-ядре HDL в качестве hdlcoder.DUTPort Объектному массиву и затем сопоставьте порт с AXI4 ведомым интерфейсом.

hPort = hdlcoder.DUTPort("h_out1", ...
	"Direction", "OUT", ...
	"DataType", numerictype(1,16,10), ...
	"Dimension", [1 1], ...
	"IOInterface", "AXI4-Lite", ...
	"IOInterfaceMapping", "0x104");

Сопоставьте объекты порта DUT с AXI4 подчиненным интерфейсом, а затем считайте данные при помощи readPort функция.

mapPort(hFPGA, hPort);

data = readPort(hFPGA, "h_out1");

В этом примере показано, как считать данные из портов DUT, которые сопоставлены с AXI4-Stream интерфейсами.

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

hFPGA = fpga("Xilinx")
hFPGA = 

  fpga with properties:

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

    

Добавьте интерфейс AXI4-Stream к hFPGA объект при помощи addAXI4StreamInterface функция.

addAXI4StreamInterface(hFPGA, ...
	"InterfaceID", "AXI4-Stream", ...
	"WriteEnable", true, ...
      "ReadEnable", true, ...
	"WriteFrameLength", 1024, ...
	"ReadFrameLength", 1024);

Задайте порт DUT как hdlcoder.DUTPort Объектному массиву и затем сопоставьте порт с AXI4-Stream интерфейсом.

hPort = hdlcoder.DUTPort("y_out", ...
	"Direction", "OUT", ...
	"DataType", numerictype(1,16,10), ...
	"Dimension", [1 1], ...
	"IOInterface", "AXI4-Stream");

Сопоставьте объекты порта DUT с AXI4-Stream интерфейсом и затем считайте данные при помощи readPort функция.

mapPort(hFPGA, hPort);

data = readPort(hFPGA, "y_out");

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

свернуть все

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

Имя порта DUT, заданное как строка. Вы создаете порт DUT как hdlcoder.DUTPort объектный массив. Прежде чем вы задаете portName, вы должны были сопоставить порт с интерфейсом AXI при помощи mapPort функция.

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

свернуть все

Выход данных, считываемых из порта DUT, PortName, возвращенный как скаляр или вектор.

Введенный в R2020b