BMC Real-Time Clock Continuity During Reboot

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex systems with multiple processors, such as servers, face challenges in maintaining real-time clock synchronization during reboot, especially when using remote access controllers like iDRAC, due to differences in processor architectures and lack of access to real-time clock hardware, leading to out-of-sync time logs and issues in time-sensitive applications.

Innovation Solution

A system that uses a remote access controller to store time and tick count in memory, allowing the main processor to maintain the time base during reboot, and then synchronize with a co-processor or auxiliary devices like power supply units and network interface controllers to ensure continuous real-time clock functionality without relying on high-accuracy timing protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the remote access controller reboots the main processor, then system maintenance or updates can be performed, but the real-time clock time is lost and time logs become out of synchronization

Engineering Contradiction:
Improveremote access controller reboot capabilityVSAvoidreal-time clock synchronization
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system saves the current real-time clock time and tick count to a persistent storage device (such as CMOS memory or non-volatile memory) before the reboot is initiated. This preliminary action ensures that the time information is preserved and can be restored after the reboot, maintaining time synchronization without requiring expensive external time sources.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If the system uses processor-specific clock management, then each processor architecture can be optimized, but the complexity of managing clock time across different processors increases

Engineering Contradiction:
Improveprocessor architecture optimizationVSAvoidclock management complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The system implements a universal clock management mechanism that works across different processor architectures (Intel, AMD, and other multi-processor systems). The remote access controller and boot loader work together to save and restore time information in a processor-agnostic manner, eliminating the need for architecture-specific clock management code while maintaining optimization benefits.

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

3Device complexity

If the remote access controller lacks access to real-time clock hardware, then the system can be simplified, but time synchronization during and after reboot becomes problematic

Engineering Contradiction:
Improveremote access controller designVSAvoidtime synchronization accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The system introduces a boot loader as an intermediary component that bridges the gap between the remote access controller and the real-time clock functionality. The boot loader saves the time and tick count to persistent storage before reboot and restores it after reboot, enabling the remote access controller to maintain accurate time synchronization without requiring direct hardware access to the real-time clock.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10955872B2System and method to retain baseboard management controller real-time clock time during BMC reboot
Publication Date: 2021.03.23 DELL PROD LP
  • US10955872B2 patent drawing
  • US10955872B2 patent drawing

AI summary

A system with real time clock continuity is disclosed. The system includes a remote access controller configured to interoperate with a main processor and at least one second system component. The main processor is configured to receive a control from the remote access controller and to initiate a reboot after determining that a time and a tick count are stored in a memory device. The second system component is configured to store the time and the tick count in the memory device. A boot loader of the system is configured to use the time and the tick count to maintain a real time clock during the reboot of the main processor.