インテルのみ表示可能 — GUID: mwh1452708878224
Ixiasoft
クロック・イネーブル・マルチサイクル
レジスターのイネーブルされたポートに基づいて、クロックがイネーブルされたマルチサイクルを使用してマルチサイクルを指定することができます。たとえば、次の図はレジスターのdin_a_reg[7..0]、din_b_reg[7..0]、din_x_reg[7..0]、din_y_reg[7..0]、a_times_b、およびx_times_yに対して登録された有効な信号を使用する目的でレジスターenable_regが使用されている単純な回路を表しています。
enable_regレジスターは、レジスターのクロック周期の2倍のイネーブルパルスを生成します。したがって、正しい解析を行うためには、マルチサイクル例外を適用する必要があります。enable_regレジスターによって供給されるイネーブル駆動レジスターに対してマルチサイクル・セットアップ2とマルチサイクル・ホールド1を適用する必要があります。このマルチサイクル例外は、デスティネーション・レジスターがenable_regによって制御されているレジスター間パスにもに適用されます。すべてのイネーブル駆動レジスターにset_multicycle_path例外を適用することで、これを達成することができます。これは、すべてのイネーブル駆動レジスターを指定しなければいけないため、時間のかかる作業となります。また、set_multicycle_pathとget_fanoutsの組み合わせを使用することも可能です。
図 18. クロック・イネーブル・マルチサイクル・ホールド
クロック・イネーブル・マルチサイクル制約
#Setup multicycle of 2 to enabled driven destination registers
set_multicycle_path 2 -to [get_fanouts [get_pins enable_reg|q] \
-through [get_pins -hierarchical *|ena]] -end -setup
set_multicycle_path例外のターゲットは、レジスターのイネーブルポートを供給するenable_regレジスターのすべてのファンアウトに制限されています。
[get_fanouts [get_pins enable_reg|q] -through [get_pins -hierarchical *|ena]]
セットアップとホールドの関係は、enable_regレジスターで開始し、2と1のいずれかのイネーブル駆動レジスターで終了します。