PLLとクロック生成(位相同期・VCO)
数十MHzの水晶からGHz級のクロックをどう作るのか、その仕組みが原理から分かります。位相比較からVCO・分周・フラクショナルNまで、ループ帯域とジッタの勘所まで一気に押さえられます。
- 1.PLLは位相周波数比較器・チャージポンプ・ループフィルタ・VCO・分周器の負帰還ループで、出力を分周した位相を基準に同期させることで基準周波数のN倍を生成します。
- 2.ロック後は出力周波数=基準×分周比に固定され、ループ帯域より内側ではVCO雑音を、外側では基準・分周器雑音を抑圧する。帯域はジッタとロック時間のトレードオフで決まります。
- 3.整数分周は周波数分解能が基準周波数刻みに制限される。フラクショナルNは分周比を動的に切り替えて小数比を実現し細かい刻みを得るが、量子化雑音をデルタシグマで高域へ追いやって対処します。
なぜ水晶1個からGHzクロックを作れるのか
SoCの内部は数GHzで動きますが、基板に載る水晶振動子はせいぜい数十MHzです。高い周波数の水晶は作りにくく、配線で長距離を引き回せば波形も崩れる。そこで 低い基準クロックを安定源として持ち、チップ内部でそれを逓倍(ていばい、整数や小数倍に増やす)する 方式が普通になりました。この逓倍を担うのが PLL(Phase-Locked Loop, 位相同期ループ) です。
PLLの核心は「周波数を直接合わせるのではなく、位相を合わせる」点にあります。周波数は位相の時間微分なので、位相が常に一定差で追従していれば周波数は厳密に一致します。出力を分周器で割り戻した信号の位相を、基準クロックの位相と比較し、ずれをゼロへ引き込む負帰還を組む ── これだけで出力は基準の整数倍に張り付きます。
出力周波数を fout、基準を fref、分周比を N とすると、ループがロックした状態では分周器出力 fout/N が fref に一致します。両辺を N 倍すれば fout = N × fref。つまり分周比 N を変えるだけで、1個の水晶からさまざまな周波数を合成できます。位相を比較しているのに周波数が掛け算で出るのは、分周が「周波数の割り算」であることの裏返しです。
ループを構成する5つのブロック
典型的な チャージポンプ型PLL は次の5段の負帰還で構成されます。基準位相と帰還位相の差を電流に変え、フィルタで電圧に均し、その電圧でVCOの周波数を動かし、出力を分周して比較器へ戻す ── という一巡です。
PLLのブロック構成(チャージポンプ型)
fref ──►┌─────┐ UP/DN ┌──────────┐ Icp ┌─────────┐ Vctrl ┌─────┐
│ PFD │ ─────► │ Charge │ ───► │ Loop │ ────► │ VCO │ ──► fout
┌────► │ │ │ Pump │ │ Filter │ └──┬──┘
│ └─────┘ └──────────┘ └─────────┘ │
│ │
│ ┌──────────────┐ │
└──────┤ ÷N 分周器 │◄─────────────────────────────────────┘
└──────────────┘ fout/N を fref と比較
位相周波数比較器(PFD, Phase-Frequency Detector) は、基準と帰還のどちらのエッジが先に来たかを判定し、UP/DN の2本のパルスを出します。単なる位相比較器(XOR型など)と違い、PFDは 周波数差も検出 できるのが利点で、ロック前に出力周波数が大きくずれていても正しい方向へ引き込めます。捕捉範囲が広く、デッドゾーンを除けば原理的に360度を超える位相差まで線形に扱えます。
チャージポンプ(charge pump) は、UPパルスの間だけ電流 Icp をフィルタへ流し込み、DNパルスの間だけ吸い出します。位相差に比例した電荷をループフィルタの容量に出し入れすることで、位相差を制御電圧へ変換します。位相差ゼロが平衡点で、平衡では正味の電荷移動がゼロになります。
ループフィルタ(loop filter) は通常、抵抗と容量による2次のローパスです。チャージポンプの電流パルスを平滑して滑らかな制御電圧 Vctrl を作ると同時に、ループの安定性と帯域を決める要となります。抵抗が位相余裕を稼ぐゼロ点を与え、容量がリプルを抑えます。
VCO(Voltage-Controlled Oscillator, 電圧制御発振器) は、Vctrl に応じて発振周波数が変わる発振器です。制御電圧あたりの周波数変化率を VCOゲイン Kvco(単位 Hz/V または rad/s/V)と呼び、ループ特性を支配する重要パラメータです。リングオシレータ型は集積が容易で広帯域、LC型は位相雑音が低い代わりに面積が大きい、という棲み分けがあります。
分周器(÷N) は VCO 出力を 1/N に落として比較器へ戻します。この N が逓倍比そのものです。
チャージポンプ型は、ロック時に位相差を厳密にゼロへ追い込める「タイプ2」のループを自然に作れます。ループ内に積分要素(チャージポンプ+容量)を持つため、定常状態で位相誤差が残らず、周波数オフセットがあっても静的な位相ずれを生みません。アナログ乗算器型に比べ、CMOSプロセスへの集積と低電力化が容易な点も普及を後押ししました。
ループ帯域とロック ── 何が安定性を決めるか
PLLは負帰還系なので、制御理論の言葉で安定性を論じられます。一巡の伝達特性が利得1(0dB)を横切る周波数が ループ帯域 で、そこでの 位相余裕 が安定性を左右します。位相余裕が小さすぎると、ロック過程で制御電圧が行き過ぎて振動的になり、整定が遅れたり最悪は発振します。実用上は位相余裕を45度から60度程度に取るのが定石です。
チャージポンプ型は積分要素を2つ(チャージポンプの電荷蓄積とVCOの位相積分)持つため、何も対策しないと位相が180度遅れて 位相余裕がゼロ未満 になり不安定です。これを救うのがループフィルタの抵抗が作る ゼロ点 で、ループ帯域付近で位相を進ませて余裕を確保します。
ループ帯域とノイズ整形の関係(おおまかな描像)
帯域より内側(低周波): ループが追従 → VCOの位相雑音を抑圧、
基準・分周・PFD雑音がそのまま N 倍されて出る
帯域より外側(高周波): ループが追従できない → VCO自身の位相雑音が支配的
→ 帯域は「VCO雑音を抑える」要求と「基準系雑音を増やさない」要求の
交点で最適化する。広いほどロックは速いがVCO以外の雑音を通しやすい。
ロックに要する時間はおおむねループ帯域の逆数のオーダーで、帯域が広いほど速くロック します。一方で帯域を広げると基準やPFDの雑音が通り抜けやすくなり、後述のジッタが悪化します。ロック時間とジッタはループ帯域を介したトレードオフ であり、用途に応じて落とし所を決めます。
位相雑音とジッタ ── 同じ現象の2つの顔
理想のクロックはスペクトル上で1本の線ですが、実際の出力は中心周波数の裾にノイズが広がります。これを周波数領域で見たのが 位相雑音(phase noise)、時間領域で見たのが ジッタ(jitter) で、両者は同じ揺らぎの表裏です。位相雑音は中心からのオフセット周波数での雑音密度(dBc/Hz)で表し、ジッタはエッジ位置の時間的ばらつきとして表します。
PLLの賢さは、雑音源ごとに伝達特性が違う 点にあります。ループは帯域内で基準系(基準・PFD・チャージポンプ・分周器)の位相を忠実に追うため、これらの雑音は帯域内でローパス的に通り、しかも分周比 N の効果で 位相雑音が20×log(N) だけ持ち上がります。逆にVCOの雑音はループが帯域内で打ち消すためハイパス的に抑圧され、帯域外でのみ顔を出します。
出力位相は基準位相を N 倍に拡大したものなので、基準やPFDが持つ位相揺らぎも同じく N 倍されます。電力比では 20×log(N) dB の悪化です。逓倍比を大きく取るほど基準系雑音が効いてくるため、超高倍率が必要な用途では基準そのものの純度や、複数PLLの縦続(カスケード)で各段の N を抑える設計が使われます。
クロックを受け取る側のフリップフロップにとって、ジッタはクロック周期の有効的な縮小として効き、タイミングマージンを削ります。静的タイミング解析(/semiconductor/static-timing-analysis/)では、このPLL由来のジッタを クロック不確かさ に組み込み、悲観側で検証します。VCO自体の発振素子はリングオシレータならインバータ段の充放電(/semiconductor/cmos-inverter/)で決まり、その遅延揺らぎが位相雑音の源になります。
整数分周とフラクショナルN
分周比 N が整数に限られる 整数分周PLL では、出力は基準周波数の整数倍しか取れません。fout = N × fref なので、周波数の刻み(分解能)は基準周波数 fref そのもの になります。細かい周波数を作りたければ fref を下げるしかありませんが、fref を下げるとループ帯域も下げざるを得ず(帯域は基準周波数より十分低くないと参照スプリアスが乗る)、ロックが遅くVCO雑音も抑えにくくなります。分解能と帯域が綱引きになるのが整数分周の限界です。
これを破るのが フラクショナルN(fractional-N) です。分周比を整数のまま 時間平均で小数 にする ── 例えばNとN+1を切り替え、N+1を選ぶ割合を調整すれば、平均分周比が N.f の任意の小数になります。これにより fref を高く保ったまま、fref より細かい周波数刻みが得られ、帯域を犠牲にせず高分解能を実現できます。
フラクショナルN の平均分周(例)
目標 平均分周比 = 100.25
→ 4回のうち 3回は ÷100、1回は ÷101 を選ぶ
→ 平均 = (100×3 + 101×1) / 4 = 100.25
問題: 分周比が周期ごとに切り替わるため、瞬時の位相差が
鋸歯状に変動し、量子化雑音(フラクショナルスプリアス)となる
ただし分周比を周期ごとに切り替えると、瞬時位相差が周期的にずれ、フラクショナルスプリアス(小数スプリアス) という量子化雑音が出力に現れます。素朴な切り替えだと帯域内に強いスプールが立ち、ジッタを悪化させます。現代のフラクショナルNはこれを デルタシグマ変調器(delta-sigma modulator) で制御し、分周比の選択を擬似ランダム化しつつ量子化雑音を 高い周波数へ追いやる(ノイズシェーピング)。高域に押し上げられた雑音はループフィルタとループ帯域外の特性で減衰するため、帯域内のジッタへの寄与を小さくできます。
| 観点 | 整数分周PLL | フラクショナルN PLL |
|---|---|---|
| 周波数分解能 | 基準周波数 fref 刻み(粗い) | fref より細かい任意刻み |
| 基準周波数 fref | 低くせざるを得ない場合がある | 高く保てる |
| ループ帯域 | fref に縛られ狭くなりがち | 広く取りやすい |
| 主な雑音課題 | 参照スプリアス | フラクショナルスプリアス(量子化雑音) |
| 対策 | フィルタで参照スプリアス抑圧 | デルタシグマでノイズシェーピング |
「PLLは周波数でなく位相を合わせる」「ロック時 fout = N×fref」「ループ帯域内はVCO雑音を抑圧し基準系雑音を通す、帯域外は逆」「基準系雑音は 20×log(N) で持ち上がる」「整数分周の分解能は fref 刻み、フラクショナルNはデルタシグマで小数比と高分解能を両立」── この5点を押さえると大半の問いに答えられます。
まとめ
- PLLは PFD・チャージポンプ・ループフィルタ・VCO・分周器 からなる負帰還ループで、出力を1/Nに分周した位相を基準位相に同期させることで
fout = N × frefを生成する。周波数でなく位相を合わせるのが核心。 - ループ帯域 は安定性(位相余裕は45〜60度が定石)とノイズ整形を決め、帯域内ではVCO雑音を抑圧し基準系雑音を通す。帯域を広げるとロックは速いがジッタが悪化する ── ロック時間とジッタのトレードオフ。
- 位相雑音とジッタ は同じ揺らぎの周波数領域/時間領域表現。基準・PFD・分周器の雑音は
20×log(N)だけ持ち上がってクロックマージンを削る。 - 整数分周 は分解能が基準周波数刻みに制限される。フラクショナルN は分周比を動的に切り替えて小数比を実現し高分解能を得るが、生じる量子化雑音を デルタシグマ変調 で高域へ追いやって帯域内ジッタを抑える。
半導体 Article
PLLとクロック生成(位相同期・VCO)を実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
半導体
比較で見る軸
難易度: advanced / カテゴリ: 半導体 / タグ数: 6
導入後に効く点
ロック後は出力周波数=基準×分周比に固定され、ループ帯域より内側ではVCO雑音を、外側では基準・分周器雑音を抑圧する。帯域はジッタとロック時間のトレードオフで決まります。
先に潰すリスク
用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。
- 難易度
- advanced
- カテゴリ
- 半導体
- タグ数
- 6
判断チェックリスト
- 自社の用途が「半導体 / PLL」に近いか確認する。
- 強みである「PLLは位相周波数比較器・チャージポンプ・ループフィルタ・VCO・分周器の負帰還ループで、出力を分周した位相を基準に同期させることで基準周波数のN倍を生成します。」が本当に評価軸になるか確認する。
- 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。