hdlcoder.DUTPort
オブジェクト配列として保存された、HDL Coder で生成された IP コアの DUT 端子
説明
このオブジェクトは、HDL Coder™ で生成された IP コアの各 DUT 端子名を表します。このオブジェクトは、ターゲット ハードウェア上の DUT の端子を表します。IP Core Generation ワークフローを実行して HDL IP コアを生成する場合は、端子をレジスタまたは AXI4-Stream インターフェイスにマッピングします。端子オブジェクトには、ターゲット インターフェイスを設定のタスクのターゲット プラットフォーム インターフェイス テーブルのインターフェイス マッピング情報に基づいて、これらの DUT 端子およびマップ先のインターフェイスに関する情報が含まれます。関数 mapPort を使用した後に、関数 writePort および readPort を使用して、DUT 端子との間で書き込みおよび読み取りを行うことができます。
作成
説明
は、名前と値のペアの引数で追加プロパティを指定して、DUT 端子オブジェクトをオブジェクト配列として作成します。hPort = hdlcoder.DUTPort(Name)
プロパティ
元のモデル内の DUT サブシステムの入力端子または出力端子の名前。IP Core Generation ワークフローを実行する際に、ターゲット プラットフォーム インターフェイス テーブルの [端子名] セクションからこの情報を取得します。
例: hPort = hdlcoder.DUTPort("h_in", ...)
データ型: string | char
DUT 端子の方向。IN、OUT、または INOUT として指定します。端子の方向 INOUT は、AXI4 および AXI4-Lite インターフェイスでのみサポートされています。
例: hPort = hdlcoder.DUTPort(..., "Direction", "OUT", ...)
データ型: char
DUT 端子での複素数データ。true または false として指定します。HDL Coder では、AXI4-Stream インターフェイスでの複素数データ ストリーミングがサポートされています。この設定は、AXI4-Stream インターフェイスでのみサポートされています。
例: hPort = hdlcoder.DUTPort(..., "IsComplex", "true", ...)
データ型: char
AXI インターフェイスにマッピングされる DUT 端子のデータ型。uint32 や numerictype オブジェクトなどの MATLAB® 数値型として指定します。IP Core Generation ワークフローを実行する際に、ターゲット プラットフォーム インターフェイス テーブルの [データ型] セクションからこの情報を取得します。
例: hPort = hdlcoder.DUTPort(..., "DataType", numerictype(1,16,10), ... )
データ型: uint8 | uint16 | uint32 | uint64
AXI インターフェイスにマッピングされる DUT 端子の次元。整数配列または他の任意のデータ型として指定します。次元は、マップされる端子がスカラーかベクトルかによって異なります。Dimension は、スカラー端子の場合は [1 1]、N 次元ベクトル端子の場合は [1 N] です。IP Core Generation ワークフローを実行する際に、ターゲット プラットフォーム インターフェイス テーブルの [データ型] セクションからこの情報を取得します。
例: hPort = hdlcoder.DUTPort(..., "Dimension", [1 6], ...)
データ型: int8 | int16 | int32 | int64 | single | double
DUT 端子のマッピング先のターゲット プラットフォーム インターフェイス。string または文字配列として指定します。IP Core Generation ワークフローを実行する際に、ターゲット プラットフォーム インターフェイス テーブルの [ターゲット プラットフォーム インターフェイス] セクションからこの情報を取得します。
例: hPort = hdlcoder.DUTPort(..., "IOInterface", "AXI4-Lite")
データ型: string | char
ターゲット プラットフォーム インターフェイス マッピング情報。文字配列、string 配列、または数値型として指定します。
例: hPort = hdlcoder.DUTPort(..., "IOInterfaceMapping", "0x100")
データ型: string | char
例
fpga オブジェクトを作成してターゲット デバイスに接続してから、hdlcoder.DUTPort オブジェクトを使用して DUT 端子を指定します。
ターゲット デバイス用の fpga オブジェクトを作成します。
hFPGA = fpga("Xilinx")hFPGA =
fpga with properties:
Vendor: "Xilinx"
Interfaces: [0x0 fpgaio.interface.InterfaceBase]
addRegisterInterface関数を使用して、レジスタ インターフェイスを hFPGA オブジェクトに追加します。
%% AXI4-Lite addRegisterInterface(hFPGA, ... "InterfaceID", "AXI4-Lite", ... "BaseAddress", 0xA0000000, ... "AddressRange", 0x10000);
AXI4-Lite インターフェイス用の hdlcoder.DUTPort オブジェクトを作成します。オブジェクトを作成した後に、関数 mapPort を使用して端子を IO インターフェイスにマッピングできます。
% ... hPort_h_in1 = hdlcoder.DUTPort("h_in1", ... "Direction", "IN", ... "DataType", numerictype(1,16,10), ... "Dimension", [1 1], ... "IOInterface", "AXI4-Lite", ... "IOInterfaceMapping", "0x100"); mapPort(hFPGA, hPort_h_in1);
hPort_h_in1 =
DUTPort with properties:
Name: "h_in1"
Direction: IN
DataType: [1×1 embedded.numerictype]
Dimension: [1 1]
IOInterface: "AXI4-Lite"
IOInterfaceMapping: "0x100"
fpga オブジェクトを作成してターゲット デバイスに接続してから、hdlcoder.DUTPort オブジェクトを使用して DUT 端子を指定します。
fpga オブジェクトを作成します。
hFPGA = fpga("Xilinx")hFPGA =
fpga with properties:
Vendor: "Xilinx"
Interfaces: [0x0 fpgaio.interface.InterfaceBase]
関数 addAXI4StreamInterface を使用して、AXI4-Stream インターフェイスを hFPGA オブジェクトに追加します。
%% AXI4-Stream addAXI4StreamInterface(hFPGA, ... "InterfaceID", "AXI4-Stream", ... "WriteEnable", true, ... "ReadEnable", true, ... "WriteFrameLength", 1024, ... "ReadFrameLength", 1024);
AXI4-Stream インターフェイス用の hdlcoder.DUTPort オブジェクトを作成します。オブジェクトを作成した後に、関数 mapPort を使用して端子を IO インターフェイスにマッピングできます。
hPort_x_in_data = hdlcoder.DUTPort("x_in_data", ... "Direction", "IN", ... "DataType", numerictype(1,16,10), ... "Dimension", [1 1], ... "IOInterface", "AXI4-Stream") hPort_y_out_data = hdlcoder.DUTPort("y_out_data", ... "Direction", "OUT", ... "DataType", numerictype(1,32,20), ... "Dimension", [1 1], ... "IOInterface", "AXI4-Stream") mapPort(hFPGA, [hPort_x_in_data, hPort_y_out_data]);
hPort_x_in_data =
DUTPort with properties:
Name: "x_in_data"
Direction: IN
DataType: [1×1 embedded.numerictype]
Dimension: [1 1]
IOInterface: "AXI4-Stream"
IOInterfaceMapping: ""
hPort_y_out_data =
DUTPort with properties:
Name: "y_out_data"
Direction: OUT
DataType: [1×1 embedded.numerictype]
Dimension: [1 1]
IOInterface: "AXI4-Stream"
IOInterfaceMapping: ""
バージョン履歴
R2020b で導入
MATLAB Command
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 のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)