由于SoC EDS软件版本16.0及更早版本中的问题,在LPDDR2模式下Cyclone®VSoC和Arria®VSoC HPS SDRAM接口上可能会出现数据错误。
FPGA逻辑(非HPS)中的硬或软LPDDR2接口不受影响。
解决/修复方法
要在SoC EDS软件版本16.0及更早版本中解决此问题,请按照以下步骤操作。
此解决方法为LPDDR2模式下的Altera HPS SDRAM控制器手动设置读 – 读和写 – 读周转的悲观值,这可能会降低性能。
1.从HPS Preloader BSP打开以下文件:u-boot-socfpga / arch / arm / cpu / armv7 / socfpga / sdram.c
2.在第1345行(u-boot 2013)之后添加下面的变通方法代码:
COMPARE_FAIL_ACTION
}
}
#万一
/ ***** START workaround设置读取读取和读取写入延迟***** /
debug(“手动配置读写周转延迟\ n”);
register_offset = 0x501c;
/ *读取原始寄存器值* /
reg_value = readl(SOCFPGA_SDR_ADDRESS + register_offset);
reg_value = 0x44400000;
if(sdram_write_verify(register_offset,reg_value)== 1){
status = 1;
COMPARE_FAIL_ACTION
}
/ ***** END解决方法***** /
/ *如果有效,则恢复SDR PHY寄存器* /
if(sdr_phy_reg!= 0xffffffff)
writel(sdr_phy_reg,SOCFPGA_SDR_ADDRESS
3.运行使清洁再生该软件预装,然后接着运行make
此问题计划在SoC EDS软件的未来版本中修复。
没有回复内容