このチュートリアルでは、Vivado 統合設計環境 (IDE) からビヘイビアー、論理、タイミング シミュレーションを実行する目的で AMD Vivado™ シミュレータを使用するデザイン フローを説明します。
重要: チュートリアル ファイルは、Windows 環境で Vivado シミュレータを実行するように設定されています。Linux OS でこのチュートリアルを実行するには、ファイルを一部変更する必要がある場合があります。
Vivado シミュレータは、プロジェクト モード (Vivado デザイン プロジェクトを使用してデザイン ソースおよびデザイン フローを管理) および非プロジェクト モード (デザインを直接管理) の両方で実行可能です。プロジェクト モードおよび非プロジェクト モードの詳細は、 『Vivado Design Suite ユーザー ガイド: デザイン フローの概要』 (UG892) を参照してください。
次の図は、チュートリアル デザインのブロック図です。
図 1. チュートリアル デザイン
このチュートリアル デザインは次のブロックで構成されています。
- 高、中、低の周波数の正弦波、および振幅正弦波を生成する Sine Wave Generator (sinegen.vhd)。
- 低、中、高の周波数波を生成する DDS Compiler: (sine_low.vhd、sine_mid.vhd、および sine_high.vhd)。
- 4 つの正弦波の中から 1 つを選択する有限ステート マシン (FSM) (fsm.vhd)。
- Sine Wave Selector の未処理のものとデバウンスされたものとを切り替えるデバウンス回路 (debounce.vhd)。
- FSM と Sine Wave Generator をリセットしてから、正弦波選択の結果を多重化させ LED に出力するデザインの最上位モジュール (sinegen_demo.vhd)。
- Sine Wave Generator デザインを開始する単純なテストベンチ (testbench.v):
- デザインのシステム クロック
sys_clk_p
に 200 MHz の入力クロックを生成。 - GPIO ボタン選択を生成。
- Sine Wave Selector の未処理のものとデバウンスされたものとを切り替える。
- デザインのシステム クロック
注記: テストベンチの詳細は、
『効率的なテストベンチの記述』 (XAPP199) を参照してください。