Unit Controller FPGA Firmware Recovery on Boot

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in verifying and recovering changeable firmware of Field-Programmable Gate Arrays (FPGAs) due to the need for pre-stored software copies and inability to handle hardware changes, leading to increased development costs and limited customization.

Innovation Solution

An information processing apparatus with a unit controller comprising a first and second sub-system, where the first sub-system overwrites the second sub-system's program with a recovery program when communication fails, and acquires configuration data from a server to update the firmware.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If a fixed configuration system with a common controller is used, then cost reduction by mass production is expected, but it is difficult to customize the system and development cost increases

Engineering Contradiction:
Improvecost reduction by mass productionVSAvoidcustomization capability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The controller transitions from a static fixed configuration to a dynamic variable configuration system using FPGA technology. The FPGA allows the controller to be reprogrammed and reconfigured in the field to accommodate different peripheral devices and customization requirements, while maintaining a common hardware platform for mass production benefits.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The common controller is designed with universal FPGA-based architecture that can perform multiple functions by loading different configuration programs. This single controller can adapt to various peripheral devices and system requirements, eliminating the need for multiple specialized controllers while enabling customization.

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

2Adaptability or versatility

If a variable configuration system with FPGA is used, then customization is easy and development cost decreases, but verification and recovery of changeable firmware becomes challenging

Engineering Contradiction:
Improvecustomization capabilityVSAvoidfirmware verification and recovery
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary verification of the FPGA configuration program during the boot process before full system operation. A verification program checks the integrity and correctness of the loaded configuration, and recovery mechanisms are prepared in advance to handle verification failures, preventing system instability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The verification mechanism uses a copy of the configuration program stored in a separate memory area to compare against the loaded FPGA configuration. This allows verification of the changeable firmware without interfering with the running system, ensuring reliability while maintaining customization capability.

Inventive Principle:
Principle #26Copying

3Reliability

If firmware verification and recovery mechanisms are implemented, then system reliability improves, but device complexity increases

Engineering Contradiction:
Improvefirmware verification and recoveryVSAvoidcontroller architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The verification and recovery functions are merged into the existing FPGA controller architecture rather than adding separate dedicated hardware. The verification program and recovery mechanisms are implemented as software/firmware components within the FPGA, utilizing the same processing resources and memory structures already present in the variable configuration system.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS20250231838A1Information processing apparatus, method for controlling information processing apparatus, and storage medium
Publication Date: 2025.07.17 CANON KK
  • US20250231838A1 patent drawing
  • US20250231838A1 patent drawing
  • US20250231838A1 patent drawing

AI summary

An information processing apparatus includes one or more units, wherein the one or more units include a unit controller, the unit controller includes a first sub-system and a second sub-system, and in a case where the first sub-system cannot communicate with the second sub-system when the information processing apparatus is booted, the first sub-system overwrites, with a recovery program, a program of the second sub-system stored in a memory in which the program of the second sub-system is stored.