こんにちは、マス男 です。
前回 『 PLL を精度良く動作させるために(1)』 では、 PLL の位相調整が最適化する配線と、位相調整が補償されない配線があることをご紹介しました。
Cyclone® IV E を例に、Dedicated Pin から直接 PLL をドライブする設計ガイドラインをご紹介します!
以下の 2 点に注意して設計します。

注意点1: 1 本のクロック信号で複数個 PLL をドライブするデザイン

図 1-1 のように1本のクロック信号で複数個 PLL をドライブするデザインは Fitter Report で “Global Clock” になり、Critical Warning が発生する可能性があります。
つまり、前回紹介したとおり、位相調整が補償されなくなります。

図 1-1. 1 本のクロック信号で 4 個の PLL をドライブしたデザイン

図 1-2. 配線アーキテクチャー

図 1-2 より、CLK [8] ピンは、PLL_3 と PLL_2 は直接ドライブできる配線領域がありますが、PLL_1 と PLL_4 は直接ドライブできる配線領域が無いので、Global Control Bock を経由することになります(図 1-3)。

図 1-3. コンパイルレポート PLL Summary の一部

注意点2: クロック信号のピン配置

Global Control Block を経由しないようにデザイン 図 1-1 を、クロック信号と PLL が一対一になるように変更してみました(図 2-1)。
しかし、クロック信号のピン配置によっては Fitter レポートにて “Global Clock” となり、Critical Warning が発生する可能性があります。

図 2-1. クロック信号と PLL を一対一にしたデザイン

■ Global Clock 経由のピン配置 (Critical Warning

図 2-2 のように4本のクロック信号を CLK [8] ~ CLK [11] ピンに配置しました。
CLK [8] ~ CLK [11] ピンは、PLL_3 と PLL_2 は直接ドライブできる配線領域を共有しています。
PLL_1 と PLL_4 は直接ドライブできる配線領域が無いので、Global Control Block を経由することになります(図 2-3)。

図 2-2. ピン配置の様子

図 2-3. コンパイルレポート PLL Summary の一部

■ Dedicated Pin 経由のピン配置 (最適)

図 2-4 のように 4 本のクロック信号を CLK [1] , CLK [8] , CLK [4] , CLK [12] ピンに配置しました。
それぞれ Dedicated Pin から直接 PLL をドライブすることになります(図 2-5)。

図 2-4. ピン配置の様子

図 2-5. コンパイルレポート PLL Summary の一部

■ Dedicated Pin 経由のピン配置 (Warning

ここまでで、「コンパイルレポート PLL Summary の Inclk* signal type 欄が全て “Dedicated Pin” の表示であれば OK !」 と話を進めました。
しかし、レポートが Dedicated Pin にも関わらず、位相調整が補償されない配線が Cyclone IV E にはありました(混乱しますね…)。
Handbook の備考欄 (3) 参照(図 2-6)。

図 2-6. 配線アーキテクチャー

PLL をドライブできる入力は、
 ・ Dedicated Pin
 ・ Global Clock
があります。Dedicated Pin は 直接 PLL をドライブできますが、ピンと PLL の関係により 3 タイプにわけられます。
以下表でまとめました。

位相調整の補償が必要ない場合は、気にせず、PLL をご使用いただけます。
位相調整の補償が必要な場合は、クロック入力ピンと PLL の位置関係をご確認ください。

図 2-7. PLL 間の配線領域とピン配置の関係

CLK [*] ピンと PLL 間の配線領域の関係を考慮したピン配置を行うことが重要だと理解しました。

まとめ

  • PLL による位相調整の補償が必要な場合は、設計対象デバイスの Handbook よりクロック配線アーキテクチャー図を確認し、PLL を直接ドライブできる配線の CLK [*] にピン配置すること。

 

以上、PLL の位相調整を最適化する FPGA 設計をご紹介しました。