For the DDR2 SDRAM "ODT Setting" in the configuration window of mpmc or "C_MEM_ODT_TYPE" in MHS, I can select from "Disabled", 75Ohm, 150Ohm, 50Ohm.
In testing, the ODT setting is implemented incorrectly; the 75Ohm and 150Ohm settings are switched.
How do I resolve this issue?
This issue is caused by an incorrect mapping in verilog module "s6_phy_top.v":
localparam P_MEM_DDR2_RTT = (C_MEM_ODT_TYPE == 0) ? "OFF" :
(C_MEM_ODT_TYPE == 1) ? "150OHMS" :
(C_MEM_ODT_TYPE == 2) ? "75OHMS" :
"50OHMS";
Which should be set as:
localparam P_MEM_DDR2_RTT = (C_MEM_ODT_TYPE == 0) ? "OFF" :
(C_MEM_ODT_TYPE == 1) ? "75OHMS" :
(C_MEM_ODT_TYPE == 2) ? "150OHMS" :
"50OHMS";
To work around this issue, set 75Ohm for 150Ohm and 150Ohm for 75Ohm as the desired setting.
This issue is scheduled to be fixed in EDK 13.1 and later.