Multicore Pre-Boot Framework for SoC Boot Time Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

System-on-chip (SoC) boot times are prolonged due to the increased number of firmware images required for multiple hardware components, which complicates secure boot processes and fails to meet performance metrics, especially with the growing complexity of portable computing devices.

Innovation Solution

Implementing a multicore framework in the pre-boot environment where a primary processor (BSP) initiates bootup and schedules tasks for secondary processors (APs) to execute boot-up tasks in parallel, leveraging a shared memory for inter-processor communication and utilizing protocols like multicore scheduling and I/O protocols to optimize boot processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple firmware images are executed for each hardware component in the boot sequence, then secure boot and integrity checking are improved, but boot time increases

Engineering Contradiction:
Improvesecure bootVSAvoidboot time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the boot process into distinct phases (Phase 1: Integrity checking of first firmware image; Phase 2: Execution of first firmware image; Phase 3: Integrity checking of second firmware image; Phase 4: Execution of second firmware image). This segmentation allows systematic verification of multiple firmware images while maintaining clear execution flow, resolving the contradiction between thorough security checking and boot time efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs integrity checking of the second firmware image during the execution phase of the first firmware image (Phase 3 occurs during Phase 2). This preliminary action ensures that security verification is done in advance before the second firmware image needs to be executed, preventing delays in the boot sequence while maintaining security requirements.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If hashing algorithms and encryption algorithms are implemented for integrity checking and authentication of firmware images, then security is improved, but boot time increases

Engineering Contradiction:
Improveintegrity checkingVSAvoidboot time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements continuous useful action by performing integrity checking of the second firmware image concurrently with the execution of the first firmware image. The security algorithms (hashing, encryption) continue to process firmware images without idle periods, maintaining security verification while optimizing boot time by eliminating sequential waiting periods.

Inventive Principle:
Principle #20Continuity of useful action

3Adaptability or versatility

If more hardware components are added to the SoC to increase functionality, then device capability is improved, but the number of firmware images increases leading to longer boot time

Engineering Contradiction:
ImprovefunctionalityVSAvoidboot time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary integrity checking of firmware images during the execution of previous firmware images. This allows the system to handle multiple firmware images from additional hardware components without proportionally increasing total boot time, as verification is done in advance during overlapping execution phases.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuous useful action by overlapping the execution of firmware images with the integrity checking of subsequent firmware images. This continuous processing approach allows the system to accommodate more hardware components and their associated firmware images while minimizing the impact on boot time through efficient utilization of processing resources.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10860332B2Multicore framework for use in pre-boot environment of a system-on-chip
Publication Date: 2020.12.08 QUALCOMM INC
  • US10860332B2 patent drawing
  • US10860332B2 patent drawing
  • US10860332B2 patent drawing

AI summary

Various aspects are described herein. In some aspects, the disclosure provides a method of enabling a multicore framework in a pre-boot environment for a system-on-chip (SoC) comprising a plurality of processors comprising a first processor and a second processor. The method includes initiating, by the first processor, bootup of the SoC into a pre-boot environment. The method further includes scheduling, by the first processor, execution of one or more boot-up tasks by a second processor. The method further includes executing, by the second processor, the one or more boot-up tasks in the pre-boot environment. The method further includes executing, by the first processor, one or more additional tasks in parallel with the second processor executing the one or more boot-up tasks.