System Generator には、ハードウェア協調シミュレーションの機能が含まれ、FPGA で実行されるデザインを直接 Simulink® シミュレーションに読み込むことができます。これで、順次ソフトウェアとして Simulink でシミュレーションしていた System Generator デザイン全体 (または一部) を FPGA でパラレルで実行できるようになり、シミュレーション時間を大幅に短縮できます。このフローを使用すると、より大きなデータ セット、またはより多くのテスト ベクターを送信し、インプリメントされたロジックの機能を詳細にテストできます。コードのテスト範囲を広げることで、より多くのコーナー ケースを検証でき、ロジックのデザイン バグを特定するのに役立ちます。Simulink モデルのコンパイル済みの協調シミュレーション ブロックへの入力のデータは、ターゲットの FPGA に送信され、1 つのトランザクションまたはトランザクションのバーストとして、指定クロック サイクル間パラレルに実行され、モデルの協調シミュレーション出力にリードバックされます。
ハードウェア協調シミュレーションには、バーストと非バースト (標準) という 2 つのコンパイル タイプがあります。バースト モードの場合は、パフォーマンスがかなり速くなります。コンパイル済みの協調シミュレーション ターゲットの各入力へのチャネルが開き、データのパケットがそのオープン チャネルに送信され、それに続いて残りの入力のすべてにバーストします。FPGA デザインは、データを取り込むのに十分なクロック サイクル間並列に実行され、ターゲット出力はチャネル化されてバースト読み出しされます。バーストだと FPGA からの大量のデータを送受信するためのオーバーヘッドが少なくて済みます。ただし、バースト モードは、ハードウェア協調シミュレーション ターゲットの MATLAB® スクリプト ベースのハードウェア協調シミュレーションを介してのみサポートされ、Simulink 内では使用されません。大量のデータ ベクターは、協調シミュレーション ターゲットの機能をテストするため、スクリプトにできます。サンプル スクリプトはコンパイルの一部として返されます。非バースト モードの場合はパフォーマンスは低くなりますが、元の System Generator デザイン階層の代わりにコンパイル済みの協調シミュレーション ブロックを Simulink 内で使用できます。
JTAG およびイーサネットの 2 タイプの物理インターフェイスを使用して協調シミュレーションと通信できるよう、ボードはサポートされています。 Vivado® ツールでプロジェクト ターゲットになっている JTAG を認識可能なほとんどのボードで、JTAG ベースの通信が可能です。ザイリンクス パートナーのボードの場合は、各パートナーのウェブサイトからダウンロードし、Vivado Design Suite の一部としてインストールできます。またカスタム ボードも作成できます。詳細は、 『Vivado Design Suite ユーザー ガイド: システム レベル デザイン入力』 (UG895) の付録 A 「ボード インターフェイス ファイル」を参照してください。System Generator でボードを認識させる方法、board.xml ファイルに必要最小限のタグを設定する方法については、System Generator でのボード サポートの指定 を参照してください。
[Hardware Co-Simulation] コンパイル オプションを選択してコンパイルすると、選択した通信インターフェイスに基づいてビットストリームが自動的に作成され、ブロックに関連付けられます。
現在のところ、System Generator では、次のボードでハードウェア協調シミュレーションがサポートされています。
- JTAG ハードウェア協調シミュレーション - ボードで JTAG ハードウェア協調シミュレーションがサポートされている場合、ハードウェア協調シミュレーション用のモデルのコンパイルで説明されている手順に従い、System Generator トークン ダイアログ ボックスの Hardware Co-Simulation で Compilation オプションをイネーブルにします。Hardware Co-Simulation オプションが淡色表示されていて使用できない場合、そのボードでは JTAG ハードウェア協調シミュレーションは実行できません。
このサポートは、次のタイプのボードに適用されます。
- Vivado Design Suite の一部としてインストールされているザイリンクス ボード
- パートナー ウェブサイトからダウンロードして Vivado Design Suite の一部としてインストール可能なパートナー ボード
- カスタム ボード。 『Vivado Design Suite ユーザー ガイド: システム レベル デザイン入力』 (UG895) の付録 A 「ボード インターフェイス ファイル」に説明されているように、Vivado Design Suite で作成できます。
- ポイント ツー ポイント イーサネット ハードウェア協調シミュレーション - 現在のところ、次の 2 つのボードでのみサポートされています。
- Kintex®-7 KC705 評価プラットフォーム
- Virtex®-7 VC707 評価プラットフォーム