Browse Prior Art Database

A Method and System for Enabling Concurrent Access and Replacement of Cache Entries within the Same Congruence Class in an N-way Set Associative Cache

IP.com Disclosure Number: IPCOM000238477D
Publication Date: 2014-Aug-27
Document File: 4 page(s) / 52K

Publishing Venue

The IP.com Prior Art Database

Abstract

A method and system is disclosed for enabling concurrent access and replacement of cache entries within the same congruence class in an n-way set associative cache.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 26% of the total text.

Page 01 of 4

A Method and System for Enabling Concurrent Access and Replacement of Cache Entries within the Same Congruence Class in an N-way Set Associative Cache

Disclosed is a method and system for enabling concurrent access and replacement of cache entries within the same congruence class in an n-way set associative cache.

The method and system concurrently replaces one or more compartments in a congruence class when remaining compartments are accessed and updated. Here, the method protects a compartment when the one or more compartments are replaced. The compartment is protected in order to prevent selection of the same compartment again in subsequent replacement operations. The method and system prevents the cache compartment, selected as a target compartment for a new cache line installation, from being selected again by subsequent transactions without using the Least Recently Used (LRU) cache state. A compartment selection logic is used to prevent the

selection of the same compartment. The selection logic operates based on an additional logic and a definition of a dedicated LRU mask signal from each eviction and installation engine to indicate that the target compartment is actively in use for a cache line installation. The new LRU mask signal is activated immediately after a target compartment has been selected, and does not require any cache directory accesses.

Activating the new LRU mask minimizes a delay of executing the compartment

selection logic.

Each transaction accessing the cache is loaded into one of a plurality of cache access controllers. Each of the cache access controllers manages a sequence of actions necessary to complete a given transaction. The first action of any cache access controller is to access the cache directory and determine the initial state of the address in question. When a transaction is for a memory storage address which is not present in the cache, the transaction activates one of a plurality of load/store engines. A

load/store engine manages eviction of an entry from the cache and installation of the requested address and data for the transaction.

During the initial access of the cache, the selection logic evaluates the state in every compartment of the congruence class to identify which compartment should be targeted for one or more of an eviction and installation of a new address. The selection logic typically looks for empty or invalidated compartments first, since the eviction step can be skipped and the new address be installed immediately. If there are no empty or invalid compartments, the selection logic selects a compartment to evict before the new address can be installed.

The load/store engine is initially loaded with the address and the type of initiating transaction, the location of the target compartment and its present state and address.

The load/store engine asserts a signal to enable the LRU mask to indicate that the provided contents of the compartment are being updated. The load/sto...