DLPU041G April 2016 – July 2024 DLPC230-Q1 , DLPC230S-Q1
At startup, the host may begin sending commands to control the device once the System Initialized flag has been set in the Short Status. This may be set by either the boot application or the main application. More detail on the Short Status can be found in Section 8.2.110 (Main Application) and Section 7.2.6 (Boot Application). The host should expect to receive NAKs (I2C) or invalid data (SPI) before the System Initialized flag is set. Figure 4-2 demonstrates the actions that the host should take at startup. Section 2.1.4.1 describes a hardware signal that can be used to debug startup timing and progress.
The boot application resides in boot ROM in the DLPC230-Q1. The boot application is executed after DLPC230-Q1 hardware has initialized at startup. The purpose of the boot application is to load the main application from flash and verify its contents during start-up. The boot application execution flow is shown in Figure 4-3. It reads the hardware pin signals described in Section 2.1 to configure the host communication interface and then it determines whether STAY-IN-BOOT has been set. If STAY-IN-BOOT is set, the boot application will enter a loop waiting for host-commanded instructions. If the STAY-IN-BOOT signal is not set, the boot application will load the main application from flash and verify it. If verification fails, an error will be recorded in the Error History and the boot application will enter the wait-for-command loop. If verification succeeds, the main application will be executed.
The main application execution flow is shown in Figure 4-4. The main application begins by initializing clocks and then retrieves the cause of the last reset from hardware. It then executes any non-periodic BISTs that are selected through flash options. The main application will check a flash option to determine whether it should stay in Standby Mode or automatically switch to Display Mode. Once it has entered the desired mode, the auto-initialization batch command set will be run from flash memory. More information on batch command sets can be found in Section 5.2. The auto-initialization batch command set can be empty if there are no commands to be executed during start-up. The auto-initialization batch command set can also change the operating mode. Once the auto-initialization batch command set is complete, the main application will set the System Initialized Short Status flag to indicate that command transactions may be sent from the host.