MATLAB ヘルプ センター
出力データを読み取って端子のデータ型と次元とともに返す
data = readPort(hFPGA, portName)
data = readPort(hFPGA, portName,InterfaceID)
data,valid = readPort(hFPGA, portName)
data = readPort(hFPGA, portName) は出力データを読み取って、その値を端子のデータ型と次元とともに返します。
data
hFPGA
portName
data = readPort(hFPGA, portName,InterfaceID) は、オプションの InterfaceID 引数を使用して、重複した端子名をもつ DUT から出力データを読み取って、その値を端子のデータ型と次元とともに返します。
InterfaceID
data,valid = readPort(hFPGA, portName) は出力データを読み取って、その値を端子のデータ型と次元、および出力データが有効かどうかを示すオプションの出力とともに返します。
valid
例
すべて折りたたむ
この例では、AXI4 スレーブ インターフェイスにマッピングされた DUT 端子からデータを読み取る方法を示します。
Xilinx を Vendor にして fpga オブジェクトを作成します。
Xilinx
Vendor
fpga
hFPGA = fpga("Xilinx")
hFPGA = fpga with properties: Vendor: "Xilinx" Interfaces: [0x0 fpgaio.interface.InterfaceBase]
関数addAXI4SlaveInterfaceを使用して、AXI4 スレーブ インターフェイスを hFPGA オブジェクトに追加します。
addAXI4SlaveInterface
%% AXI4 Slave addAXI4SlaveInterface(hFPGA, ... "InterfaceID", "AXI4-Lite", ... "BaseAddress", 0xA0000000, ... "AddressRange", 0x10000);
HDL IP コアの DUT 端子を hdlcoder.DUTPort オブジェクト配列として指定してから、その端子を AXI4 スレーブ インターフェイスにマッピングします。
hdlcoder.DUTPort
hPort = hdlcoder.DUTPort("h_out1", ... "Direction", "OUT", ... "DataType", numerictype(1,16,10), ... "Dimension", [1 1], ... "IOInterface", "AXI4-Lite", ... "IOInterfaceMapping", "0x104");
DUT 端子オブジェクトを AXI4 スレーブ インターフェイスにマッピングしてから、関数 readPort を使用してデータを読み取ります。
readPort
mapPort(hFPGA, hPort); data = readPort(hFPGA, "h_out1");
この例では、AXI4-Stream インターフェイスにマッピングされた DUT 端子からデータを読み取る方法を示します。
ターゲット デバイス用のオブジェクトを作成します。
関数 addAXI4StreamInterface を使用して、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");
この例では、InterfaceID 引数を使用して、重複した端子名をもつ DUT からデータを読み取る方法を示します。
hFPGA = fpga with properties: Top-Level Properties Vendor: "Xilinx" Interfaces: [0x0 fpgaio.interface.InterfaceBase]
%% AXI4 Slave addAXI4SlaveInterface(hFPGA, ... "InterfaceID", "DUT1_Registers");
p1 = hdlcoder.DUTPort("myPort", ... "Direction", "IN", ... "IOInterface", "DUT1_Registers", ... "IOInterfaceMapping", "0x100"); mapPort(hFPGA,p1);
%% AXI4 Slave addAXI4SlaveInterface(hFPGA, ... "InterfaceID", "DUT2_Registers");
p2 = hdlcoder.DUTPort("myPort", ... "Direction", "IN", ... "IOInterface", "DUT2_Registers", ... "IOInterfaceMapping", "0x100"); mapport(hFPGA,p2);
DUT 端子オブジェクトを AXI4 スレーブ インターフェイスにマッピングしてから、オプションの引数 InterfaceID を指定した関数 readPort を使用してデータを読み取ります。
data = readPort(hFPGA, "DUT2_Registers", "myPort", 5);
ターゲット ベンダーの fpga オブジェクト。fpga オブジェクトとして指定します。
DUT 端子の名前。string として指定します。DUT 端子を hdlcoder.DUTPort オブジェクト配列として作成します。portName を指定する前に、関数 mapPort を使用して端子を AIX インターフェイスにマッピングしておく必要があります。
mapPort
""
string
FPGA インターフェイスの名前。string として指定します。
DUT 端子 PortName から読み取られた出力データ。スカラーまたはベクトルとして返されます。
PortName
読み取ったデータが有効かどうか。boolean データ型の true または false として返されます。この引数は、ReadTimeout の値が有限値に設定されていて、端子が AXI4-Stream インターフェイスにマッピングされている場合にのみ使用可能です。
boolean
ReadTimeout
R2020b で導入
writePort
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ