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# 15411

LogiCORE SPI-4.2 (POS-PHY L4) v5.0 - ダイナミック アラインメントを使用している PL4 コアでバックアノテーション シミュレーションを実行すると不正に動作する

説明

キーワード : back, annotated simulation, Level 4, POS, PHY, dynamic, alignment, バックアノテーション, シミュレーション, ダイナミック, アライメント

重要度 : 重要

概要 :
メモ : このアンサーは、4.2i ソフトウェアのサービス パック 3 で PL4 のダイナミック アライメントを使用している場合にのみ適用されます。5.1i ソフトウェアを使用している場合や、PL4 でスタティック アライメントを使用している場合は、適用されません。

ダイナミック アラインメント モードの PL4 Sink を含むデザインでバックアノテーション シミュレーションを実行すると、シミュレーションが正常に実行されません。 次の問題が発生します。

- RDCLKDIV_GP = RDCLK_GP となっているが、正しくは RDCLKDIV_GP = RDCLK_GP/2
- SnkClk = RDCLK_GP となっているが、正しくは SnkClk = RDCLK_GP/2
- Source サイドは正しくフレーム同期状態になるが (ある時間後に SrcOof が 0 になる)、Sink サイドは常にフレーム同期はずれ状態である (SnkOof は常に 1)。 その結果、RStat が常に 11 になり、 デモ テストベンチがシミュレーションの間中トレーニングを送信し続ける。
- エラーは発生しないが、データがバスを介して送信されない。

ソリューション

ダイナミック アライメントを使用している場合は、ユーザーが作成したバックアノテートされたネットリスト (NGD2VHDL または NGD2VER の出力) を手動で開き、次のパラメータ (太字で示した部分) を追加する必要があります。

VHDL の場合 :

pl4_snk_clk0_DynamicAlign_DynamicAlign_rdclk_dcm0 : X_DCM
generic map(
CLKIN_DIVIDE_BY_2 => true,
DLL_FREQUENCY_MODE => "HIGH",
CLK_FEEDBACK => "1X",
CLKOUT_PHASE_SHIFT => "NONE",
PHASE_SHIFT => 0
)
port map (
CLK90 => NLW_pl4_snk_clk0_DynamicAlign_DynamicAlign_rdclk_dcm0_CLK90_UNCONNECTED,
.....
);

Verilog の場合 :

defparam \pl4_snk_clk0/DynamicAlign_DynamicAlign.rdclk_dcm0 .CLKIN_DIVIDE_BY_2 = "TRUE";
defparam \pl4_snk_clk0/DynamicAlign_DynamicAlign.rdclk_dcm0 .DLL_FREQUENCY_MODE = "HIGH";
defparam \pl4_snk_clk0/DynamicAlign_DynamicAlign.rdclk_dcm0 .CLK_FEEDBACK = "1X";
defparam \pl4_snk_clk0/DynamicAlign_DynamicAlign.rdclk_dcm0 .CLKOUT_PHASE_SHIFT = "NONE";
defparam \pl4_snk_clk0/DynamicAlign_DynamicAlign.rdclk_dcm0 .PHASE_SHIFT = 0;
X_DCM \pl4_snk_clk0/DynamicAlign_DynamicAlign.rdclk_dcm0 (
.CLK90(\NLW_pl4_snk_clk0/DynamicAlign_DynamicAlign.rdclk_dcm0_CLK90_UNCONNECTED ),
......
);

この変更は、NGD2VER または NGD2VHDL を使用してユーザーが作成したバックアノテートされたネットリストでのみ必要です。 component_name/implement/ にあるインプリメント スクリプトを実行し、PAR 後のファイルでバックアノテーションを実行、または PL4 コアを含むユーザー デザインでバックアノテーションを実行する場合は、このアンサーで示した変更を加える必要があります。

これは NGD2VER または NGD2VHDL の問題であり、ISE 5.1i 以降では修正されています。
AR# 15411
日付 05/03/2010
ステータス アーカイブ
種類 一般
このページをブックマークに追加