Associative Cache Bank Select Table Parallel Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multiple-bank associative caches perform better than direct-mapped caches but suffer from longer access times due to the added burden of address comparisons, necessitating methods to combine the fast access of direct-mapped caches with the performance advantages of associative caches.

Innovation Solution

Implementing a method and circuitry that access an associative cache by reading a bank select table in parallel with data access, determining whether the access is a cache hit, miss, or mispredict, and using a least recently used replacement table to optimize bank selection and replacement.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a multiple-bank associative cache is used, then cache hit ratio is improved, but access time increases due to address comparison burden

Engineering Contradiction:
Improvecache hit ratioVSAvoidaccess time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent pre-calculates and stores bank selection information in a bank select table before actual cache access occurs. When an address is accessed, the corresponding bank selection is already determined and stored, eliminating the need for real-time address comparison across multiple banks. This preliminary preparation resolves the contradiction by maintaining high cache hit ratios while reducing access time to direct-mapped cache speeds.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a bank select table as an intermediary structure between the cache address and the actual data storage locations. This intermediary pre-maps addresses to specific banks, acting as a mediator that directs access without requiring complex real-time comparisons. The bank select table enables the system to achieve associative cache performance with direct-mapped access speed, resolving the time-hit ratio contradiction.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If address comparison is performed in multiple banks, then cache performance is improved, but access speed decreases

Engineering Contradiction:
Improvecache performanceVSAvoidaccess speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The bank select table pre-determines which bank should contain data for each address before access occurs. This preliminary action stores the optimal bank selection in advance, allowing the cache to achieve high performance by directly accessing the predetermined bank without performing slow address comparisons during actual access operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the cache access function into two parts: a bank selection function (handled by the bank select table) and a data access function. By separating these functions, the system can maintain high access speed while still achieving the performance benefits of multi-bank associative caching, as the bank selection is already determined and stored separately.

Inventive Principle:
Principle #1Segmentation

3Loss of time

If a direct-mapped cache is used, then access time is reduced, but cache hit ratio decreases

Engineering Contradiction:
Improveaccess timeVSAvoidcache hit ratio
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The bank select table serves multiple functions: it acts as a direct-mapped index for fast access, while simultaneously providing the bank selection information needed for associative cache operation. This multi-functional structure allows the system to achieve both fast access times and high cache hit ratios by combining the simplicity of direct-mapped indexing with the flexibility of associative caching.

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

Solution Approach 2:

The bank select table acts as an intermediary that enables direct-mapped access speed while providing associative cache functionality. By pre-storing bank selection information, it mediates between the simple access path of direct-mapped caches and the intelligent bank selection of associative caches, achieving both fast access and high hit ratios simultaneously.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7461208B1Circuitry and method for accessing an associative cache with parallel determination of data and data availability
Publication Date: 2008.12.02 ORACLE AMERICAN INC
  • US7461208B1 patent drawing
  • US7461208B1 patent drawing
  • US7461208B1 patent drawing

AI summary

A circuit for accessing an associative cache is provided. The circuit includes data selection circuitry and an outcome parallel processing circuit both in communication with the associative cache. The outcome parallel processing circuit is configured to determine whether an accessing of data from the associative cache is one of a cache hit, a cache miss, or a cache mispredict. The circuit further includes a memory in communication with the data selection circuitry and the outcome parallel processing circuit. The memory is configured to store a bank select table, whereby the bank select table is configured to include entries that define a selection of one of a plurality of banks of the associative cache from which to output data. Methods for accessing the associative cache are also described.