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

MIG v3.0-3.5、Spartan-6 MCB - VHDL バージョンのリセット ロジックが間違っている

説明

MIG 3.5 およびそれ以前のバージョンでは、Spartan-6 FPGA コントローラの mcb_soft_calibration.vhd モジュールにあるリセット ロジックが間違っています。Verilog バージョンにはこの問題は見られません。MIG 3.6 およびそれ以降のバージョンでは、コアの VHDL および Verilog バージョンの両方で正しいリセット ロジックが含まれています。

ソリューション

MIG rev 3.5 およびそれ以前のバージョンでは、mcb_soft_calibration.vhd にあるリセット レジスタ RST_reg のロジックが間違っています。変更する必要のある VHDL コードのセクションは次のとおりです。

元の VHDL コード :
process (UI_CLK, non_violating_rst) begin
if (non_violating_rst = '1') then
RST_reg <= '1'; -- STATE and MCB_SYSRST will both be reset if you lose lock when the device is not in SUSPEND
elsif (UI_CLK'event and UI_CLK = '1') then
if (WAIT_200us_COUNTER(15) = '0') then
RST_reg <= '0'; ---------------------------incorrectly assigns '0' to RST_reg----------------------------
else
RST_reg <= Rst_condition2 or rst_tmp; -- insures RST_reg is at least h10 pulses long
end if;
end if;
end process;


変更した VHDL コード :
process (UI_CLK, non_violating_rst) begin
if (non_violating_rst = '1') then
RST_reg <= '1'; -- STATE and MCB_SYSRST will both be reset if you lose lock when the device is not in SUSPEND
elsif (UI_CLK'event and UI_CLK = '1') then
if (WAIT_200us_COUNTER(15) = '0') then
RST_reg <= '1';
else
RST_reg <= Rst_condition2 or rst_tmp; -- insures RST_reg is at least h10 pulses long
end if;
end if;
end process;

AR# 38864
作成日 11/05/2010
最終更新日 12/15/2012
ステータス アクティブ
タイプ 一般
デバイス
  • Spartan-6 LX
  • Spartan-6 LXT
IP
  • MIG