Dynamic Buffer Allocation for Packet Transmission Channels

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed memory systems face challenges in ensuring smooth information propagation and avoiding deadlocks due to the lack of a central mechanism for regulating transaction initiation, leading to resource conflicts and suboptimal buffer utilization in packet-based communication systems.

Innovation Solution

Implementing a dynamic buffer allocation mechanism that tracks traffic history across communication channels and reallocates buffers based on relative traffic levels to optimize buffer usage and prevent deadlocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If buffers are statically allocated to communication channels, then buffer allocation is simple and predictable, but buffer utilization efficiency decreases when traffic patterns vary

Engineering Contradiction:
Improvebuffer allocation simplicityVSAvoidbuffer utilization efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements dynamic buffer allocation where the buffer allocation unit continuously monitors traffic history and reallocates buffers among communication channels based on current traffic demands. This transforms the static buffer allocation system into a dynamic one that adapts to varying traffic patterns, resolving the contradiction between allocation simplicity and utilization efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs feedback mechanisms by tracking traffic history and using this information to inform buffer reallocation decisions. The buffer allocation unit receives feedback about channel utilization and adjusts buffer distribution accordingly, ensuring high utilization efficiency while maintaining manageable complexity through data-driven decisions.

Inventive Principle:
Principle #23Feedback

2Productivity

If buffers are dynamically reallocated based on traffic history, then buffer utilization efficiency improves, but system complexity increases

Engineering Contradiction:
Improvebuffer utilization efficiencyVSAvoidbuffer allocation mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the buffer management function into a dedicated buffer allocation unit that operates independently. This unit separately handles traffic history tracking and buffer reallocation decisions, isolating the complexity from the rest of the system. The segmentation allows complex dynamic allocation without overwhelming the overall system architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The buffer allocation unit acts as an intermediary between the communication channels and the physical buffers. It mediates the allocation process by receiving traffic history data, making reallocation decisions, and managing buffer assignments. This intermediary layer encapsulates the complexity of dynamic allocation, presenting a simplified interface to other system components.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If multiple devices are attached to a shared bus, then device connectivity increases, but bandwidth decreases due to capacitive load and frequency limitations

Engineering Contradiction:
Improvedevice connectivityVSAvoidbus bandwidth
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the shared bus into multiple virtual channels that operate independently. Each virtual channel can handle transactions separately, effectively dividing the bus resources among multiple devices. This segmentation allows more devices to access the bus simultaneously without the traditional capacitive load penalties, resolving the contradiction between device connectivity and bandwidth availability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention adds a virtual channel dimension to the traditional shared bus architecture. Instead of competing for the same physical bus resources, devices can utilize different virtual channels, effectively creating an additional dimension for resource allocation. This dimensional expansion maintains high device connectivity while preserving bandwidth through virtualized resource separation.

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

4Reliability

If virtual channels are used to reduce conflicts, then deadlock situations are avoided, but buffer space requirements increase

Engineering Contradiction:
Improvedeadlock avoidanceVSAvoidtotal buffer space required
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the buffer resources across multiple virtual channels through dynamic reallocation. Instead of dedicating fixed buffer spaces to each virtual channel, the system combines buffers into a shared pool that can be dynamically allocated to any channel based on current needs. This merging maintains deadlock avoidance through virtual channel separation while reducing total buffer requirements through efficient resource sharing.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The buffer allocation unit provides universal buffer management that serves multiple virtual channels simultaneously. Each buffer can serve different virtual channels at different times, making the buffer resources multi-functional. This universality allows the system to maintain reliable deadlock-free operation through virtual channel isolation while reducing the total quantity of buffers needed through flexible reuse.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8103788B1Method and apparatus for dynamically reallocating buffers for use in a packet transmission
Publication Date: 2012.01.24 ADVANCED MICRO DEVICES INC
  • US8103788B1 patent drawing
  • US8103788B1 patent drawing
  • US8103788B1 patent drawing

AI summary

Various embodiments of systems and methods for dynamically reallocating buffers used in communicating packets in various communication channels are disclosed. In some embodiments, a method may involve transmitting packets in several communication channels dependent on availability of buffers allocated among the communication channels; tracking a history of packet traffic in each of the communication channels; and dynamically reallocating one or more of the buffers dependent on the history.