关键问题
这个问题会影响 DDR2、DDR3 和 LPDDR2 产品。
当控制器设置 启用配置和 已启用状态寄存器接口 并 启用错误 未启用 ECC 软核逻辑检测和校正逻辑 然而,在 IP 内核中已启用。这导致了其他 资源使用,并可以降低控制器的 fmax。
此问题的变通办法如下:
- 在文本编辑器中,打开文件
alt_mem_ddrx_csr.v
。 - 在靠近 alt_mem_ddrx_csr.v 的顶部, 更改CTL_ECC_CSR_ENABLED = 1 到 CTL_ECC_CSR_ENABLED = 0。
- 在 alt_mem_ddrx_csr.v 中,找到以下代码块:
if (!CTL_ECC_CSR_ENABLED)
begin
assign cfg_enable_ecc = 1\'b1; // default value
assign cfg_enable_auto_corr = 1\'b1; // default value
assign cfg_gen_sbe = 0;
assign cfg_gen_dbe = 0;
assign cfg_enable_intr = 1\'b1; // default value
assign cfg_mask_sbe_intr = 0;
assign cfg_mask_dbe_intr = 0;
assign cfg_clr_intr = 0;
assign cfg_mask_corr_dropped_intr=0;
end
将代码块更改为以下:
if (!CTL_ECC_CSR_ENABLED)
begin
assign cfg_enable_ecc = 1\'b0; // default value
assign cfg_enable_auto_corr = 1\'b0; // default value
assign cfg_gen_sbe = 0;
assign cfg_gen_dbe = 0;
assign cfg_enable_intr = 1\'b0; // default value
assign cfg_mask_sbe_intr = 0;
assign cfg_mask_dbe_intr = 0;
assign cfg_clr_intr = 0;
assign cfg_mask_corr_dropped_intr=0;
end
�
此问题将在将来的版本中修复。