Boot Algorithm for Flexible IC Source Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing IC chips lack flexibility in booting mechanisms, as once the fuse latches are blown, the boot source becomes permanently fixed, limiting the ability to adapt to different applications and products.

Innovation Solution

A method and structure for an IC chip that includes an on-chip primary boot source with a boot discovery algorithm to determine the location of an external secondary boot source, allowing the processor to automatically retrieve and execute secondary boot code, thereby enabling flexible booting and configuration for various applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If fuse latches are used to select boot sources, then the boot source selection is simplified and automated, but the boot source becomes permanently fixed and cannot be changed

Engineering Contradiction:
Improveboot source selectionVSAvoidboot source flexibility
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic boot source selection mechanism that replaces the static fuse latch system. The processor automatically checks multiple potential boot sources in sequence (external memory, internal memory, serial communication interfaces) and selects the first available source. This dynamic approach allows the boot source to be determined at runtime rather than being permanently fixed during manufacturing, thereby maintaining ease of automated selection while enabling flexibility and adaptability across different applications and products.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If multiple external boot sources are supported, then the adaptability to different applications is improved, but the device complexity increases

Engineering Contradiction:
Improveapplication adaptabilityVSAvoidboot mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the boot mechanism into distinct modular components: a primary boot code section that handles automatic source detection, separate potential boot sources (external memory interface, internal memory interface, serial communication interfaces), and a selection logic that checks each source in a defined sequence. This segmentation allows the system to support multiple external boot sources for different applications while managing complexity through clear structural organization and standardized interfaces for each boot source type.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a universal boot mechanism that can handle multiple different boot sources through a single integrated framework. The processor uses a unified boot discovery algorithm that checks various potential sources (external memory, internal memory, serial interfaces) using consistent detection and selection logic. This multi-functional approach enables the same boot mechanism to serve different applications and products without requiring separate specialized boot logic for each source type, thereby improving adaptability while controlling complexity through standardization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8285979B2Boot algorithm
Publication Date: 2012.10.09 ICERA INC
  • US8285979B2 patent drawing
  • US8285979B2 patent drawing
  • US8285979B2 patent drawing

AI summary

A method, chip and computer program product for booting from a secondary boot source. In one embodiment, the method includes: (1) retrieving primary boot code from an on-chip primary boot source on the same chip as a processor, the primary boot code comprising at least a boot discovery algorithm for determining the location of an external secondary boot source external to said chip, (2) executing the primary boot code on the processor, including the boot discovery algorithm, thus operating the processor to check each of a plurality of locations to determine the location of the external secondary boot source, (3) retrieving the secondary boot code from the determined location and (4) continuing the booting of the processor by executing the secondary boot code on the processor.