VIO (Virtual Input/Output) は、内部 FPGA 信号をリアルタイムに監視および駆動できるカスタマイズ可能なコアです。FPGA デザインとインターフェイスするため、入力および出力ポートの数や幅をカスタマイズできます。VIO コアは監視および駆動しているデザインに同期するので、そのデザインに適用されるデザイン クロック制約はすべて、VIO コアのコンポーネントにも適用されます。このコアにランタイムにアクセスするには、AMD Vivado™ ツールのロジック解析機能を使用する必要があります。次の図は、新しい VIO コアのブロック図です。
図 1. VIO ブロック図
この演習では、VIO コアのインスタンシエーションおよびコンフィギュレーションの手順を説明します。また、VIO コアをデザインの I/O に接続する手順も説明します。このコアを使用すると、ハードウェアへアクセスできない場合や、ハードウェアがリモートに存在するときにデザインをデバッグできます。
次のポートが作成されます。
- 4 ビットの PROBE_IN0 ポート 1 つ。有限ステートマシン (FSM) からの 2 ビットの正弦波セレクト出力を監視するのに 2 ビット、ボードのほかの LED 2 つのステートを模倣するのに 2 ビット使用されます。KC705 ボードで表示される LED を模倣するため、ランタイム中はこれらの 4 ビット信号を LED としてコンフィギュレーションします。
- FSM の入力ボタンを駆動するための、2 ビットの PROBE_IN0 ポート 1 つ。1 つのビットはランタイム時に PUSH_BUTTON スイッチ SW3 を模倣するためのトグル スイッチとして使用できるようにし、2 番目のビットは PUSH_BUTTON スイッチ SW6 として使用するよう設定します。