FPGAオブジェクトを再利用する
- 更新日2025-03-06
- 8分で読める
複数のFPGAターゲットの中からFPGA VIをコピー、切り取り、または貼り付け操作を行い、新しいターゲット特定のFPGA VIのアプリケーションインスタンスを作成することができます。また、複数のFPGAターゲットの中からFPGA I/O項目、FPGAクロック、レジスタ項目、メモリ項目、FIFO、およびハンドシェイク項目をプロジェクトエクスプローラウィンドウでコピー、切り取り、および貼り付けすることもできます。項目のコピーは、選択するFPGAターゲットの下のプロジェクトエクスプローラウィンドウに表示されます。FPGA項目のサポートはFPGAターゲットにより異なります。
さらに、FPGA VIの追加のインスタンスを作成し、LabVIEWプロジェクトにFPGA項目をコピーすることもできます。コピーするプロジェクトを開き、プロジェクトから他のプロジェクトにFPGA項目をコピーまたはドラッグします。
FPGA VIを再利用する
FPGAターゲットがすべてのFPGA I/O項目、FPGAクロック、またはFPGA VIで使用されるFPGA FIFOをサポートする場合、同じまたは異なるクラスの複数のFPGAターゲットの下で同じFPGA VIを使用することができます。FPGAの機能はFPGAターゲットにより異なるため、すべてのFPGAターゲットでFPGA VIインスタンスをコンパイルおよび実行することができるわけではありません。FPGA I/O項目、クロック、またはFIFOを使用するFPGA VIをFPGAターゲットにコピーする場合、FPGA VIで追加の項目をコピーします。それ以外の場合は、FPGA VIの実行ボタンは壊れた状態で表示され、VIをコンパイルおよび実行できません。
FPGA I/O項目を再利用する
複数のFPGAターゲット間でFPGA I/O項目をコピーすることができます。新規FPGAターゲットがFPGA I/O項目を構成したI/Oリソースをサポートしない場合、またはI/Oリソースがすでに使用中の場合は、項目が白い!と一緒にプロジェクトエクスプローラウィンドウの赤い丸の中に表示されます。また、新規FPGAターゲットの下に、サポートされていないFPGA I/O項目を使用するブロックダイアグラムにFPGA I/Oノードが含まれるFPGA VIがある場合、実行ボタンは壊れた状態で表示され、VIのコンパイルや実行はできません。FPGA I/O項目が壊れている場合は、プロジェクトエクスプローラウィンドウでFPGA I/O項目を右クリックし、ショートカットメニューからリソースを選択を選択して、リソースを選択ダイアログボックスを表示します。リソースを選択ダイアログボックスからFPGAターゲットがサポートするI/Oリソースを選択し、OKボタンをクリックします。また、プロジェクトエクスプローラウィンドウでFPGA I/O項目を右クリックして、ショートカットメニューから削除を選択して、プロジェクトから項目を削除することもできます。その後、FPGA I/Oノードを再構成する必要があります。
FPGAクロックを再利用する
複数のFPGAターゲット間でFPGAクロックをコピーすることができます。新しいFPGAターゲットがFPGAクロックのクロックリソースをサポートしていない場合、またはクロックリソースがすでに使用されている場合は、プロジェクトエクスプローラウィンドウで赤い円に白い感嘆符のマーク(!)が表示されます。また、ブロックダイアグラムにシングルサイクルタイミングループを含む新規FPGAターゲットの下のFPGA VIが、サポートされていないFPGAクロックを使用する場合、コード生成エラーウィンドウが表示され、VIをコンパイルおよび実行しようとするとエラーが表示されます。FPGAクロックが壊れている場合、プロジェクトエクスプローラウィンドウでFPGAクロックを右クリックし、ショートカットメニューからプロパティを選択して、FPGAベースクロックプロパティダイアログボックスまたはFPGA派生クロックプロパティダイアログボックスを表示します。FPGAベースクロックをコピーする場合、FPGAベースクロックプロパティダイアログボックスのリソースプルダウンメニューからFPGAターゲットがサポートするクロックリソースを選択することができます。FPGA派生クロックをコピーする場合は、FPGA派生クロックを構成することにより、FPGAターゲットがサポートするクロック構成を選択することができます。また、プロジェクトエクスプローラウィンドウでFPGAクロックを右クリックして、ショートカットメニューから削除を選択して、プロジェクトからFPGAクロックを削除することもできます。その後、FPGAクロックを使用して、シングルサイクルタイミングループを再構成する必要があります。
レジスタ項目を再利用する
複数のFPGAターゲット間でレジスタ項目をコピーすることができます。
FPGAメモリ項目を再利用する
複数のFPGAターゲット間でメモリ項目をコピーすることができます。新規FPGAターゲットがコピーするメモリ項目をサポートしていない場合、コード生成エラーウィンドウにFPGA VIのコンパイルに失敗したことを示すメッセージが表示されます。プロジェクトエクスプローラウィンドウでメモリ項目を右クリックし、ショートカットメニューからプロパティを選択してメモリプロパティダイアログボックスを表示します。その後、メモリ項目を構成して、FPGA VIを再度コンパイルすることができます。また、プロジェクトエクスプローラウィンドウでメモリ項目を右クリックして、ショートカットメニューからプロジェクトから削除を選択して、プロジェクトからメモリ項目を削除することもできます。
FPGA FIFOを再利用する
複数のFPGAターゲット間でFPGA FIFOをコピーすることができます。新規FPGAターゲットがコピーするFPGA FIFOをサポートしない場合、コード生成エラーまたはコンパイルステータスウィンドウにより、FPGA VIのコンパイル時にコンパイルが失敗したことを示すレポートが返されます。プロジェクトエクスプローラウィンドウでFPGA FIFOを右クリックし、ショートカットメニューからプロパティを選択してFIFOプロパティダイアログボックスを表示します。その後、FPGA FIFOを構成して、FPGA VIを再度コンパイルすることができます。また、プロジェクトエクスプローラウィンドウでFPGA FIFOを右クリックして、ショートカットメニューからプロジェクトから削除を選択して、プロジェクトからFPGA FIFOを削除することもできます。
ハンドシェイク項目を再利用する
複数のFPGAターゲット間でハンドシェイク項目をコピーすることができます。
- VI定義ハンドシェイク項目: VI定義ハンドシェイク項目を使用し、再入可能サブVIを作成してリソースの競合を回避します。VI定義ハンドシェイク項目を再入可能なFPGA VIで構成すると、VIのインスタンスごとに独立したハンドシェイク項目のコピーが作成されます。
- ターゲット指定ハンドシェイク項目: ハンドシェイク項目を表示しプロジェクトエクスプローラウィンドウから構成可能にしたい場合は、ターゲット指定ハンドシェイク項目を使用します。ターゲット指定ハンドシェイク項目は、プロジェクトエクスプローラウィンドウの同じターゲットの下のすべてのFPGA VIで使用可能です。
CLIP項目を再利用する
同じCLIPを異なるFPGAターゲット間で使用できます。ただし、プロジェクトエクスプローラウィンドウのターゲット間でCLIP項目をドラッグすることはできません。CLIPを新規ターゲットに追加する必要があります。該当する場合、元のターゲットでI/O項目を関連付けた方法でCLIPに関連付けられたI/O項目を構成する必要もあります。