インテル® Quartus® Prime タイミング・アナライザー・クックブック

ID 683081
日付 11/21/2017
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

PLLクロック

このセクションでは、derive_pll_clockscreate_clock、およびcreate_generated_clock制約を例として説明します。

方法1 – ベースクロックとPLL出力クロックを自動で作成する

フェーズ・ロック・ループ (PLL) は、 インテル® FPGAでクロックを合成する目的で使用します。適切な解析を実行するためには、すべての出力クロックを制約する必要があります。ALTPLL IPコアは、お客様のデザインの インテル® FPGAにPLLを統合します。

PLLを制約するには、以下の方法を使用します。

  • ベースクロックとPLL出力クロックを自動で作成する。
  • ベースクロックを手動で生成し、PLL出力クロックを自動で作成する。
  • ベースクロックとPLL出力クロックを手動で作成する。

このセクションは、それぞれの方法の利点を記載しています。

図 6. ALTPLL IPコア

この方法では、PLLの入力クロックと出力クロックを自動で作成することが可能です。ALTPLL IPコアで指定されたすべてのPLLパラメーターは、PLLの入力クロックと出力クロックを制約します。PLLの入力クロックと出力クロックを作成する際、PLLパラメーターの変更を追跡したり、正しい値を指定したりする必要はありません。

すべての入力と出力を自動的に制限するには、-create_base_clocksオプションのderive_pll_clocksコマンドを使用します。タイミング・アナライザーは、PLLのIPカタログのインスタンシエーションに基づいて正しい設定を決定します。

PLLベースクロックを自動で制約する

derive_pll_clocks -create_base_clocks

方法2 – ベースクロックを手動で生成し、PLL出力クロックを自動で作成する

この方法では、PLLの入力クロックを手動で制限し、タイミング・アナライザーが自動的にPLLの出力クロックを制限することが可能です。さらに、ALTPLL IPコアで指定された入力クロック周波数の代わりに、別の入力クロック周波数を指定することも可能です。ALTPLL IPコアは、指定されたパラメーターでPLL出力クロックを自動的に作成します。同じPLL出力クロック・パラメーターを維持しながら、異なる入力クロック周波数を試すことも可能です。

注: 指定した入力クロック周波数が、現在設定されているPLLと互換性があることを確認してください。

この方法は、derive_pll_clocksコマンドを使用してPLLに対して入力クロックを手動で作成することが可能です。

PLLベースクロックを手動で制約する

create_clock -period 10.000 -name clk [get_ports {clk}]
derive_pll_clocks

方法3 – ベースクロックとPLL出力クロックを手動で作成する

この方法では、PLLの入力クロックと出力クロックを手動で制限することが可能です。すべてのPLLパラメーターは指定されています。パラメーターの値はALTPLL IPコアで指定された値とは別の値を設定することが可能です。加えて、さまざまなPLL入出力周波数とパラメーターを試すことができます。

この方法は、create_clockコマンドとcreate_generate_clockコマンドを組み合わせて使用することができます。

PLL出力クロックとベースクロックを手動で制約する

create_clock -period 10.000 -name clk [get_ports {clk}]
create_generated_clock \
	-name PLL_C0 \
	-source [get_pins {PLL|altpll_component|pll|inclk[0]}] \
	[get_pins {PLL|altpll_component|pll|clk[0]}]
create_generated_clock \
	-name PLL_C1 \
	-multiply_by 2 \
	-source [get_pins {PLL|altpll_component|pll|inclk[0]}] \
	[get_pins {PLL|altpll_component|pll|clk[1]}]