Quartus® II ソフトウェアは、デザインで使用されている PLL のロック範囲をコンパイルレポート - フィッター - リソース使用率 - PLL サマリーで報告します。 Freq 最小ロックと Freq 最大ロックの範囲は、PLL のロック範囲と呼ばれます。 Quartus® II ソフトウェアは、ロック範囲を最大化するために PLL パラメーター値を選択しません。
例えば、PLL MegaWizard® プラグイン・マネージャーで 75MHz を入力クロックとして使用した場合、ロック範囲は 70MHz ~ 90MHz になることがあります。 アプリケーションの場合、50MHz ~ 100MHz の範囲のロックが必要な場合があります。 したがって、この PLL のロック範囲はアプリケーションに十分ではありません。
Quartus® II ソフトウェアの PLL MegaWizard プラグイン・マネージャーを使用すると、入力クロック・スイッチオーバー機能をサポートするデバイスのロック範囲を最大化できます。 このソリューションの目的は、最終デザインでクロック・スイッチオーバーを使用するのではなく、この機能を使用して PLL の有効なパラメーター値を抽出し、次の手順に従ってロック範囲を最大化することです。
1) PLL MegaWizard プラグイン・マネージャーを開きます。
2) ロック範囲のローエンドに必要な周波数を「inclock0 入力の周波数は何ですか?」に入力します。例えば、上記の場合、この値は 50MHz になります。
3) [Advanced (詳細)] PLL パラメーターを使用して出力ファイルを作成する オプションをオンにします。
4) [Create an'inclk1 for a second inclk(2 回目の inclk1)] オプションをオンにして、inclk1 の周波数としてロック範囲のハイエンドを入力します。例えば、上記の場合、この値は 100MHz になります。
5) PLL ウィザードを完了すると、通常は残りのオプションが選択され、出力クロック比率が定義されます。
6) プロジェクトをコンパイルし、PLL の概要に示されているようにロック範囲をメモします。 満足できる場合は、PLL 要約レポートの M 値、N 値、チャージポンプ電流、ループ・フィルター抵抗、ループ・フィルター・キャパシタンスなど、このレポートの PLL のすべての値に注意してください。 また、PLL 使用状況レポートに示されているように、各出力クロックの高 / 低および偶数または奇数の値に注意してください。
7) PLL ウィザードを開き、[Create an'inclk1' for a second inclk 」オプションをオフにします。 [完了] をクリックして PLL ラッパーファイルを更新します。
8) PLL ラッパー・ファイルを開きます。 高度なパラメーターを使用する場合、PLL パラメーターをコードに直接入力できます。 ラッパーファイルが Verilog の場合は、defparam セクションに移動します。 ラッパー・ファイルが VHDL の場合は、汎用マップ・セクションにアクセスします。手順 6 に記載されているパラメーターのすべての値を変更します。 変更を保存します。
9) プロジェクトをコンパイルします。 最終的には、希望のロック範囲を持つ PLL を使用する必要があります。
10) ロック範囲が入力周波数に近すぎて、例えばローエンドが 50MHz で 50MHz の入力クロックを使用する場合、入力クロックにジッターがある場合や 50MHz 未満の周波数ドリフトがある場合、PLL がロックを維持できない場合があります。 ウィザードで inclock0 および inclock1 の周波数に少しガードバンドを割り当てることがあります。 この例では、45MHz と 105MHz を入力することで、ターゲットのロック範囲 50MHz から 100MHz が PLL ロック範囲内に入る可能性があります。
Quartus® II ソフトウェアがこの手順を使用して希望のロック範囲を実装できない場合、PLL MegaWizard プラグイン・マネージャーにエラーが表示されます。 その場合、必要な入力クロック周波数範囲をサポートするために、PLL リコンフィグレーションなどのその他のオプションを調べなければなりません。