Multi-Core Embedded Firmware Upgrade via PCIe Memory Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional multi-core embedded systems, such as MPSoC, lack external interfaces like JTAG, SD card, or Ethernet, necessitating device power-off and restart for firmware upgrades, which disrupts other functional modules in servers.

Innovation Solution

An online upgrade system for multi-core embedded systems that includes a service system and a system on chip with a programmable logic module, communication module, register module, and DMA module, allowing firmware upgrades without powering down the device by mapping memory and using a PCI-Express interface for communication and interrupt processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional firmware upgrade methods using external interfaces (JTAG, SD card, Ethernet) are used, then firmware can be upgraded, but the device must be powered off and restarted, affecting other functional modules

Engineering Contradiction:
Improvefirmware upgrade capabilityVSAvoidsystem availability during upgrade
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system separates the firmware upgrade process into independent stages: firmware file reception via PCI-Express interface, firmware validation, and firmware activation. This segmentation allows the upgrade process to be performed while the system remains operational, with other functional modules continuing to work normally during the upgrade process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a firmware upgrade module as an intermediary component that handles firmware reception, validation, and installation through the PCI-Express interface. This intermediary manages the upgrade process without requiring system shutdown, enabling continuous operation of other functional modules while firmware is being updated.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If external interfaces (JTAG, SD card, Ethernet) are added for firmware upgrade, then firmware can be upgraded online, but device complexity and hardware requirements increase

Engineering Contradiction:
Improveonline firmware upgradeVSAvoidhardware interface requirements
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent utilizes the existing PCI-Express interface for multiple purposes: data transmission, firmware upgrade, and system communication. By making the PCI-Express interface multi-functional, the system achieves online firmware upgrade capability without adding dedicated external interfaces, thereby reducing hardware complexity while maintaining upgrade functionality.

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

Solution Approach 2:

The system uses its own existing PCI-Express interface resources to perform firmware upgrades, eliminating the need for separate dedicated upgrade interfaces. The system serves its own firmware update needs through its existing communication infrastructure, reducing overall device complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11899612B2Online upgrading method and system for multi-core embedded system
Publication Date: 2024.02.13 CELESTICA TECH CONSULTANCY SHANGHAI
  • US11899612B2 patent drawing
  • US11899612B2 patent drawing
  • US11899612B2 patent drawing

AI summary

The present disclosure provides an online upgrade method and system for a multi-core embedded system. The system includes a service system and a multi-core embedded system. The service system is used to provide upgrade firmware files. The multi-core embedded system includes: a system on chip, including a multi-core embedded processor system and a programmable logic module, the programmable logic module maps the memory of the multi-core embedded processor system to the service system; a communication module, establishing the communication connection between the system on chip and the service system, receiving and caches the upgraded firmware files from the service system; a DMA module, used for fast data transfer between the communication module and the memory of the multi-core embedded processor system; an interrupt controller, executing interrupt processing, so that the multi-core embedded processor system can obtain the upgraded firmware files through the memory.