Runtime Memory Activation via OS Initialization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face delays and inefficiencies when adding memory modules at runtime, as they require entering system management mode (SMM), which halts normal operations and delays the activation of new memory, leading to significant downtime.

Innovation Solution

The operating system performs memory module initialization and hardware training in the background, generating configuration data that is applied during a quiescent period in SMM, allowing normal device operations to continue and minimizing downtime by reducing the time spent in SMM.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory module activation is performed in system management mode (SMM), then the memory can be activated, but normal device operations are halted and activation time is significantly delayed

Engineering Contradiction:
Improvememory activation completenessVSAvoiddevice downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The memory activation process is segmented into two parts: initialization and configuration data generation are performed in the operating system environment, while only the final system reconfiguration requires SMM. This segmentation allows the majority of the activation process to proceed without halting normal operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The operating system performs preliminary actions by initializing the memory module and generating configuration data before SMM is entered. This preliminary preparation reduces the time required in SMM and allows normal operations to continue during the preparation phase.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the operating system performs memory initialization in the background, then normal operations can continue, but system reconfiguration still requires SMM entry

Engineering Contradiction:
Improveoperational continuityVSAvoidactivation process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The operating system acts as an intermediary that prepares memory configuration data before SMM is entered. This intermediary preparation reduces the complexity and duration of the SMM phase, as the actual memory initialization work is already completed by the OS in the background.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If configuration data is prepared during a quiescent period in SMM, then memory activation is completed, but the quiescent period requires suspending normal operations

Engineering Contradiction:
Improveconfiguration accuracyVSAvoidoperation suspension time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of requiring a complete SMM entry for full memory activation, only a partial action is performed in SMM - specifically, applying the configuration data during a brief quiescent period. The majority of the activation work is completed partially in advance by the operating system, reducing the excessive time requirement in SMM.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11699470B2Efficient memory activation at runtime
Publication Date: 2023.07.11 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US11699470B2 patent drawing
  • US11699470B2 patent drawing
  • US11699470B2 patent drawing

AI summary

The present disclosure is directed to efficient memory activation at runtime. A memory module (e.g., a memory riser) being added to a device would typically cause the device to enter system management mode (SMM) to activate the memory module. However, activation (e.g., memory module initialization, hardware training and system reconfiguration) in SMM may substantially delay the resumption of normal operations. Consistent with the present disclosure, at least the memory module initialization and hardware training portions of the activation may be performed by an operating system (OS) in the device, allowing normal device operation to continue during the activation. The OS portion of the activation may generate configuration data. In at least one embodiment, the configuration data may be applied for use in SMM. For example, a system management interrupt (SMI) handler may apply the configuration data during a quiescent period (e.g., a period of inactivity) that occurs during SMM.