Data Packer Aligning Write Data for Memory Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data packers for parallel processing units (PPUs) inefficiently write data to memory by using smaller burst sizes than the maximum capacity, leading to underutilization of memory bandwidth and wasted clock cycles.

Innovation Solution

A data packer system that accumulates and aligns write data from multiple clients to match the maximum burst size of the memory interface, using alignment buffers and FIFOs to ensure efficient data packing and alignment, thereby optimizing memory bandwidth utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a data packer uses a smaller burst size to write data to PP memory, then it can accommodate clients with lower bandwidth requirements, but it underutilizes the memory bandwidth and wastes clock cycles

Engineering Contradiction:
Improvecompatibility with clients of different bandwidthsVSAvoidmemory bandwidth utilization
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent divides the data packer into multiple independent lanes, each capable of handling different burst sizes. This segmentation allows each lane to be independently configured for specific client bandwidth requirements while the aggregate system achieves high bandwidth utilization by combining multiple lanes working in parallel.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimensional approach (one burst size for all clients) to a multi-dimensional approach by introducing parallel lanes with different burst size capabilities. This dimensional expansion allows simultaneous support for diverse client bandwidths while maintaining optimal memory interface utilization.

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

2Adaptability or versatility

If a data packer uses a smaller burst size, then it can interface with clients having lower write capabilities, but it requires more clock cycles to complete the same amount of data transfer

Engineering Contradiction:
Improveclient interface compatibilityVSAvoidclock cycles for data transfer
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The data packer is segmented into multiple lanes with different burst size capabilities. Clients with lower write capabilities are routed to lanes configured for smaller bursts, while other lanes continue operating at higher speeds, thereby maintaining overall time efficiency without sacrificing compatibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic lane selection and configuration, allowing the system to adaptively route client data to appropriate lanes based on client capabilities and current workload conditions. This dynamic allocation optimizes both compatibility and time efficiency.

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If a data packer writes data in small bursts, then it can interface with clients that have low write burst sizes, but it does not take full advantage of the maximum burst size PP memory can receive

Engineering Contradiction:
Improveinterface with low-capability clientsVSAvoidbandwidth utilization
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the data packer into specialized lanes: some lanes are optimized for small burst sizes to interface with low-capability clients, while other lanes are optimized for maximum burst sizes to achieve high bandwidth utilization. This segmentation resolves the contradiction by allowing both operational modes to coexist.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The data packer is designed as a multi-functional system that can simultaneously serve clients with different burst size requirements through its multiple lanes. Each lane is specialized for a particular burst size range, making the overall system universal in its ability to handle diverse client types while maintaining high productivity.

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

Data Source

PatentUS8396993B2Data packer for packing and aligning write data
Publication Date: 2013.03.12 NVIDIA CORP
  • US8396993B2 patent drawing
  • US8396993B2 patent drawing
  • US8396993B2 patent drawing

AI summary

A data packer of an input/output hub of a computer system packs and formats write data that is supplied to it before the write data is written into a memory unit of the computer system. More particularly, the data packer accumulates write data received from lower bandwidth clients for delivery to a high bandwidth memory interface. Also, the data packer aligns the write data, so that when the write data is read out from the write data packer, no further alignment is needed.