UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 19975

7.1i XST - 「WARNING:Xst:2193 - ''file.v'' line xx: Defparam through hierarchy is partially supported and may give incorrect results. It is recommended that you avoid using this construct.」という警告メッセージが表示される

説明

キーワード : Verilog, parameter, passing, local, パラメータ, ローカル

次の例のように defparam が複数の階層にまたがっている場合に複数のインスタンシエーションが変更されると、XST で defparam が伝搬されず、パラメータが修正されません。

module top (...);
:
defparam u1.sub_inst.P1 = 1;
defparam u2.sub_inst.P1 = 2;

my_mod u1 (<port_mapping>);
my_mod u2 (<port_mapping>);
:
endmodule

//------------------------------

module my_mod (...);
SUB_MOD sub_inst (<port_mapping>);
endmodule

//------------------------------

module SUB_MOD (...);
parameter P1 = 0;
:
:
endmodule

//------------------------------

ソリューション

この問題を回避するには、次に示すように、階層の各レベルでパラメータを作成してパラメータを修正します。

module top (...);
:

my_mod #(.mymod_param(1)) u1 (<port_mapping>);
my_mod #(.mymod_param(2)) u2 (<port_mapping>);
:
endmodule

//------------------------------

module my_mod (...);
parameter mymod_param = 0;
SUB_MOD #(.P1(mymod_param)) sub_inst (<port_mapping>);
endmodule

//------------------------------

module SUB_MOD (...);
parameter P1 = 0;
:
:
endmodule

//------------------------------
AR# 19975
日付 01/07/2009
ステータス アーカイブ
種類 一般
このページをブックマークに追加