こんにちは。マクニカでインテル® 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 をクリックします。

Article header library 127301 pic01  1
図1-1 IP Catalog で ALTPLL を選択

ALTPLL を生成するフォルダーパス、ALTPLL に付ける名前、生成する言語(VHDL or Verilog)を指定して、OK をクリックします。

生成先は、プロジェクトの作業フォルダーか、その下位フォルダーに生成することをお勧めします。

Article header library 127301 pic02  1
図1-2 PLL IP を生成するディレクトリと名前を指定

ALTPLL のパラメーター設定ウィンドウが起動します。

ここで詳細なドキュメントや各設定項目の説明を見たい場合は、Documentation をクリックしてください。

Article header library 127301 pic03  2
図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

 

Article header library 127301 pic04  1
図1-4 ALTPLL 設定ウィンドウ-General/Modes

Inputs/Lock

非同期リセット信号や PLL ロック信号などの ALTPLL のオプション信号の設定を行います。

Article header library 127301 pic05  1
図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)

 

Article header library 127301 pic06  1
図1-6 ALTPLL 設定ウィンドウ-clk c0 タブ
Article header library 127301 pic07  1
図1-7 ALTPLL 設定ウィンドウ-clk c1 タブ

EDA タブ

シミュレーション時に必要なライブラリー名が表示されますので、メモしておきましょう。

Article header library 127301 pic08  1
図1-8 ALTPLL 設定ウィンドウ-EDA タブ

Summary タブ

ALTPLL 生成時に自動生成させるファイルを指定します。

Article header library 127301 pic09  1
図1-9 ALTPLL 設定ウィンドウ-Summary タブ

 

 

各種設定を終えたら Finish をクリックし、IP を生成します。

Article header library 127301 pic10  1
図1-10  PLL IP 関連ファイルを自動でプロジェクトに追加

"Generation Successful" を確認後、Exit をクリックすると、下図のウィンドウが表示されます。

生成した IP デザインを、現在開いているプロジェクトへ追加登録する場合は、Yes をクリックしてください。(No をクリックした場合は、手動で追加設定してください。)



これで、ALTPLL の生成が完了しました。

みなさんが設計中のユーザー回路と接続して、論理設計を進めましょう。

もし、ALTPLL のパラメーター設定を変更する場合は、こちらの FAQ をご覧ください。

【FAQ】 IP 編集画面の起動方法

必要な個所を編集したら、再度 ALTPLL を生成してください。

2. ユーザー回路との接続

ALTPLL が生成されたら、ユーザーロジックと接続します。

Verilog-HDL や VHDL に慣れていない方は、こちらを参考にしてください。このページ内の下位モジュール(ブロック)の呼び出しをご覧ください。

はじめてみよう!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 を使用したシミュレーション

msim_setup.tcl を編集・使用する方法

 

 

 

以上、鷲宮タローが ALTPLL の作成からシミュレーションまでの手順をご紹介しました。

 

 

おすすめ記事/資料はこちら

PLL の分周 / 逓倍(ていばい)
PLL の応用(スペクトラム拡散で EMI を減らそう!)
PLL のループ帯域幅とスペクトラム拡散のビミョーな関係

インテル® FPGA の PLL

IP 関連の記事や資料 一覧

インテル FPGA の開発フロー / トップページ