Reconfigurable Shared Memory for Dynamic Dedicated Cache Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing processor-based systems face inefficiencies due to underutilization of dedicated memory resources, particularly in applications requiring varying memory sizes, leading to 'dark silicon' and increased die area.

Innovation Solution

A reconfigurable shared memory system that includes dedicated, general, and reconfigurable memory components, allowing dynamic reconfiguration of the reconfigurable memory as part of either the dedicated or general memory space based on application needs, optimizing memory utilization and reducing die area.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If dedicated memory is allocated to a particular client (e.g., GPU) to ensure fast access and meet scan-out deadlines, then memory access speed and reliability are improved, but memory utilization efficiency deteriorates due to underutilization when the client does not require the full dedicated memory size

Engineering Contradiction:
Improvememory access speedVSAvoidmemory utilization efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent implements a reconfigurable memory system where the boundary between dedicated memory and general memory can be dynamically adjusted. The dedicated memory portion is configurable via control logic to match the actual memory requirements of the client (e.g., GPU), allowing the system to transition from a static dedicated memory allocation to a dynamic configuration that adapts to varying workload demands, thereby improving utilization efficiency while maintaining fast access speeds when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent creates a multi-functional memory system where the same physical memory resources can serve both as dedicated memory for specific clients and as general memory for other clients, depending on the configuration. The reconfigurable memory architecture allows the memory to be universally accessed by different clients based on runtime requirements, eliminating the need for separate dedicated and shared memory pools and improving overall system efficiency.

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

2Loss of time

If dedicated memory is allocated to ensure fast access for specific applications, then access latency is reduced, but die area increases due to allocation of memory that may not be fully utilized

Engineering Contradiction:
Improvememory access latencyVSAvoiddie area
Core Design Contradiction:
Loss of timeVSArea of stationary object

Solution Approach 1:

The patent employs dynamic configuration of memory boundaries to optimize the balance between access latency and die area. By making the dedicated memory portion configurable, the system can allocate exactly the amount of memory needed for each application, avoiding the waste of allocating excessive dedicated memory that would increase die area without providing proportional performance benefits. The dynamic adjustment ensures that fast access is provided only for the actual memory requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of memory allocation size from a fixed value to a configurable value. The dedicated memory portion can be adjusted based on the specific requirements of different applications, allowing the system to optimize the trade-off between access latency and die area for each workload. This parameter change enables the system to minimize die area while maintaining low latency when fast access is actually required.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If reconfigurable memory is added to allow dynamic allocation between dedicated and general memory space, then memory utilization efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvememory utilization efficiencyVSAvoidmemory system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the memory system into a dedicated memory portion and a general memory portion, with a configurable boundary between them. The reconfiguration capability is implemented through control logic that can adjust the boundary based on runtime requirements. This segmentation approach allows the system to maintain relatively simple structures for each memory portion while adding only the necessary control mechanisms for reconfiguration, thereby limiting the increase in overall device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces control logic as an intermediary component that manages the reconfiguration between dedicated and general memory portions. This intermediary handles the complexity of memory management, boundary adjustment, and client routing, isolating the complexity from the core memory structures. By concentrating the reconfiguration functionality in a dedicated control unit, the patent minimizes the complexity increase while achieving improved memory utilization efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12541453B2Reconfigurable shared memory systems, and related processor-based systems and methods
Publication Date: 2026.02.03 QUALCOMM INC
  • US12541453B2 patent drawing
  • US12541453B2 patent drawing
  • US12541453B2 patent drawing

AI summary

Reconfigurable shared memory systems, and related processor-based systems and methods are disclosed. The reconfigurable shared memory system can be included in a processor-based system to provide memory for data storage. In exemplary aspects, the reconfigurable shared memory system not only includes the dedicated memory and the general memory (e.g., system cache memory), but also includes a reconfigurable memory. The reconfigurable memory can be configured as either part of addressable memory space of the dedicated memory if an application requires such additional dedicated memory, and/or configured as part of the addressable memory space of the general memory to provide additional memory to other clients for increased processing performance if such reconfigurable memory is not needed as part of the dedicated memory. The dedicated memory does not have to be sized to the worst-case size requirements of a given application.