Peripheral Data Transfer Using Full Cache Line Writes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer systems experience inefficiencies in data transfer between host processors and peripherals due to partial cache line writes, which disrupt normal memory access patterns and reduce system bandwidth, especially when transferring status information from peripherals to host memory.

Innovation Solution

A method and system that determine a lower limit of available data entry positions in a host memory queue to selectively use full cache line writes for transferring data entries from peripherals, minimizing partial cache line writes and maintaining system efficiency without overwriting unprocessed data entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If partial cache line writes are used to transfer small data entries from peripheral to host memory, then memory space utilization is improved, but system bandwidth is reduced and memory access patterns are disrupted

Engineering Contradiction:
Improvememory space utilizationVSAvoidsystem bandwidth
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The peripheral device performs preliminary actions by pre-calculating the lower limit of available data entry positions and pre-determining whether full or partial cache line writes are needed. This allows the system to proactively optimize memory access patterns before data transfer occurs, avoiding disruptive partial writes when full cache line writes can be used instead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the parameter of cache line write size dynamically based on the lower limit calculation. When the lower limit indicates sufficient available positions, the system switches from partial to full cache line writes, thereby improving bandwidth utilization while maintaining memory space efficiency.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If full cache line writes are used to transfer data entries from peripheral to host memory, then system bandwidth is improved, but data corruption risk increases when overwriting unprocessed entries

Engineering Contradiction:
Improvesystem bandwidthVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The peripheral device uses feedback from the host memory queue status to determine the lower limit of available data entry positions. This feedback mechanism ensures that full cache line writes only occur when sufficient unprocessed entries have been consumed, preventing data corruption while maintaining high bandwidth performance.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary calculation of the lower limit before executing full cache line writes. This pre-check ensures that the write operation will not overwrite unprocessed data entries, thereby preventing data corruption while still allowing efficient full cache line transfers.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the peripheral continuously monitors and calculates lower limits for data entry positions, then data corruption is prevented, but device complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidperipheral control logic
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The peripheral device performs self-service by independently calculating the lower limit of available data entry positions using its own internal counters and queue status. This eliminates the need for continuous host processor intervention, reducing overall system complexity while maintaining data integrity through the peripheral's autonomous monitoring and calculation capabilities.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7689738B1Peripheral devices and methods for transferring incoming data status entries from a peripheral to a host
Publication Date: 2010.03.30 ADVANCED MICRO DEVICES INC
  • US7689738B1 patent drawing
  • US7689738B1 patent drawing
  • US7689738B1 patent drawing

AI summary

Methods and systems are provided for reducing partial cache writes in transferring incoming data status entries from a peripheral device to a host. The methods comprise determining a lower limit on a number of available incoming data status entry positions in an incoming data status ring in the host system memory, and selectively transferring a current incoming data status entry to the host system memory using a full cache line write if the lower limit is greater than or equal to a first value. Peripheral systems are provided for providing an interface between a host computer and an external device or network, which comprise a descriptor management system adapted to determine a lower limit on a number of available incoming data status entry positions in an incoming data status ring in a host system memory, and to selectively transfer a current incoming data status entry to the host system memory using a full cache line write if the lower limit is greater than or equal to a first value.