Hybrid Memory Controller Partitioning for Low-Interference Cache Sync

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in efficiently managing cache operations in hybrid memory systems, leading to increased latency and reduced speed performance due to cache synchronization interfering with memory transactions.

Innovation Solution

A hybrid memory system architecture that separates memory controller functions into a hybrid controller and a memory controller, allowing cache maintenance operations to be performed independently during available access slots, utilizing a transaction-merging unit and control logic to manage cache operations without interrupting memory transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cache maintenance operations are performed in a hybrid memory system, then cache synchronization is achieved, but memory transaction latency increases and speed performance decreases

Engineering Contradiction:
Improvecache synchronizationVSAvoidmemory transaction speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The memory controller is segmented into a hybrid controller component and a memory controller component, allowing cache maintenance operations to be handled separately from primary memory transactions. The hybrid controller manages cache fetch and evict operations independently, while the memory controller handles DRAM accesses, preventing interference between these operations and resolving the contradiction between cache synchronization and memory transaction speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The hybrid controller acts as an intermediary between the execution unit and the memory system. It intercepts memory access requests, determines whether data is cached, and manages cache maintenance operations transparently. This intermediary layer enables cache synchronization without directly interfering with the timing-critical memory transactions handled by the memory controller.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If a hybrid memory system with fast and slow memory components is used, then per-bit cost is reduced, but system complexity increases

Engineering Contradiction:
Improveper-bit costVSAvoidmemory system complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The memory system is segmented into fast memory components (DRAM cache) and slow memory components (non-volatile memory), each optimized for different performance and cost requirements. The hybrid controller manages this segmented architecture by handling cache-specific operations, while the memory controller manages the larger memory space, making the complexity manageable despite the heterogeneous structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The hybrid controller provides multi-functionality by handling both cache maintenance operations (fetch and evict) and coordinating with the memory controller for unified memory access. This universal controller manages the complexity of the hybrid architecture while presenting a simplified interface to the execution unit, enabling cost-effective hybrid memory implementation.

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

Data Source

PatentUS20260079635A1Memory controller partitioning for hybrid memory system
Publication Date: 2026.03.19 RAMBUS INC
  • US20260079635A1 patent drawing
  • US20260079635A1 patent drawing
  • US20260079635A1 patent drawing

AI summary

A compute system includes an execution unit (e.g. of a CPU) with a memory controller providing access to a hybrid physical memory. The physical memory is “hybrid” in that it combines a cache of relatively fast, durable, and expensive memory (e.g. DRAM) with a larger amount of relatively slow, wear-sensitive, and inexpensive memory (e.g. flash). A hybrid controller component services memory commands from the memory controller component and additionally manages cache fetch and evict operations that keep the cache populated with instructions and data that have a high degree of locality of reference. The memory controller alerts the hybrid controller of available access slots to the cache so that the hybrid controller can use the available access slots for cache fetch and evict operations with minimal interference to the memory controller.