exponenta event banner

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