Hazard Detection Circuitry Using Buffer and Counter Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data processing systems face challenges in efficiently detecting hazard conditions, such as read after write (RAW) hazards, due to the difficulty in tracking pending write access requests, leading to performance restrictions or high hardware and power costs when implementing sufficient buffers or counters.

Innovation Solution

A data processing apparatus with hazard detection circuitry that uses a combination of buffers and counters to keep a record of pending write access requests, allowing for accurate hazard checking without the need for excessive buffer space, thereby improving performance and reducing power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a large number of buffers are implemented to track pending write access requests, then hazard detection accuracy is improved, but hardware cost and power consumption increase

Engineering Contradiction:
Improvehazard detection accuracyVSAvoidhardware cost
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the tracking mechanism into two distinct components: buffers for storing write address information and counters for tracking the number of pending writes. This segmentation allows the system to use small, fixed-size buffers combined with counters, rather than requiring large buffers, thereby reducing hardware cost while maintaining hazard detection accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a temporal dimension by using counters to track the number of pending write operations. Instead of relying solely on spatial storage (large buffers), the system uses counters to monitor write depth over time, enabling accurate hazard detection with minimal buffer space.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If a large number of buffers are implemented to track pending write access requests, then hazard detection accuracy is improved, but power consumption increases

Engineering Contradiction:
Improvehazard detection accuracyVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by stationary object

Solution Approach 1:

By segmenting the tracking functionality into separate buffers and counters, the system minimizes the size of buffered memory, which directly reduces power consumption. Counters require minimal power compared to large buffer storage and access operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses simple, low-power counters instead of expensive, high-power large buffers. The counters are inexpensive computational elements that can be updated efficiently, replacing the need for extensive buffered storage that would consume significant power.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Difficulty of detecting and measuring

If buffers are implemented to track pending write access requests, then hazard detection capability is improved, but device complexity increases

Engineering Contradiction:
Improvehazard detection capabilityVSAvoiddevice complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The patent divides the hazard detection functionality into distinct segments: buffer management for address storage, counter management for depth tracking, and hazard checking logic. This modular segmentation makes the overall complex system more manageable and implementable while maintaining detection capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The counters serve as intermediaries between the write access requests and the hazard detection logic. Rather than directly comparing all pending writes with new reads, the counters provide a simplified intermediate representation of write depth, reducing the complexity of hazard detection.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If re-ordering of transfers is allowed to improve bus efficiency, then productivity is improved, but hazard conditions may occur

Engineering Contradiction:
Improvebus efficiencyVSAvoidhazard condition occurrence
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms where the hazard detection circuitry continuously monitors pending write operations using buffers and counters. When a potential RAW hazard is detected (a read operation that could occur before a pending write completes), the system provides feedback to stall the read, ensuring correctness while allowing re-ordering to proceed when safe.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary hazard checking before allowing read operations to proceed. By checking the buffer and counter state in advance, the system can prevent hazard conditions from occurring, enabling aggressive re-ordering policies without compromising reliability.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS7941584B2Data processing apparatus and method for performing hazard detection
Publication Date: 2011.05.10 ARM LTD
  • US7941584B2 patent drawing
  • US7941584B2 patent drawing
  • US7941584B2 patent drawing

AI summary

A data processing apparatus and method are provided for performing hazard detection in a series of access requests issued by processing circuitry for handling by one or more slaves. The requests include one or more write access requests to be performec by an addressed slave device. Hazard detection circuitry comprises a pending write access history storage having at least one buffer and at least one counter for keeping a record of each pending write access request. Update circuitry responds receipt of a write access request to perform an update process to identify that write access request as a pending write access request in one of the buffers, and if the identity of another pending write access request is overwritten by that update process, to increment a count value a counter. Hazard checking circuitry is then responsive to at least a subset of the access requests to be issued by the processing circuitry, to reference pending write access history storage in order to determine whether a hazard condition occurs. The manner in which the update circuitry jses a combination of buffers aid counters to keep a record of each pending write access request provides improved performance with respect to known prior art techniques, without the hardware cost that would be associated with increasing the number of buffers.