Dynamic Boot CPU Selection for SoC Yield Improvement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional system-on-chip (SoC) designs have limited adaptability and resource utilization due to the selection of a boot central processing unit (CPU) being hardcoded during design time, leading to waste when manufacturing defects result in non-functional SoCs, as there is no method to dynamically select a functional CPU core or repurpose resources post-manufacture.
Innovation Solution
The SoC design includes a mechanism to store quality information of CPU cores and dynamically select a boot CPU based on this information, allowing for the execution of boot code on a functional CPU core and repurposing of resources such as caches, thereby improving yield and resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the boot CPU is hardcoded during design time, then the boot sequence is simple and reliable, but the SoC cannot adapt to manufacturing defects and must be discarded if the designated boot CPU fails
Solution Approach 1:
The patent makes the boot CPU selection dynamic by introducing a selection mechanism that determines which CPU core serves as the boot CPU at runtime based on quality information, rather than having it fixed at design time. This allows the system to adapt to manufacturing defects while maintaining reliable booting through the dynamic selection of functional CPU cores.
Solution Approach 2:
The patent changes the parameter of boot CPU selection from a fixed design-time parameter to a runtime parameter that can be modified based on quality screening results. This parameter change enables the system to adapt to manufacturing variations while maintaining reliable boot operation.
2Ease of manufacture
If the boot CPU is selected at design time, then the design process is simple, but manufacturing defects in the boot CPU result in complete SoC waste
Solution Approach 1:
The patent performs preliminary quality screening of CPU cores during or after manufacturing and stores quality information before the SoC is put into service. This preliminary action identifies functional CPU cores in advance, so that if the designated boot CPU fails, the system can select an alternative without discarding the entire SoC.
Solution Approach 2:
The patent prepares alternative boot CPU options by storing quality information about multiple CPU cores beforehand. This cushioning mechanism ensures that if the primary boot CPU fails, the system already has pre-identified alternatives ready, preventing complete SoC waste.
3Device complexity
If resources are allocated statically in conventional SoC design, then resource allocation is simple, but functional components cannot be utilized if related components fail
Solution Approach 1:
The patent makes resource allocation dynamic by linking resource assignment to the selected boot CPU. When a different CPU core is selected as the boot CPU due to quality considerations, the resources (such as caches) are dynamically reallocated to match the new configuration, enabling functional components to be utilized even if originally paired components fail.
Data Source
AI summary
Various additional and alternative aspects are described herein. In some aspects, the present disclosure provides a method of operating a system-on-chip (SoC). The method includes selecting a CPU core of a plurality of CPU cores of the SoC to boot the SoC based on information indicative of the quality of the plurality of CPU cores stored on the SoC. The method includes running boot code on the selected CPU.


