コンテンツにスキップ

CDC(クロックドメインクロッシング)とは

CDC(クロックドメインクロッシング)(Clock Domain Crossing)とは、異なるクロックで動く回路の間を信号が渡ることです。設計検証では、この境界で不安定な値やデータの取り違えが生じない構造とプロトコルを確認します。

周波数が同じでも位相関係が保証されなければ非同期です。一方、同期用フリップフロップを置くだけでは複数ビットの整合まで保証できません。

CDC(クロックドメインクロッシング)の仕組み

Section titled “CDC(クロックドメインクロッシング)の仕組み”
構造と工程の関係
位相の関係が保証されない境界を渡るFFFF送信側クロック受信側クロック同期段で不安定状態の伝播を抑える対象材料・信号周辺材料
非同期の入力を受信側で取り込みます。同期器は後段へ不安定状態が伝わる確率を下げます。

受信側のクロックが入力の変化と重なると、フリップフロップがメタステーブル状態になることがあります。同期段は、その状態が後段へ伝わる確率を低くするために使います。1

クロックの境界は、RTLの接続だけでは判断できません。クロックの生成、切替え、リセットの関係を制約として与え、非同期経路を抽出します。

構造と工程の関係
複数ビットを別々に同期すると値が混ざるbit 0bit 1取込み時刻バスの整合は転送方式で保つ対象材料・信号周辺材料
各ビットの同期だけでは同じ転送単位を保証できません。データ保持、ハンドシェイク、FIFOなどを組み合わせます。

クロックとリセットを定義し、ドメイン間の経路を抽出します。同期器の構造を確認した後、データ保持やハンドシェイクの条件を検証します。1

パルス幅が短いと受信側で取り逃がすため、パルスの伸長や要求・応答の方式を使います。バスでは各ビットを独立に同期させると値が混ざるので、FIFOや符号化も検討します。

同期器の配置、未同期経路、パルスの捕捉、複数ビットの整合、クロックとリセット制約を確認します。

検証で除外した経路は、その前提が実機でも成り立つことを確かめます。クロック切替えや電源状態によって非同期関係が変わる場合も対象です。

同期段を増やすと不安定状態の伝播を抑えやすくなりますが、遅延が増えます。転送量と待ち時間、回路規模を合わせて方式を選びます。

CDC(クロックドメインクロッシング)は何をする工程ですか?

異なるクロックで動く回路の間を信号が渡ることです。設計検証では、この境界で不安定な値やデータの取り違えが生じない構造とプロトコルを確認します。

どの段階で行いますか?

クロックとリセットを定義し、ドメイン間の経路を抽出します。同期器の構造を確認した後、データ保持やハンドシェイクの条件を検証します。

何を管理しますか?

同期器の配置、未同期経路、パルスの捕捉、複数ビットの整合、クロックとリセット制約を確認します。

  • クロック── 前後の工程と仕組みを調べる
  • RTL ── 前後の工程と仕組みを調べる
1件を表示
  1. 1