Intel Agilex® 7 エンベデッド・メモリー・ユーザーガイド

ID 683241
日付 4/10/2023
Public
ドキュメント目次

4.3.11.2. ユーザーでコンフィグレーション可能なタイミング制約

DCFIFO には、マルチビット・グレイコードの非同期クロック・ドメイン・クロッシング (CDC) パスが含まれています。これは、DCFIFO のフィルレベルを導出するものです。ロジックが正しく機能するには、マルチビットの値は常に、ラッチしている特定のクロックエッジで 1 ビットの変化としてサンプリングされる必要があります。

物理的な世界では、フリップフロップのデータとクロックパスの挿入遅延は同じではありません。1 ビット変化のプロパティーが適切に設定されていることを確認することが重要です。これは、フィッターを使用して保証し、タイミング・アナライザーを使用して確認することができます。

タイミング・アナライザーは、次のタイミング制約を DCFIFO に適用します。

  • 書き込みドメインから読み出しドメインに渡るパスは、delayed_wrptr_g レジスターから rs_dgwp レジスターで定義されます。
    • set from_node_list [get_keepers $hier_path|dcfifo_component|auto_generated|delayed_wrptr_g*]
    • set to_node_list [get_keepers $hier_path|dcfifo_component|auto_generated|rs_dgwp|dffpipe*|dffe*]
  • 読み出しドメインから書き込みドメインに渡るパスは、rdptr_g レジスターと ws_dgrp レジスターで定義されます。
    • set from_node_list [get_keepers $hier_path|dcfifo_component|auto_generated|*rdptr_g*]
    • set to_node_list [get_keepers $hier_path|dcfifo_component|auto_generated|ws_dgrp|dffpipe*|dffe*]
  • 書き込みドメインと読み出しドメイン間を渡る上記のパスには、次の割り当てが適用されます。
    • set_max_skew -from $from_node_list -to $to_node_list
      -get_skew_value_from_clock_period src_clock_period -skew_value_multiplier 0.8
    • set_min_delay -from $from_node_list -to $to_node_list -100
    • set_max_delay -from $from_node_list -to $to_node_list 100
    • set_net_delay -from $from_node_list -to $to_node_list -max
      -get_value_from_clock_period dst_clock_period -value_multiplier 0.8
  • クロックドメイン間を渡るネットの次の set_net_delay は、準安定状態に対応するためのものです。
    • set from_node_mstable_list [get_keepers $hier_path|dcfifo_component|auto_generated|ws_dgrp|dffpipe*|dffe*]
      set to_node_mstable_list [get_keepers $hier_path|dcfifo_component|auto_generated|ws_dgrp|dffpipe*|dffe*] 
    • set from_node_mstable_list [get_keepers $hier_path|dcfifo_component|auto_generated|rs_dgwp|dffpipe*|dffe*]
      set to_node_mstable_list [get_keepers $hier_path|dcfifo_component|auto_generated|rs_dgwp|dffpipe*|dffe*]
    • set_net_delay -from $from_node_list -to $to_node_list -max -get_value_from_clock_period dst_clock_period -value_multiplier 0.8

タイミング・アナライザーは、次のタイミング制約を混合幅の DCFIFO に適用します。

  • 書き込みドメインから読み出しドメインに渡るパスは、delayed_wrptr_g レジスターから rs_dgwp レジスターで定義されます。
    • set from_node_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|delayed_wrptr_g*]
      
    • set to_node_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|rs_dgwp|dffpipe*|dffe*]
  • 読み出しドメインから書き込みドメインに渡るパスは、rdptr_g レジスターと ws_dgrp レジスターで定義されます。
    • set from_node_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|*rdptr_g*]
    • set to_node_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|ws_dgrp|dffpipe*|dffe*]
  • 書き込みドメインと読み出しドメイン間を渡る上記のパスには、次の割り当てが適用されます。
    • set_max_skew -from $from_node_list -to $to_node_list -get_skew_value_from_clock_period src_clock_period -skew_value_multiplier 0.8
    • set_min_delay -from $from_node_list -to $to_node_list -100
    • set_max_delay -from $from_node_list -to $to_node_list 100
    • set_net_delay -from $from_node_list -to $to_node_list -max -get_value_from_clock_period dst_clock_period -value_multiplier 0.8
  • クロックドメイン間を渡るネットの次の set_net_delay は、準安定状態に対応するためのものです。
    • set from_node_mstable_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|ws_dgrp|dffpipe*|dffe*]
      set to_node_mstable_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|ws_dgrp|dffpipe*|dffe*] 
    • set from_node_mstable_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|rs_dgwp|dffpipe*|dffe*]
      set to_node_mstable_list [get_keepers $hier_path|dcfifo_mixed_widths_component|auto_generated|rs_dgwp|dffpipe*|dffe*]
    • set_net_delay -from $from_node_list -to $to_node_list -max - get_value_from_clock_period dst_clock_period -value_multiplier 0.8