Quartus® Primeプロ・エディションのユーザーガイド: タイミング・アナライザー

ID 683243
日付 4/01/2024
Public
ドキュメント目次

2.3.5.1.4. RTLでのSDCにおける手動スコープ例

RTLでのエンティティー・ベースのSDCファイルのスコープを手動に変更するには、RTL_SDC_FILE ファイルの定義に -no_sdc_promotion パラメーターを含めます。このパラメーターは、コンパイラーが各コレクション・フィルターの前に現在のインスタンスの完全なパスを追加しないようにするものです。

例えば、clk_div_wrapper エンティティーに関連付けられている clk_dic.rtlsdc ファイルのスコープを手動に変更するには、次のように -no_sdc_promotion パラメーターを追加します。

set_global_assignment -name RTL_SDC_FILE clk_dic.rtlsdc -entity clk_div_wrapper \
-library clk_div_wrapper -no_sdc_promotion

コレクション・フィルターのスコープを正確に設定するには、get_entity_current_instance コマンドを使用します。現在のインスタンスへの最上位パスを指定すると、フィルターのスコープ処理が効率的になり、インスタンス境界内の要素に向けられるようになります。

set current_instance [get_entity_current_instance]
create_generated_clock -name ${current_instance}_clk_mux_2 -source \
  [get_ports $current_instance|clk_in] -divide_by 2 [get_ports $current_instance|clk_out]
 
create_generated_clock -name ${current_instance}_clk_mux_1 -source \
[get_ports $current_instance|clk_in] [get_ports $current_instance|clk_out] -add

指定されているRTLエンティティー・ベースSDCファイルで自動スコープが無効になっている場合、SDC File ListレポートではPromoted列に「No」が表示され、この変更が示されます。

図 70. SDC File Listレポート