FPGA VIをデバッグする
- 更新日2025-03-06
- 4分で読める
LabVIEWは、FPGA VIのすべてまたは一部をテストし、デバッグする複数の方法を提供します。検証とデバッグに使用する実行モードを決める際には、以下の表を参照してください。
実行モード | 機能的パフォーマンスを検証する | タイミングを検証する | HDL IPの統合を検証する | 単体テストに適している | コンポーネントテストに適している | システムテストに適している |
---|---|---|---|---|---|---|
Windows PC | | | ||||
シミュレーションモード | | | ||||
FPGAターゲット | | | | | | |
サードパーティシミュレーション | | | | |
ユニットレベルとコンポーネントレベルで詳細なデバッグと検証を実行できれば、システムレベルでの検証作業が少なくなります。ユニット、コンポーネント、システムを特定するためのガイドラインは、以下のセクションを参照してください。
ユニット
ユニットは、ビルドできるIPの最も基本的なレベルです。特定の処理関数またはアルゴリズムにマッピングされるため、これよりも小さい機能単位として分割し、テストする意味がありません。ユニットと見なされるコードは、以下の特性を1つ以上備えています。
- I/O、データ通信、ターゲットリソースは含まれない。
- 並列で実行されていたり、異なるレートで実行されている複数のループがない。
- 既知の入力を指定して、期待される結果をテストすることができる。
- 明示的な特定の時間の経過または制御に依存しない。
- 設計の他の部分で再利用できるサブVIとして呼び出すことができる。
コンポーネント
コンポーネントはもっと複雑な論理の集まりで、システムのタイミングに依存します。コンポーネントはモジュール単位であり、通常、達成すべき明確なタスクまたは目標を持っています。FPGA VIは通常、複数のコンポーネントに分割することができます。このレベルの検証では、システムに組み込まれたコンポーネントが、予想どおりに相互作用することを確認します。システム全体がアセンブルされるまで待つことなく、サブコンポーネントがI/OまたはホストVIと適切に相互作用しているかどうかも確認します。
システム
システムレベルは、最上位のFPGA VIに加え、CLIPを通じてインポートされた追加のHDL IPで表される、最上位のコンポーネントです。システムには、複数のWhileループか、またはシングルサイクルタイミングループが含まれているのが普通です。システムインタフェースはホストアプリケーションに接することになるので、検証テストは本質的に、ホストアプリケーションを実行したり、ホストアプリケーションを含める場合に非常に似たものとなります。システムレベルで検証を行うには、ホストインタフェースAPIを使用するだけでなく、すべての実際のI/O信号をシステムに接続する必要があります。