AR# 36553

MIG v3.5、Spartan-3A DSP DDR SDRAM - Synplicity で合成すると MIG 出力デザインにマップ エラーが発生する

説明

MIG v3.5 Spartan3A-DSP デザインが Synplicity で合成されると、ISE のインプリメンテーションの MAP の段階でエラーが発生します。

このマップ エラーは rst_iob_out コンポーネントが IOB にパックされていないのが原因です。

これは、clk180 信号が tocontroller モジュールで間違って削除されているために発生します。

Spartan-3A DSP DDR デザインで、CAS レイテンシが 2.5 に等しく、合成ツールに Synplicity が選択されているケースのみにこの問題が発生します。

また Verilog と VHDL の両方のデザインで発生します。

XST デザインでは問題がありません。

ソリューション


この問題を回避するには、*controller_0 モジュールで syn_keep 属性に clk180 信号を追加する必要があります。

VHDL での回避策 :
*controller_0.vhd モジュールに次の制約を追加します。

attribute syn_keep : boolean;
attribute syn_keep of clk180 : signal is true;

 
Verilog での回避策 :
*controller_0.v モジュールで次をアップデートします。

既存コード :

generate if(CAS_LAT_VAL == 3'b110) begin : FD_INST
(* IOB = "FORCE" *) FD rst_iob_out
(
.Q(rst_dqs_div_int),
.D(rst_dqs_div_d), .C(~clk)
)/* synthesis syn_useioff = 1 */;


修正後のコード

wire clk180 /* synthesis syn_keep = 1 */;
assign clk180 = ~clk;
generate if(CAS_LAT_VAL == 3'b110) begin : FD_INST
(* IOB = "FORCE" *) FD rst_iob_out
(
.Q(rst_dqs_div_int),
.D(rst_dqs_div_d),
.C(clk180)
)/* synthesis syn_useioff = 1 */;

アンサー レコード リファレンス

マスター アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
36211 MIG v3.5 - ISE Design Suite 12.2 でのリリース ノートおよび既知の問題 N/A N/A
AR# 36553
日付 08/12/2014
ステータス アクティブ
種類 一般
デバイス
IP