ダイナミックFPGAインタフェースリファレンスを使用する(FPGAインタフェース)

最新バージョンでは、通信ハードウェアインタフェースの関連部分とホストに互換性がある限り、異なるFPGA VIまたはビットファイルからのインタフェースと動作するサブVIを作成できます。通信ハードウェアインタフェースには、以下の項目が含まれます。

  • 制御器と表示器の名前とタイプ
  • DMAまたはピアツーピアFIFOの名前、データタイプ、およびタイプ
  • ターゲット固有のメソッドの名前、方向、およびタイプ

これらのサブVIは、異なるターゲットタイプのVIまたはビットファイルへのリファレンスであっても、指定されたインタフェースを実装するすべてのFPGAリファレンスと動作することが可能です。たとえば、PCIおよびPXIターゲットに対して同じサブVIを使用することができます。

FPGAリファレンスをダイナミックにするには、「FPGA VIリファレンスを開く」を構成ダイアログボックスのダイナミックモードチェックボックスをオンにします。FPGAインタフェースを指定するには、FPGAインタフェースダイナミックRefnum定数と「ダイナミックFPGAインタフェースキャスト」関数を使用することもできます。サブVIを作成するには、定数を右クリックしてショートカットメニューから制御器に変更または表示器に変更を選択し、定数を制御器もしくは表示器に変更します。

編集時とランタイム時のエラー

FPGAインタフェースのダイナミックモードを使用する際に、LabVIEWは編集時とランタイム時のエラーを返します。編集時またはランタイム時にエラーが発生する可能性がある状況の例を以下に記載します。

ダイナミックモードリファレンスが後続ノードを壊さないことを確認する

ダイナミックモードオプションでFPGA VIリファレンスを構成し、サブVIインタフェースで必要な要素よりも多くの要素が構成済みのリファレンスに含まれる場合、後続ノードが壊れる原因となる強制変換の問題が発生する可能性があります。サブVIに入ったFPGAインタフェースリファレンス入力と同じ要素が、同サブVI出力から確実に出力されるようにするために、以下のオプションがあります。

  • 入力のワイヤを発呼者VIからのリファレンスに分岐します。
  • サブVIの入力リファレンスを出力リファレンスに直接配線します。


この記事は役に立ちましたか。

役に立たなかった