Multi-Port Queueing Cache for Predictable Data Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing systems face inefficiencies in cache utilization due to unpredictable data access patterns and limited cache capacity, particularly in massive computations where data arrangement is predictable.

Innovation Solution

A multi-port queueing cache with a simple structure and interface is introduced, featuring multiple ports, request handlers, and a cache storage system that allows for efficient data management through reserve and request interfaces, enabling high-performance and large-capacity data processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is moved into cache before needed based on prediction, then cache efficiency increases, but cache capacity is wasted when prediction fails or data is stored too early

Engineering Contradiction:
Improvecache efficiencyVSAvoidcache capacity utilization
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements prefetching mechanisms that load data into the cache before it is actually needed by the processing unit. The cache controller predicts future data access patterns and pre-loads relevant data blocks, thereby reducing latency when the data is needed while maintaining efficient cache utilization through intelligent prediction algorithms

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If cache size is increased to handle massive computations, then cache capacity increases, but system complexity increases

Engineering Contradiction:
Improvecache capacityVSAvoidcache structure complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent divides the cache into multiple banks or segments that can operate independently. Each cache bank can handle specific data blocks or address ranges, allowing the overall cache system to achieve large capacity while maintaining manageable complexity through modular organization. This segmentation enables parallel access to different cache regions and simplifies control logic for each individual bank

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces multiple ports (read ports and write ports) to the cache structure, adding a dimensional aspect to cache access. Instead of single-port sequential access, the multi-port architecture enables simultaneous read and write operations across different ports, effectively increasing throughput and capacity utilization without proportionally increasing internal cache complexity

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

3Speed

If multiple ports are added to increase cache throughput, then data access speed increases, but interface and control complexity increases

Engineering Contradiction:
Improvedata access speedVSAvoidinterface complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent designs the cache ports with universal functionality where each port can handle both read and write operations. The port interface is designed to be multi-functional, accommodating different data transfer scenarios through a unified protocol and control mechanism. This reduces the need for separate dedicated read ports and write ports, thereby increasing access speed while controlling interface complexity through consolidation

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

Data Source

PatentUS20250278367A1Multi-port queueing cache and data processing system including the same
Publication Date: 2025.09.04 SAMSUNG ELECTRONICS CO LTD
  • US20250278367A1 patent drawing
  • US20250278367A1 patent drawing
  • US20250278367A1 patent drawing

AI summary

In some embodiments, a multi-port queueing cache includes a plurality of first ports, a plurality of second ports, a plurality of request handlers respectively coupled to the plurality of first ports, a cache storage unit coupled to the plurality of second ports, a reserve interface configured to exchange at least one address and at least one reserved cache line number, and a request interface configured to exchange the at least one reserved cache line number and at least one data. The reserve interface and the request interface are disposed between the plurality of request handlers and the cache storage unit. The cache storage unit includes a plurality of cache lines configured to store the plurality of data. The cache storage unit is configured to output a portion of the plurality of addresses, and receive a portion of the plurality of data corresponding to the portion of the plurality of addresses.