Boot Time Optimization for Embedded Multiprocessor Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The boot time of automotive safety systems, such as rear view camera systems, is critical for safety and user experience, but existing systems boot all processors before displaying video streams, leading to delays that can impact safety and user experience.
Innovation Solution
The system is optimized by partitioning application software into an early boot stage for displaying video frames and a late boot stage for object detection, with a secondary boot loader managing the boot process to enable rapid boot loading of high-priority components and delayed booting of lower-priority components, using a multiprocessor system-on-a-chip (SOC) with a memory that stores software partitioned into these stages.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all processors are booted before displaying video streams, then system stability and completeness are ensured, but boot time increases leading to safety and user experience issues
Solution Approach 1:
The application software is divided into multiple stages: early boot stage and late boot stage. The early boot stage contains critical functions (video display) that can execute independently, while the late boot stage contains non-critical functions (object detection). This segmentation allows the system to boot and display video without waiting for all processors and functions to be fully initialized, thus reducing boot time while maintaining system stability for critical operations.
Solution Approach 2:
The early boot stage is prepared and executed first, enabling video display functionality before the complete system is fully booted. This preliminary action ensures that safety-critical video output is available immediately, while other functions like object detection are initialized subsequently in the late boot stage.
2Adaptability or versatility
If all processors are booted before displaying video streams, then complete system functionality is available, but boot time increases impacting safety
Solution Approach 1:
The system functionality is segmented into early boot stage (video capture and display) and late boot stage (object detection). This allows the system to provide essential video functionality immediately while progressively enabling additional features, achieving a balance between rapid deployment and complete functionality.
Solution Approach 2:
The system transitions from a static all-or-nothing boot approach to a dynamic staged boot process. The early boot stage dynamically enables video display with minimal initialization, then the system progressively activates additional processors and functions in the late boot stage, adapting the system's operational capability to the boot progress.
3Power
If the system boots all processors simultaneously, then processing power is available for object detection, but boot time increases reducing safety
Solution Approach 1:
Processing power is segmented and allocated in stages: the early boot stage utilizes minimal processing power for video capture and display on essential processors, while the late boot stage activates additional processing power for object detection and other advanced functions. This staged allocation reduces initial boot time while ensuring complete processing power availability eventually.
Data Source
AI summary
An embedded multiprocessor system is provided that includes a multiprocessor system on a chip (SOC), a memory coupled to the multiprocessor SOC, the memory storing application software partitioned into an initial boot stage and at least one additional boot stage, and a secondary boot loader configured to boot load the initial boot stage on at least one processor of the multiprocessor SOC, wherein the initial boot stage begins executing and flow of data from the initial boot stage to the at least one additional boot stage is disabled, wherein the application software is configured to boot load a second boot stage of the at least one additional boot stage on at least one other processor of the multiprocessor SOC and to enable flow of data between the initial boot stage and the second boot stage.


