AR# 6431

FPGA Express 3.3:dont_touch 属性が使用可能になりました。

説明

キーワード:FPGA, Express, Foundation, keep, signal, preserve, attribute, dont_touch, 保存, 信号, 属性

重要度 :標準

概要:
FPGA Express 3.3 で、Synopsys のコンパイラ命令 dont_touch がサポートされるようになりました。この属性は、モジュール、エンティティ、またはインスタンシエートされたセルに設定することができ、合成および最適化の作業中にこれらが変更されないようにします。この属性は、信号には適用できません。

注 :この属性は、合成中に行われる最適化のみに使用され、配置配線ツールには渡されません。

この属性の設定方法には以下の 3 通りがあります。

ソリューション

1

FPGA Express の Constraints Editor から dont_touch を設定します。

最適化される前の構造を右クリックし、[Edit Constraints] を選択します。[Moduleds] タブに、[Dont Touch] と名付けられた列が表示され、以下のオプションから目的のものを選択します。

TRUE = このインスタンスを最適化しない
FALSE = このインスタンスを最適化する (デフォルト)
INHERIT = このインスタンスは、そのモジュール/エンティティの設定を継承する。

[all instances] は属性をモジュール/エンティティに使用する際に使用します。この属性が、そのモジュール/エンティティ以下のすべてのインスタンスに対して有効になります。

2

dont_touch を HDL コードに直接設定します。

以下の Verilog コメントを、モジュール宣言またはセルのインスタンシエーションのすぐ後に追加します。

/* synopsys attribute fpga_dont_touch "true" */
または

アーキテクチャで、VHDL 属性宣言を begin キーワードの前に追加します。

attribute fpga_dont_touch :string;
attribute fpga_dont_touch of <instance> :label is "true";
<instance> は、セルのインスタンシエーションを表します。

FPGA Express で属性を渡す方法については、 <a href=4392.htm>(ザイリンクス アンサー #4392)</a> を参照してください。.

3

dont_touch を fe_shell TCL スクリプトに設定します。

set_module_fpga_dont_touch <option> [-all] <module_list>


<option> は TRUE、FALSE、または INHERIT のいずれかです。

[-all] は、オプションが <module_list> で指定されているモジュールのインスタンスすべてに設定されることを示します。

例:

set_module_fpga_dont_touch true -all top/U1
AR# 6431
日付 08/11/2003
ステータス アーカイブ
種類 一般