SoC Booting via Unified Programmable Device Image
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
System-on-chip (SoC) components require complex and independent data for booting and runtime operations, making it challenging to configure and initialize the various hardware blocks efficiently, especially in a parallel and controlled manner.
Innovation Solution
A method and system that generate component images for a platform management controller, programmable logic, and processor subsystem, which are assembled into a programmable device image (PDI) to configure and boot the SoC, allowing parallel initialization and control of hardware blocks through the platform management controller.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple independent component images are generated for different SoC components, then each component can be configured independently, but the overall system complexity increases due to managing multiple separate configuration files
Solution Approach 1:
The patent combines multiple independent component images (PMC image, PL image, PS image) into a single unified programmable device image (PDI). The PDI includes a header section with image header tables that organize references to all component images, allowing the system to manage multiple components through a single integrated configuration file rather than separate files.
Solution Approach 2:
The patent introduces an image header table as an intermediary structure that mediates between the unified PDI and the individual component images. The header table contains image headers that store metadata and references to each component image, enabling the boot process to locate and load the correct components without managing multiple independent configuration files directly.
2Productivity
If component images are assembled into a unified programmable device image, then the boot process can be streamlined, but the time required to process and assemble the large unified image increases
Solution Approach 1:
The patent performs preliminary organization of component images by creating image headers and populating the image header table during the build process, before the actual boot operation. This preliminary structuring allows the runtime boot process to simply follow pre-defined paths and references rather than performing complex assembly operations at boot time.
Solution Approach 2:
The patent segments the unified PDI into distinct sections (header section with image header tables, and component image sections) that can be independently processed and loaded. The header section contains metadata that enables efficient locating and loading of individual component images without requiring the entire unified image to be processed as a single unit.
3Productivity
If the platform management controller boots from the first component image and configures other components, then parallel initialization is enabled, but the control and coordination overhead increases
Solution Approach 1:
The patent enables the platform management controller to autonomously boot from its component image and automatically configure other components (programmable logic and processor subsystem) without external intervention. The PMC reads the image header table to locate and load the appropriate component images, performing self-initialization and coordination of other components through programmed sequences.
Data Source
AI summary
Approaches for configuring a system-on-chip (SOC) include generating component images for components of the SOC. A first component image is for a platform management controller, a second component image is for programmable logic, and a third component image is for a processor subsystem. The plurality of component images are assembled into a programmable device image, and the programmable device image is input to the platform management controller. The platform management controller is booted from the first component image, the programmable logic is configured with the second component image by the platform management controller in executing the first component image, and the processor subsystem is configured with the third component image by the platform management controller in executing the first component image.


