Cache Control Unit Pre-filling Tracks to Reduce Misses

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cache architectures face bottlenecks in increasing processor performance due to cache misses, power limitations, and the widening gap between processor and memory speeds, particularly in multi-way set associative configurations, which hinder efficient data and instruction caching.

Innovation Solution

A digital system with a processor core and a cache control unit that pre-fills data from a slower first memory to a faster second memory based on extracted instruction information, creating tracks to optimize data access and reduce cache misses by anticipating instruction execution sequences.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multi-way set associative cache is used to reduce conflict misses, then cache hit rate is improved, but power consumption and access time increase due to reading and comparing contents and tags from all cache sets simultaneously

Engineering Contradiction:
Improvecache hit rateVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by stationary object

Solution Approach 1:

The cache access operation is segmented into two distinct phases: first, the tag memory is accessed separately to retrieve tags; second, only the cache sets that contain matching tags undergo content comparison. This segmentation avoids the traditional approach of simultaneously accessing and comparing all cache sets, thereby reducing power consumption while maintaining cache hit rate.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The tag memory is accessed in advance before the cache content comparison phase. By performing this preliminary tag retrieval operation, the system identifies which cache sets contain the desired data before initiating the more power-intensive content comparison process, thus avoiding unnecessary comparisons in sets that do not contain the target data.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multi-way set associative cache is used to reduce conflict misses, then cache hit rate is improved, but access time increases due to parallel reading and comparison operations

Engineering Contradiction:
Improvecache hit rateVSAvoidaccess time
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The cache access operation is divided into sequential stages: tag memory access followed by selective cache content comparison. This segmentation transforms the traditional parallel operation into a staged process where only relevant cache sets are compared after tag matching, reducing the overall access time while preserving the cache hit rate benefits of multi-way set associative structure.

Inventive Principle:
Principle #1Segmentation

3Productivity

If cache capacity is increased to match processor speed, then processor performance is improved, but physical size and cost of cache memory increase

Engineering Contradiction:
Improveprocessor performanceVSAvoidcache memory size
Core Design Contradiction:
ProductivityVSVolume of stationary object

Solution Approach 1:

The patent introduces a hierarchical dimension to cache organization by separating tag storage from content storage in different memory structures. The tag memory uses a different addressing and organization scheme than the main cache content, effectively adding a dimensional layer to the cache architecture. This allows efficient tagging with smaller tag memory while maintaining larger cache capacity, thus improving processor performance without proportionally increasing overall cache size.

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

Data Source

PatentUS9141388B2High-performance cache system and method
Publication Date: 2015.09.22 SHANGHAI XINHAO MICROELECTRONICS
  • US9141388B2 patent drawing
  • US9141388B2 patent drawing
  • US9141388B2 patent drawing

AI summary

A digital system includes a processor core and a cache control unit. The processor core can be coupled to a first memory containing data and a second memory with a faster speed than the first memory, and is configured to execute a segment of instructions having at least one instruction accessing the data from the second memory using a base register. The cache control unit is configured to be coupled to the first memory, the second memory, and the processor core to fill the data from the first memory to the second memory before the processor core executes the instruction accessing the data, and is further configured to examine the segment of instructions to extract instruction information containing at least data access instruction information and last register updating instruction information and to create a track corresponding to the segment of instructions based on the extracted instruction information.