こんにちは。マクニカでインテル® FPGA 製品の技術サポートをしている 鷲宮タロー です。
『インテル® FPGA の PLL』で FPGA の PLL の概要を解説しましたが、ここでは ALTPLL を使用するための手順について解説します。
ALTPLL を使用できる FPGA ファミリーは、あらかじめ『インテル® FPGA の PLL』で確認してください。
内容
1. ALTPLL の生成
2. ユーザー回路との接続
3. シミュレーションで確認
使用するツール
・インテル® Quartus® Prime 開発ソフトウェア
・ModelSim® - Intel® FPGA Edition
ターゲットの FPGA と開発ツールのエディションの関係については、Quartus® Prime のエディション比較 をご覧ください。
開発ソフトウェアのインストールが済んでいない方は、インテル® FPGA の Web サイトから入手できます。詳細は、下記コンテンツをご覧ください。
インテル® Quartus® Prime 開発ソフトウェアおよび ModelSim® - Intel® FPGA Edition のダウンロード方法
インテル® Quartus® Prime 開発ソフトウェアおよび ModelSim® - Intel® FPGA Edition のインストール方法
1. ALTPLL の生成
ここでは、MAX® 10 のプロジェクトを例に説明します。
ターゲットデバイスが MAX® 10 であるプロジェクトを開くか、新規にプロジェクトを作成します。
(Quartus® Prime のプロジェクト作成方法は、Quartus® はじめてガイド - プロジェクトの作成方法 を参照してください。)
Quartus® Prime 内の IP Catalog の検索バーに pll をタイプ入力してください。
すると、ALTPLL を容易に探し出すことができます。
ALTPLL をハイライトした状態で、Add をクリックします。
図1-1 IP Catalog で ALTPLL を選択
ALTPLL を生成するフォルダーパス、ALTPLL に付ける名前、生成する言語(VHDL or Verilog)を指定して、OK をクリックします。
生成先は、プロジェクトの作業フォルダーか、その下位フォルダーに生成することをお勧めします。
図1-2 PLL IP を生成するディレクトリと名前を指定
ALTPLL のパラメーター設定ウィンドウが起動します。
ここで詳細なドキュメントや各設定項目の説明を見たい場合は、Documentation をクリックしてください。
図1-3 ALTPLL パラメーター設定ウィンドウ
各タブ内の主な設定項目の概要を説明します。
各項目の詳細は、先ほど紹介した資料へのリンクからユーザーガイドをご覧ください。
Parameter Settings タブ
General/Modes
リファレンスクロック(入力クロック)の周波数や PLL タイプ、PLL のオペレーション・モードなどの一般的な設定を行います。
ここでは一例として、下表のような設定をすることにします。
What is the frequency of the inclk0 input? (入力クロックの周波数) |
50 (MHz) |
How will the PLL outputs be generated? (PLL のモード) |
In normal mode
|
図1-4 ALTPLL 設定ウィンドウ-General/Modes
Inputs/Lock
非同期リセット信号や PLL ロック信号などの ALTPLL のオプション信号の設定を行います。
図1-5 ALTPLL 設定ウィンドウ-Inputs/Lock タブ
PLL Reconfiguration タブ
PLL のリコンフィギュレーションに関する設定を行います。
今回の例では、リコンフィギュレーションの機能を使用しません。
Output Clocks タブ
PLL で生成するクロックの逓倍比や分周比、位相シフトなどの設定を行います。
また、PLL で生成できるクロックの数は、デバイスに依存します。
今回は、以下のように設定します。
|
clk c0 |
clk c1 |
Clock multiplication factor
|
2 |
2 |
Clock division factor
|
1 |
1 |
Clock phase shift
|
0 (deg) |
90 (deg) |
図1-6 ALTPLL 設定ウィンドウ-clk c0 タブ
図1-7 ALTPLL 設定ウィンドウ-clk c1 タブ
EDA タブ
シミュレーション時に必要なライブラリー名が表示されますので、メモしておきましょう。
図1-8 ALTPLL 設定ウィンドウ-EDA タブ
Summary タブ
ALTPLL 生成時に自動生成させるファイルを指定します。
図1-9 ALTPLL 設定ウィンドウ-Summary タブ
各種設定を終えたら Finish をクリックし、IP を生成します。
図1-10 PLL IP 関連ファイルを自動でプロジェクトに追加
"Generation Successful" を確認後、Exit をクリックすると、下図のウィンドウが表示されます。
生成した IP デザインを、現在開いているプロジェクトへ追加登録する場合は、Yes をクリックしてください。(No をクリックした場合は、手動で追加設定してください。)
これで、ALTPLL の生成が完了しました。
みなさんが設計中のユーザー回路と接続して、論理設計を進めましょう。
もし、ALTPLL のパラメーター設定を変更する場合は、こちらの FAQ をご覧ください。
必要な個所を編集したら、再度 ALTPLL を生成してください。
2. ユーザー回路との接続
ALTPLL が生成されたら、ユーザーロジックと接続します。
Verilog-HDL や VHDL に慣れていない方は、こちらを参考にしてください。このページ内の下位モジュール(ブロック)の呼び出しをご覧ください。
スケマティック (回路図) で設計している方は、IP 生成時に回路図エディター用のシンボルも生成されているので、回路図エディター上でユーザーが作成した IP シンボルを呼び出して接続してください。
ただし、スケマティックは 3rd パーティーツールのシミュレーターで RTL シミュレーションができません。やはり、HDL で設計することをお勧めします。
<裏ワザ>
HDL 記述に慣れていない方は、Quartus® Prime の回路図エディターで回路図から HLD へ変換する機能を使ってみてください。
変換する方法は、こちらを参考にしてください。
Quartus® はじめてガイド - 回路図エディターの使い方
上位階層のデザインファイルの作成が終わったら、
Quartus® Prime のメニューから Processing > Start > Start Analysis & Synthesis を選択し論理合成してみましょう。
正常に完了しましたか?
回路図から変換した場合、プロジェクト内に回路図ファイル(BDF ファイル)と変換後の HDL ファイル(Verilog-HDL なら V ファイル、VHDL なら VHD ファイル)の両方が登録されていると正常に論理合成ができません。(Project メニュー > Add/Remove Files in Project から、使用しないデザインファイルを削除してください。)
3. シミュレーションで確認
それでは、RTL シミュレーションで動作を確認してみましょう。
今回は ModelSim® - Intel® FPGA Edition を使用します。
シミュレーションで確認するにはテストベンチが必要ですが、テストベンチはユーザーが作成します。
テストベンチの作成方法については、こちらをご覧ください。
テストベンチができたら、シミュレーションする準備ができました!
ModelSim® で手動操作でシミュレーションすることもできますが、ここでは便利な方法を紹介します。参考にしてください。
NativeLink 機能を使用したシミュレーション
FPGA のファンクション・シミュレーションは NativeLink で解決しよう
ModelSim® 向けシミュレーション用スクリプトファイルを生成・実行してみよう
msel_setup.tcl を使用したシミュレーション
以上、鷲宮タローが ALTPLL の作成からシミュレーションまでの手順をご紹介しました。
おすすめ記事/資料はこちら