インスタンシエーション テンプレートを含むコンフィギュレーション シミュレーション モデル (SIM_CONFIGE2
および SIM_CONFIGE3
) を使用すると、サポートされているコンフィギュレーション インターフェイスをシミュレーションして DONE
ピンが High になるのを確認できます。このモデルは、サポート デバイスがサポートされているコンフィギュレーション インターフェイスのスティミュラスにどのように応答するかを示します。
次の表に、サポートされるインターフェイスとデバイスをリストします。
デバイス | SelectMAP | シリアル | SPI | BPI |
---|---|---|---|---|
7 シリーズおよび AMD Zynq™ 7000 SoC デバイス | 〇 | 〇 | × | × |
UltraScale デバイス | 〇 | 〇 | × | × |
AMD UltraScale+™ デバイス | 〇 | 〇 | × | × |
これらのモデルは、制御信号アクティビティを処理し、ビット ファイルをダウンロードします。CRC
、IDCODE
などの内部レジスタ設定とステータス レジスタが含まれます。同期ワードがデバイスに入力され、スタートアップ シーケンスで処理されるところを監視できます。次の図に、システムをハードウェアからシミュレーション環境にマップする方法を示します。
コンフィギュレーション プロセスは、各デバイスのコンフィギュレーション ユーザー ガイドで説明されています。これらのガイドには、コンフィギュレーション シーケンスおよびコンフィギュレーション インターフェイスに関する情報が記載されています。
システム レベルの記述
コンフィギュレーション モデルを使用すると、ハードウェアが使用可能になる前に、コンフィギュレーション インターフェイスの制御ロジックをテストできます。このモデルはデバイス全体をシミュレーションし、次のシステム レベルで使用されます。
- 適切なワイヤ、制御信号処理、データ入力アライメントを確実にするため、コンフィギュレーション ロジックを制御するためにプロセッサを使用するアプリケーション。
- データ アライメントが正しく実行されるよう CS (SelectMAP チップ セレクト) または CLK 信号を使用してデータ読み込みプロセスを制御するアプリケーション。
- SelectMAP
ABORT
またはReadback
を実行する必要のあるシステム。
config_test_bench.zip ファイルには、SelectMAP ロジックを実行するプロセッサをシミュレーションするサンプル テストベンチが含まれています。これらのテストベンチには、SelectMAP インターフェイスを制御するプロセッサをエミュレートする制御ロジックが含まれ、フル コンフィギュレーション、ABORT、および IDCODE とステータス レジスタの Readback などの機能があります。
このモデルに関連する ZIP ファイルは、AMD アンサー 53632 から入手できます。
シミュレーションされるホスト システムには、ファイルの配布および制御信号管理などの機能が必要です。これらの制御システムは、デバイスのコンフィギュレーション ユーザー ガイドの説明に従って設計する必要があります。
コンフィギュレーション モデルは、BIT ファイルがデバイスに読み込まれる際、コンフィギュレーション プロシージャ中にデバイス内で起きていることも示します。
BIT ファイルのダウンロード中、モデルにより各コマンドが実行され、ハードウェアの変更を反映してレジスタ設定が変更されます。
CRC レジスタで CRC 値が累積されるのを監視できます。また、デバイスがさまざまなコンフィギュレーション ステートを遷移していくときに設定されるステータス レジスタ ビットも示されます。
モデルを使用したデバッグ
各コンフィギュレーション モデルでは、正しいコンフィギュレーションの例が提供されます。デバイス プログラムの問題が発生したときに、デバッグでこの例を参考にすると有益です。
Vivado デバイス プログラマを使用すると、JTAG を介してステータス レジスタを読み出すことができます。レジスタには、デバイスの現在のステータスに関連した情報が含まれるので、デバッグのときに利用できます。ボード上で問題が発生した場合は、Vivado デバイス プログラマでステータス レジスタを読み込むのがデバッグの最初の手順の 1 つです。
ステータス レジスタを読み込んだら、それをシミュレーションにマップし、デバイスのコンフィギュレーション段階を特定できます。
たとえば、データの読み込みが正しく完了すると GHIGH
ビットが High になります。このビットが High になっていない場合、データの読み込みは完了していません。BitGen でセットされ、スタートアップ シーケンスで解放される GTW
、GWE
および DONE
信号も監視できます。
コンフィギュレーション モデルでは、エラー挿入も可能です。問題が発生してデータの読み込みが一時停止されて再開した場合、アクティブな CRC ロジックで問題が検出されます。BIT ファイルに手動で挿入されたビット フリップも検出され、このエラーがデバイスで処理されるのと同様に処理されます。
サポートされる機能
デバイス別のコンフィギュレーション ユーザー ガイドには、各コンフィギュレーション インターフェイスとの通信にサポートされる方法が示されています。次の表に、コンフィギュレーション ユーザー ガイドで説明される機能の中で、サポートされているものを示します。
SIM_CONFIGE2
モデルには、次のような特徴があります。
- コンフィギュレーション データのリードバックはサポートされません。
- CRC 値は計算されますが、供給されるコンフィギュレーション データは格納されません。
- デバイスに対して有効なコマンド シーケンスおよび信号処理が提供されていることを確認するため、特定のレジスタのみでのリードバックが可能です。
- リードバック データ ファイルを生成するためのモデルではありません。
表 2. モデルをサポートするスレーブ SelectMAP およびシリアルの機能 スレーブ SelectMAP およびシリアルの機能 サポートあり マスター モード なし デイジー チェーン - スレーブ パラレル デイジー チェーン なし SelectMAP データ読み込み あり 連続 SelectMAP データ読み込み あり 非連続 SelectMAP データ読み込み あり SelectMAP ABORT
あり SelectMAP リコンフィギュレーション なし SelectMAP データ順序付け あり リコンフィギュレーションおよびマルチブート なし コンフィギュレーション CRC - コンフィギュレーション中の CRC チェック あり コンフィギュレーション CRC - コンフィギュレーション後の CRC なし