Multi-Core Processor Reconfiguration for Unified Core Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional simultaneous multithreading (SMT) techniques in CPU cores lead to inefficiencies, design complexities, and security vulnerabilities due to resource sharing and dynamic assignment, resulting in performance degradation, deadlocks, livelocks, and susceptibility to side-channel attacks.

Innovation Solution

A processor that can dynamically reconfigure between multi-core and unified core configurations, enabling static partitioning of resources and pipelines to allow independent execution of threads, reducing resource sharing and minimizing interaction, thereby avoiding performance variability and security issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If simultaneous multithreading (SMT) techniques are used to execute multiple threads on a single core, then thread utilization is improved, but resource sharing and dynamic assignment cause performance degradation, deadlocks, livelocks, and security vulnerabilities

Engineering Contradiction:
Improvethread utilizationVSAvoidperformance stability and security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The processor is divided into multiple independent cores, each with its own dedicated resources (pipeline, execution units, caches). This segmentation eliminates resource sharing between threads, preventing deadlocks, livelocks, and side-channel attacks while maintaining high thread utilization through parallel execution on multiple cores.

Inventive Principle:
Principle #1Segmentation

2Productivity

If high-performance CPU cores are designed to improve performance, then processing capability is enhanced, but the chip area occupied by CPU cores increases

Engineering Contradiction:
Improveprocessing performanceVSAvoidchip area
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

Multiple cores can be dynamically merged into a unified core configuration when only one thread needs high-performance execution. This merging consolidates resources into a single powerful core, reducing the active chip area while maintaining high processing performance for the active thread.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If multiple cores operate in parallel to execute multiple threads, then throughput is improved, but resource contention and interaction increase causing performance variability

Engineering Contradiction:
ImprovethroughputVSAvoidresource interaction complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Each core is fully segmented with dedicated resources, eliminating resource contention between threads. This segmentation ensures predictable performance by removing interactions and contentions, while multiple cores still operate in parallel to maintain high throughput.

Inventive Principle:
Principle #1Segmentation

4Productivity

If resources are dynamically assigned between threads in SMT, then resource utilization is improved, but design complexity and susceptibility to side-channel attacks increase

Engineering Contradiction:
Improveresource utilizationVSAvoiddesign complexity and security vulnerability
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Resources are statically allocated to each core rather than dynamically shared, simplifying the design by eliminating complex resource management logic. This static allocation also prevents side-channel attacks by ensuring complete isolation between threads on different cores.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The processor can dynamically switch between multi-core mode and unified core mode, providing multi-functionality. In unified core mode, all resources are dedicated to a single thread for maximum performance, while in multi-core mode, resources are distributed across multiple cores for parallel thread execution.

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

Data Source

PatentUS12511127B2Dynamic reconfiguration of a multi-core processor to a unified core
Publication Date: 2025.12.30 NVIDIA CORP
  • US12511127B2 patent drawing
  • US12511127B2 patent drawing
  • US12511127B2 patent drawing

AI summary

A first thread is executed in a first pipeline of a first core of an integrated circuit (IC). The first core includes a first set of hardware structures. A second thread is executed in a second pipeline of a second core of the IC. The second core includes a second set of hardware structures. In response to a command to operate the IC with a unified core, the first core is combined with the second core to obtain the unified core. To unify the first core, the first pipeline is unified with the second pipeline to obtain a unified pipeline, and the first set of hardware structures is unified with the second set of hardware structures to obtain a unified set of hardware structures. A single thread is executed in the unified pipeline of the unified core using the unified set of hardware structures.