大家好、
我的客户想要确认 SDK8.5的 SBL。
他们尝试使用 SDK8.5的 SBL 来启用 DDR 的 ECC 功能。
"0x80000000至0xFFFFFFFFF"(2048MB)用于 DDR、1/9 DDR 大小用于 ECC 区域。
他们希望将"0xF1C00000设置为0xFFFFFFFFFFF"(228MB)作为 ECC 区域。
在本例中,您能否告诉我如何 使用 Board_init ()-> Board_DDRInit ()-> EMIF_ConfigureECC ()-> CSL_emifConfig ()-> CSL_emifConfig ()-> CSL_emifIsEmifConfigValid ()来配置"board_init.c"的 ECC 功能?
1.应该为"DDRSS_ECC_R0_STR_addr_REG"和"DDRSS_ECC_R0_END_addr_REG"设置哪些具体值?
默认情况下、会设置以下设置。
DDRSS_ECC_R0_STR_addr_REG = 0x0
DDRSS_ECC_R0_END_ADDR_REG = 0x71C7
由于1820MB 用作 DDR 区域,设置是否如下?
DDRSS_ECC_R0_STR_addr_REG = 0x0
DDRSS_ECC_R0_END_ADDR_REG = 0x71C0
2.如果在上述设置中启用 ECC 功能,如果向地址"0x80000000"写入"0x11111111",则像"0x00000001"这样的 ECC 位将在地址"0xF1C00000"处创建。 是否正确?
我的客户想验证是否成功生成 ECC 位。
期待您的反馈。
提前感谢您。
此致、
肯利