AR# 6214

Virtex - IOB でレジスタ/フリップフロップを使用する方法

説明

Virtex の IOB でのフリップフロップの使用方法を教えてください。

ソリューション


レジスタを IOB に配置する MAP オプションは次のとおりです。

map -pr o
map -pr b

1 番目のオプションでは出力レジスタが、2 番目のオプションでは入力および出力両方のレジスタが配置されます。

Virtex デバイスには、IOB の同期エレメントに対応するプリミティブは今はありません。フリップフロップを IOB に配置するための規則に従っている場合、フリップフロップを自動推論するにはいくつかの方法があります。

IOB に配置されるすべてのフリップフロップのファンアウトは 1 にする必要があります。 これは、出力およびトライステート イネーブルのレジスタに適用されます。たとえば、32 ビットの双方向バスが存在する場合、ファンアウトが 1 になるように、トライステート イネーブル信号を元のデザインで複製する必要があります。

すべてのフリップフロップで同じクロックおよびリセット信号を共有する必要がありますが、クロック イネーブルは独立していてもかまいません。

フリップフロップを IOB の配置するには、IOB=TRUE/FALSE 属性を使用します。これはインスタンシエートされたフリップフロップのインスタンス名に適用されます。

INST <FF_instance_name> IOB = TRUE|FALSE;

または、MAP 指示子を使用して配置することもできます。コマンド ラインを使用する場合は、-pr i/o/b オプション (i : 入力フリップフロップのみ、o : 出力フリップフロップのみ、b : 両方) を使用します。

GUI を使用する場合は、[Optimize and MAP] ウィンドウの [Implementation Options] にあるプルダウン メニューを使用します。

トライステート フリップフロップ

トライステート フリップフロップを IOB に配置するには、HDL コードで MAP -pr o または MAP b オプションを使用します。
AR# 6214
日付 01/25/2013
ステータス アクティブ
種類 一般
デバイス