Cache Parallel Tag Data Access Partial Match
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cache designs face challenges in maintaining energy efficiency while reducing latency, particularly in higher level caches with high associativity, where traditional way prediction and partial tag matching techniques are less effective and can compromise energy efficiency and timeliness.
Innovation Solution
A cache system with a data array and a tag array performs parallel tag and data access using partial tag values, where exclusivity circuitry ensures that only one partial tag value can generate a match condition, limiting energy expenditure to that of sequential access, and an additional bit is used to control the match condition, allowing efficient data access without unnecessary energy consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If parallel tag and data access is implemented, then access latency is reduced, but energy consumption increases due to reading out multiple incorrect data values
Solution Approach 1:
The tag is divided into a full tag (for accurate identification) and a partial tag (for early filtering). The partial tag enables preliminary comparison with cache entries to identify potential matches before full tag comparison, allowing the system to segment the access process into early filtering and final verification stages.
Solution Approach 2:
The data array is accessed in parallel with the tag array using partial tags before the full tag comparison is complete. This preliminary action allows potential data values to be read out early based on partial tag matching, and if the full tag subsequently matches, the data is quickly output. This reduces latency by performing preliminary data access before tag comparison completion.
2Loss of time
If way prediction techniques are used in high associativity caches, then access time is improved, but energy efficiency deteriorates due to inaccurate predictions
Solution Approach 1:
Instead of performing full tag comparisons for all cache ways in parallel (excessive action), the invention uses partial tag comparisons to filter and identify only the relevant cache ways that need full comparison. This partial action approach reduces the number of full comparisons needed, improving energy efficiency while maintaining fast access through parallel processing of filtered ways.
Data Source
AI summary
A data processing apparatus has a cache with a data array and a tag array. The tag array stores address tag portions associated with the data values in the data array. The cache performs a tag lookup, comparing a tag portion of a received address with a set of tag entries in the tag array. The data array includes a partial tag store storing a partial tag value in association with each data entry. In parallel with the tag lookup, a partial tag value of the received address is compared with partial tag values stored in association with a set of data entries in said data array. A data value is read out if a match condition occurs. Exclusivity circuitry ensures that at most one partial tag value of said partial tag values stored in association with said set of data entries can generate said match condition.


