BMC Memory Validation Using VCDE Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing information handling systems lack efficient methods for memory validation, particularly in baseboard management controllers, which can lead to inefficiencies in processing and storage operations.

Innovation Solution

Incorporating a video capture and difference engine (VCDE) within the baseboard management controller (BMC) to compare memory blocks, with the processor handling smaller block sizes and forwarding larger comparisons to the VCDE for efficient content comparison.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If the processor compares memory block contents directly, then the implementation is simple, but the processing time increases for large memory blocks

Engineering Contradiction:
Improveimplementation complexityVSAvoidprocessing time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent divides the memory comparison function into two segments: the processor handles small memory block comparisons directly, while large memory block comparisons are offloaded to the VCDE. This segmentation allows each component to operate in its optimal performance range, reducing overall processing time without requiring complete system redesign

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a threshold parameter as an intermediary that mediates between the processor and VCDE for memory comparison tasks. When the memory block size exceeds this threshold, the comparison is forwarded to the VCDE; otherwise, the processor handles it directly. This intermediary mechanism optimizes processing time based on block size without adding significant implementation complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If the processor handles all memory validation, then the system architecture is simple, but the bandwidth usage and processing resources increase

Engineering Contradiction:
Improvesystem architectureVSAvoidbandwidth usage and processing resources
Core Design Contradiction:
Device complexityVSUse of energy by moving object

Solution Approach 1:

The VCDE, originally designed for video frame comparison, is made multi-functional by enabling it to perform memory block comparison tasks as well. This allows the VCDE to handle large memory validation operations, reducing the processing burden on the main processor and lowering bandwidth usage without requiring a completely separate memory validation subsystem

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

Solution Approach 2:

The system enables self-service by allowing the VCDE to autonomously handle large memory block comparisons that are forwarded to it. The VCDE independently performs the comparison operation and returns results, reducing the need for continuous processor intervention and minimizing bandwidth consumption for memory validation tasks

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10783857B2Apparatus and method for fast memory validation in a baseboard management controller
Publication Date: 2020.09.22 DELL PROD LP
  • US10783857B2 patent drawing
  • US10783857B2 patent drawing
  • US10783857B2 patent drawing

AI summary

An information handling system includes a host processing complex with a memory, and a baseboard management controller (BMC) with a processor and a video capture and difference engine (VCDE). The processor receives a memory compare command. The memory compare command includes a first pointer to a first block of the memory, a second pointer to a second block of the memory, and a memory block size. The processor further determines whether the memory block size is greater than a threshold, and forwards the memory compare command to the VCDE when the memory block size is greater than the threshold. The VCDE compares contents of the first block to contents of the second block in response to receiving the memory compare command.