MCA Error Logging Buffer for Preserving Machine Check Exceptions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing Machine Check Architecture (MCA) systems fail to effectively store and manage multiple hardware errors in quick succession, leading to potential loss of critical error details due to overwriting in register banks, which hampers debugging and error handling.

Innovation Solution

Implementing a Machine Check Architecture (MCA) subsystem that copies error exception details to system memory using circuitry, such as scatter-gather circular linked lists or contiguous arrays, and utilizes DMA engines to prevent overwriting, allowing error handling software to access and analyze errors without real-time retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If error handling software rapidly reads and caches errors from register banks in real time, then error processing speed is improved, but earlier errors may be overwritten or lost

Engineering Contradiction:
Improveerror processing speedVSAvoiderror details loss
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent implements a circular buffer data structure in system memory that pre-allocates storage space for multiple error records. When errors occur, they are automatically stored in this pre-prepared buffer structure, eliminating the need for real-time retrieval and caching operations. The circular buffer continuously overwrites oldest entries only when full, preserving recent errors while maintaining a history of previous errors.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a circular buffer data structure as an intermediary between the register banks and error handling software. This buffer acts as a buffer zone that temporarily holds multiple error records, allowing software to access errors at its own pace without risking overwriting. The buffer mediates the conflict between fast error reporting and careful error analysis.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If errors are stored in register banks for real-time processing, then error handling responsiveness is improved, but multiple sequential errors cannot be retained

Engineering Contradiction:
Improveerror handling responsivenessVSAvoidnumber of errors retained
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent transitions from storing errors in fixed register banks (one-dimensional, single-slot storage) to using a circular buffer data structure in system memory (multi-dimensional, multi-slot storage). This dimensional change allows the system to retain multiple error records simultaneously while maintaining efficient access patterns. The circular buffer organizes error storage in a wraparound structure that efficiently utilizes memory space.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If error details are logged to system memory using DMA engines, then error data preservation is improved, but system complexity increases

Engineering Contradiction:
Improveerror data preservationVSAvoidsystem architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a self-service error logging mechanism where the circular buffer in system memory automatically receives error records via DMA engines without requiring active intervention from error handling software. The buffer structure itself manages the storage and preservation of error data, freeing the software from the burden of real-time error capture and preservation while ensuring reliable data retention.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12511183B2Storage of machine check exceptions
Publication Date: 2025.12.30 INTEL CORP
  • US12511183B2 patent drawing
  • US12511183B2 patent drawing
  • US12511183B2 patent drawing

AI summary

Examples described herein relate to circuitry to copy reported error data to a data structure in memory. In some examples, the reported error data includes a last reported error and at least one other reported error. In some examples, the circuitry utilizes a direct memory access (DMA) circuitry to copy the reported error data to the data structure in memory.