This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6657 DDR初始化



在C6657自制板上跑DDR的初始化,上电第一次加载DDR初始化正常通过,不掉电再次debug的话DDR初始化就会报错,STATUS=0x64,提示leveling time out。

现在发现在C6657_EVM_DDR_Init(DDR_Clock_MHz, ecc_cfg)函数中子函数KeyStone_DDR_latch_leveling_configuration之后加一段13us延时,即使不掉电DDR初始化也可以通过。

void KeyStone_DDR_latch_leveling_configuration ()
{
/*the PHY_RESET is pulsed (0 -> 1 -> 0) to latch
leveling configuration values into the PHY logic.*/
gpDDR_regs->DDR_PHY_CTRL_1 &= ~(0x00008000);
gpDDR_regs->DDR_PHY_CTRL_1 |= (0x00008000);
gpDDR_regs->DDR_PHY_CTRL_1 &= ~(0x00008000);
}

 TSC_delay_us(13);

请教一下这可能是什么原因。