The PI module can be used to perform SDRAM initialization before training instead of the DDR controller. The following steps represent the main actions of the initialization process:
- Set to 0x1 the DDRSS_PI_139[8] PI_DRAM_INIT_EN
bit.
- Enable the PI by setting to 0x1 the DDRSS_PI_0[0]
PI_START bit.
- Enable the DDR controller.
- The PI, DDR controller and PHY core are involved in a process of specific hardware communication between them that does not require software intervention.
- The PI starts the power-up sequence which includes the SDRAM initialization timing, the SDRAM mode register programming and training.
- After completion of the power-up sequence, the PI notifies the DDR controller through the dfi_init_complete signal.
- The DDR controller can now access the SDRAM.