Home Agent Architecture for Heterogeneous Cache Coherency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing coherency protocols are designed for systems where all agents are of the same type, failing to accommodate the diverse coherency requirements of client SoCs that integrate cores and devices with different memory access protocols, leading to gaps in behavior and rule definitions.
Innovation Solution
An apparatus and method for a home agent that supports multiple coherency protocols, enabling seamless communication and coherency management among agents with varying coherency requirements, such as those with internal or shared coherent caches, by employing a unified hint generation mechanism and power management logic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a unified coherency protocol is used for all agents, then protocol simplicity is improved, but adaptability to diverse coherency requirements deteriorates
Solution Approach 1:
The home agent dynamically determines which coherency protocol to use based on the specific agent being accessed. The system switches between different protocol behaviors (MXC-based for coherent agents, AXI-based for incoherent agents) depending on the agent type, making the protocol adaptive rather than static.
Solution Approach 2:
The system changes the protocol parameters and behavior based on the agent's coherency capabilities. For agents with internal or shared coherent caches, the system uses MXC-based protocols with specific hint generation; for agents without coherent caches, it uses AXI-based protocols with different hint handling, effectively changing protocol parameters to match agent requirements.
2Adaptability or versatility
If separate coherency protocols are used for different agent types, then adaptability to diverse coherency requirements is improved, but device complexity deteriorates
Solution Approach 1:
The home agent is designed as a universal component that can handle multiple coherency protocols (MXC-based and AXI-based) through a single unified architecture. It determines the appropriate protocol based on the agent being accessed, eliminating the need for separate dedicated protocols for different agent types.
Solution Approach 2:
The home agent acts as an intermediary between the L3 cache and various types of agents. It mediates the coherency management by generating appropriate hints based on the agent's coherency capabilities, translating between different protocol requirements and the underlying cache coherence mechanism.
3Reliability
If coherency hints are generated for all agents, then coherency management is improved, but power consumption deteriorates
Solution Approach 1:
The system applies coherency hint generation selectively based on the local characteristics of each agent. For agents with internal or shared coherent caches, hints are generated to maintain coherence; for agents without coherent caches (like AXI agents), different hint handling is applied, optimizing power usage based on the specific coherency needs of each agent.
Data Source
AI summary
Apparatus and method for a home agent supporting different protocols. For example: coupling, by a home agent, a plurality of functional circuit blocks to a memory; resolving, by coherency domain circuitry of the home agent, coherency requirements associated with agent requests; and servicing, by memory domain circuitry of the home agent, agent requests by writing or reading one or more cache lines to or from the memory, respectively, wherein a first subset of the agent requests are to be resolved by the coherency domain circuitry, a second subset of the agent requests are to be resolved by the memory domain circuitry, and a third subset of the agent requests are to be resolved by both the coherency domain circuitry and the memory domain circuitry.


