同期化回路とは

どうきかかいろ

非同期の信号を受け側のクロックにそろえる回路で、シンクロナイザとも呼ぶ。2段のフリップフロップを直列につなぐ構成が基本で、1段目がメタステーブルになっても次のエッジまでに収まる確率を高める。

「同期化回路」は、3分野の14問の練習問題に出てきます(タイミング解析とCDC, 論理回路, LSI設計フロー・EDAなど)。

2段フリップフロップの同期化回路 送り側クロックのドメイン 受け側クロックのドメイン 送り側FF FF1 FF2 非同期 直結 同期化された出力 送り側クロック 受け側クロック 不定になりうる 受け側クロック FF1の出力 不定 FF2の出力 約1周期 1段目が不定になっても、次のエッジまでに収まればFF2は正しい値になる
2段フリップフロップの同期化回路 · 図解集で見る

この用語の分野: タイミング解析とCDC

同期化回路の練習問題に挑戦

2つのクロックドメインの間の経路で、同期化回路が必要になるのはどれか。

  1. A同じPLLから作った 400 MHz のクロックと、それを2分周した 200 MHz のクロックどうし
  2. B同じクロックを、クロックツリーで2つの領域に分けて配ったクロックどうし
  3. C別々の発振器から作られ、周波数や位相の関係が決まっていないクロックどうし
答えと解説を見る

正解:C. 別々の発振器から作られ、周波数や位相の関係が決まっていないクロックどうし

同じ源から作られ、周波数の比と位相の関係が決まっているクロックどうしは同期クロックで、STAでセットアップとホールドを確認すれば通常の経路と同じように扱えます。別々の発振器のクロックは、どちらも 100 MHz と書かれていても実際にはわずかに周波数がずれていて、エッジの位置関係が時間とともに変わるので、いずれ必ずセットアップやホールドを満たせない瞬間が来ます。このような非同期のクロックの間はSTAでは保証できないので、同期化回路が必要です。

2段フリップフロップの同期化回路を3段に増やしたときの、メタステーブルによる故障の平均間隔(MTBF)の変化として正しいものはどれか。

  1. Aメタステーブルが収まるのに使える時間が約1周期増え、MTBFは指数関数的に長くなる
  2. B段数に比例して、MTBFが1.5倍になる
  3. Cメタステーブルの起こりやすさは入力側で決まるので、MTBFは変わらない
答えと解説を見る

正解:A. メタステーブルが収まるのに使える時間が約1周期増え、MTBFは指数関数的に長くなる

同期化回路のMTBFは、おおよそ MTBF = e^(t_r/τ) ÷ (T_0 × f_clk × f_data) で表されます。t_r はメタステーブルが収まるのに使える時間、τ と T_0 はフリップフロップの特性で決まる定数です。段を1つ増やすと t_r が約1周期延びます。例えば τ = 20 ps で t_r が 1 ns 増えれば、MTBFは e^50 倍、つまり10の21乗倍以上に延びます。1段目がメタステーブルになる確率は変わりませんが、その先へ伝わる前に収まる確率が大きく上がるのです。

解説の中の「同期化回路」

「同期化回路」が出てくる問題(14問)

  1. 2つのクロックドメインの間の経路で、同期化回路が必要になるのはどれか。
  2. 2段フリップフロップの同期化回路を3段に増やしたときの、メタステーブルによる故障の平均間隔(MTBF)の変化として正しいものはどれか。
  3. 同期化回路の受け側のクロック周波数を上げると、MTBFが短くなる。その理由として正しいものはどれか。
  4. 2段フリップフロップの同期化回路で、1段目と2段目の間についての注意として正しいものはどれか。
  5. 送り側のクロックドメインで、組み合わせ回路の出力を直接、受け側の同期化回路に入れてはいけない理由として正しいものはどれか。
  6. 4ビットのデータの各ビットに、それぞれ2段の同期化回路を付けて別のクロックドメインに渡した。データが 0111 から 1000 に変わるときに起こりうる問題として正しいものはどれか。
  7. 500 MHz のクロックドメインで1サイクル(2 ns)だけ1になるパルスを、100 MHz のドメインに2段同期化回路で渡した。起こりうる問題として正しいものはどれか。
  8. 400 MHz のドメインから 100 MHz のドメインへ、レベルの信号を同期化回路で確実に渡すため、信号の幅を受け側のクロック周期の1.5倍以上にしたい。送り側のクロックで最小何サイクルの幅にすればよいか。
  9. 同じ送り側のドメインから来た2本の制御信号を、それぞれ別の2段同期化回路で受け、受け側でANDをとって使う設計の問題点として正しいものはどれか。
  10. 非同期の信号をフリップフロップで受けたときに、セットアップ時間やホールド時間を満たせず、出力が一時的に0とも1とも定まらなくなる状態を何と呼ぶか。
  11. 異なるクロックで動く回路どうしの間で信号を受け渡す部分に、同期化の回路が正しく入っているかを専用のツールで確認する検証を何と呼ぶか。
  12. reqとackを使う4相ハンドシェイクで、データを1つ渡すときの信号の順序として正しいものはどれか。
  13. 非同期FIFOで、書き込みポインタと読み出しポインタをグレイコードに変換してから相手のドメインに同期化する理由として正しいものはどれか。
  14. STAとRTLシミュレーションを行っていても、CDC検証ツールによる確認が必要とされる理由として正しいものはどれか。

タイミング解析とCDCの参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

関連する用語

メタステーブル フリップフロップ クロックドメイン MTBF(平均故障間隔) ハンドシェイク 組み合わせ回路 グレイコード 非同期FIFO STA(静的タイミング解析) グリッチ

用語集の一覧へ