VIPT Cache Synonym Management via Directory Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for managing synonyms in VIPT caches result in burdensome data storage and cache searching operations, leading to data inconsistencies and inefficiencies due to the need for additional storage bits and time-consuming searches to invalidate all related virtual address synonyms during updates.
Innovation Solution
A directory-based methodology is introduced, where the cache lines are tracked using a directory divided into separate parts based on a specified virtual address bit, allowing for efficient updating and invalidation of cache lines corresponding to synonyms in a single clock cycle without exhaustive cache searches.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional methods are used to manage synonyms in VIPT caches, then data consistency can be maintained through exhaustive cache searches, but the system suffers from burdensome data storage requirements and time-consuming search operations
Solution Approach 1:
The patent segments the synonym management process by dividing cache lines into two categories: those with synonyms and those without. A synthesis storage structure is selectively applied only to cache lines that have synonyms, while cache lines without synonyms are managed conventionally. This segmentation eliminates the need for exhaustive searches across the entire cache, reducing search time while maintaining data consistency for the relevant subset of cache lines.
Solution Approach 2:
The patent performs preliminary identification of synonym relationships before cache operations are needed. By pre-establishing the synthesis storage structure for cache lines with synonyms and organizing the synonym information in advance, the system avoids time-consuming searches during actual cache operations. The preliminary organization of synonym data enables rapid access and validation during cache hits and misses.
2Reliability
If conventional methods are used to manage synonyms in VIPT caches, then all virtual address synonyms can be tracked, but additional storage bits are required for every L2 tag index and synonym identifier
Solution Approach 1:
The patent applies local quality by making the storage structure adaptive to the specific characteristics of each cache line. Instead of uniformly allocating storage bits for all cache lines, the synthesis storage structure is selectively implemented only for cache lines that actually have synonyms. This local application of enhanced tracking capabilities reduces the overall storage bit requirement while maintaining accurate synonym tracking for the necessary cache lines.
Solution Approach 2:
The patent changes the storage parameter from a fixed, uniform allocation of synonym tracking bits to a dynamic, selective allocation. The synthesis storage structure modifies how synonym information is stored by using conditional logic to determine which cache lines require synonym tracking. This parameter change from static to dynamic storage allocation reduces the quantity of storage bits needed while preserving synonym tracking accuracy for relevant entries.
3Reliability
If exhaustive cache searches are performed to invalidate all virtual address synonyms during updates, then data inconsistencies are prevented, but the operation becomes time-consuming and reduces system productivity
Solution Approach 1:
The patent extracts the synonym identification and validation functionality from the general cache search process. By separating the synthesis storage structure from the main cache data and organizing synonym information independently, the system can validate and invalidate synonyms without performing exhaustive searches through the entire cache. This extraction of synonym management into a dedicated structure enables rapid updates while maintaining data consistency.
Solution Approach 2:
The synthesis storage structure acts as an intermediary between the cache control logic and the actual cache data. During update operations, this intermediary structure enables rapid identification of affected synonym cache lines without requiring direct, time-consuming searches of the entire cache. The intermediary organization of synonym information mediates between the need for data consistency and the requirement for fast update operations.
Data Source
AI summary
Methods and systems for managing synonyms in VIPT caches are disclosed. A method includes tracking lines of a copied cache using a directory, examining a specified bit of a virtual address that is associated with a load request and determining its status and making an entry in one of a plurality of parts of the directory based on the status of the specified bit of the virtual address that is examined. The method further includes updating one of, and invalidating the other of, a cache line that is associated with the virtual address that is stored in a first index of the copied cache, and a cache line that is associated with a synonym of the virtual address that is stored at a second index of the copied cache, upon receiving a request to update a physical address associated with the virtual address.


