Intermediate Storage for Adapter Register Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing number of registers in adapters within computing systems necessitates inefficient translation operations, especially when a wide address range is involved, hindering efficient communication between computing systems and devices.

Innovation Solution

Implementing an intermediate storage location with a wildcard register that allows data to be written directly to the register using an allocated address range and an identifier, reducing the need for extensive address translations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If adapters use a larger number of registers with a wide address range, then the adapter's functionality and intelligence are improved, but the translation operations become less efficient

Engineering Contradiction:
Improveadapter functionalityVSAvoidtranslation operation efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent introduces an intermediate storage location as a mediator between the computing system and the adapter registers. Instead of directly accessing multiple adapter registers with a wide address range, the system writes data to this intermediate location first, which then distributes the data to the appropriate adapter registers. This intermediary approach reduces the translation operations required and improves communication efficiency while maintaining the adapter's enhanced functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If more registers are added to adapters, then communication capabilities are enhanced, but the complexity of address translation increases

Engineering Contradiction:
Improvecommunication capabilityVSAvoidaddress translation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the register access operation into two distinct parts: writing to an intermediate storage location and then updating the target adapter register based on an identifier. This segmentation separates the data writing function from the address translation function, reducing the complexity of address translation while maintaining the ability to communicate with multiple registers. The intermediate location acts as a buffer that simplifies the overall address translation process.

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If a wide address range is used for adapter registers, then more registers can be addressed, but the number of translation operations increases

Engineering Contradiction:
Improvenumber of addressable registersVSAvoidtranslation operation time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The intermediate storage location serves as a mediator that reduces translation operation time. Instead of performing translations for each individual register access across a wide address range, the system performs a single translation to the intermediate location, then uses identifiers to quickly map data to the correct adapter registers. This significantly reduces the time spent on translation operations while maintaining the ability to address many registers.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9256562B1Method and system for communication between a computing system and a device
Publication Date: 2016.02.09 MARVELL ASIA PTE LTD
  • US9256562B1 patent drawing
  • US9256562B1 patent drawing
  • US9256562B1 patent drawing

AI summary

Machine implemented method and system are provided. A processor for a computing device allocates an address range with an address to write to an intermediate storage location. The processor configures a device communicating with the computing device for writing information at the intermediate storage location and at a plurality of storage locations. The computing device sends the address for the intermediate storage location with data that needs to be written at one of the plurality of storage locations with an identifier identifying the one of the plurality of storage locations; and the device first writes the data at the intermediate storage location and then updates the one of the plurality of storage locations identified by the identifier.