MIG 7系列DDR3  – 额外的逻辑电平可能导致某些配置失败时序-Xilinx-AMD社区-FPGA CPLD-ChipDebug

MIG 7系列DDR3 – 额外的逻辑电平可能导致某些配置失败时序

描述

找到版本: v1.6
已解决的版本和其他已知问题:请参阅(Xilinx答复45195)

如果在控制器路径中添加了额外的逻辑级别,则某些内存配置可能会失败。

如果在MIG设计的控制器逻辑中发生时序故障,则应以下列方式修改bank_state.v模块:

原始代码

//注册输出数据pre-fifo几乎满状态并折叠WR状态

reg ofs_wr_rdy = 1’b0;

永远@(posedge clk)

如果(RST)

ofs_wr_rdy <= #TCQ 1’b0;

其他

ofs_wr_rdy <= #TCQ~(phy_mc_data_full &&〜rd_wr_r);

wire ofs_rdy =

~phy_mc_cmd_full &&~phy_mc_ctl_full && ofs_wr_rdy;

//在配置确保后,禁用一个状态的优先级功能

//在刚安装的io配置上转发进度。

reg override_demand_r;

wire override_demand_ns = rnk_config_strobe || rnk_config_kill_rts_col;

always @(posedge clk)override_demand_r <= override_demand_ns;

输出线rts_col;

assign rts_col = ~sending_col &&(demand_ok || override_demand_r)&&

col_cmd_rts && ofs_rdy;

修改代码

//注册ctl_full和cmd_full

reg phy_mc_ctl_full_r = 1’b0;

reg phy_mc_cmd_full_r = 1’b0;

永远@(posedge clk)

如果(rst)开始

phy_mc_ctl_full_r <= #TCQ 1’b0;

phy_mc_cmd_full_r <= #TCQ 1’b0;

结束其他开始

phy_mc_ctl_full_r <= #TCQ phy_mc_ctl_full;

phy_mc_cmd_full_r <= #TCQ phy_mc_cmd_full;

结束

//注册输出数据pre-fifo几乎满状态并折叠WR状态

reg ofs_rdy_r = 1’b0;

永远@(posedge clk)

如果(RST)

ofs_rdy_r <= #TCQ 1’b0;

其他

ofs_rdy_r <= #TCQ~phy_mc_cmd_full_r &&~phy_mc_ctl_full_r &&〜(phy_mc_data_full &&〜rd_wr_r);

//在配置确保后,禁用一个状态的优先级功能

//在刚安装的io配置上转发进度。

reg override_demand_r;

wire override_demand_ns = rnk_config_strobe || rnk_config_kill_rts_col;

always @(posedge clk)override_demand_r <= override_demand_ns;

输出线rts_col

assign rts_col = ~sending_col &&(demand_ok || override_demand_r)&&

col_cmd_rts && ofs_rdy_r;

修订记录
07/25/2012 – 初始版本

请登录后发表评论

    没有回复内容