Home Node Snoop Request Address Alignment for Data Bus Width Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data processing systems with multiple processor cores and shared caches, cache coherency issues arise due to differing data bus widths, leading to timing inefficiencies and sub-optimal bus utilization, as nodes with varying bus widths require data to be split and reassembled, introducing latency and inefficiency in data transfer.

Innovation Solution

A home node within the interconnect system manages cache coherency by aligning snoop requests based on data bus widths and configuring data transfer as serialized cache lines into data beats, using data combiner and splitter modules to optimize data bus utilization and minimize latency, ensuring the critical beat is transmitted first.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data is transferred between nodes with different data bus widths, then data transfer capability is improved, but serialization latency increases

Engineering Contradiction:
Improvedata bus width compatibilityVSAvoidserialization latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The home node performs preliminary alignment of the snoop request address to the data bus width of the snoop target node before initiating data transfer. This advance preparation ensures that the critical beat is properly positioned, eliminating the need for repositioning operations during data transfer and reducing serialization latency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The data transfer is segmented into multiple beats, with the critical beat identified and prioritized. The snoop response is divided into sequential beats where the critical beat is transmitted first, followed by remaining beats. This segmentation allows the system to optimize for both different bus widths and minimal latency by ensuring the most important data arrives first.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If data is split and reassembled between nodes with different data bus widths, then data transfer flexibility is improved, but bus utilization efficiency deteriorates

Engineering Contradiction:
Improvedata bus width compatibilityVSAvoidbus utilization efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system dynamically adjusts the snoop request address alignment based on the specific data bus widths of the requesting node and the snoop target node. The home node determines the appropriate alignment offset considering both bus widths, allowing optimal data transfer without unnecessary splitting or reassembly operations, thereby improving bus utilization efficiency.

Inventive Principle:
Principle #15Dynamics

3Speed

If snoop requests are sent without address alignment, then response time is reduced, but data transfer accuracy deteriorates

Engineering Contradiction:
Improvesnoop response timeVSAvoiddata alignment accuracy
Core Design Contradiction:
SpeedVSManufacturing precision

Solution Approach 1:

The home node performs preliminary alignment of the snoop request address to the data bus width of the snoop target node before initiating data transfer. This advance preparation ensures that the critical beat is properly positioned, eliminating the need for repositioning operations during data transfer and reducing serialization latency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10042766B1Data processing apparatus with snoop request address alignment and snoop response time alignment
Publication Date: 2018.08.07 ARM LTD
  • US10042766B1 patent drawing
  • US10042766B1 patent drawing
  • US10042766B1 patent drawing

AI summary

A home node of a data processing apparatus that includes a number of devices coupled via an interconnect system is configured to provide efficient transfer of data to a first device from a second device. The home node is configured dependent upon data bus widths of the first and second devices and the data bus width of the interconnect system. Data is transferred as a cache line serialized into a number of data beats. The home node may be configured to minimize the number of data transfers on the third data bus or to minimize latency in the transfer of the critical beat of the cache line.