4
バス同期回路のタイミング制約
クロックドメイン間でワイドレジスタを渡すためのバスシンクロナイザー回路があります。 非同期リセットロジックを省略して、簡単な説明を提供します。 データは1クロックで生成されます。更新には多くの(少なくとも1ダース)クロックエッジがあります。 PROCESS (src_clk) BEGIN IF RISING_EDGE(clock) THEN IF computation_done THEN data <= computation; ready_spin <= NOT ready_spin; END IF; END IF; END PROCESS; NRZIエンコードされた新しいデータの制御信号(バス上の有効なワードは制御信号の遷移に対応します)。制御信号は、シンクロナイザーとして機能するDFFチェーンを通過します。 PROCESS (dest_clk) BEGIN IF RISING_EDGE(dest_clk) THEN ready_spin_q3 <= ready_spin_q2; ready_spin_q2 <= ready_spin_q1; ready_spin_q1 <= ready_spin; END IF; END PROCESS; シンクロナイザ回路は短い遅延を導入し、データバスが安定するのに十分な時間を提供します。データバスは、準安定性のリスクなしに直接サンプリングされます。 PROCESS (dest_clk) BEGIN IF …