Dual-Memory Decompression Buffering to Reduce Read Port Contention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems face challenges in efficiently decompressing data due to exponential data growth, leading to increased computational demands and latency, as they store data in compressed form and require decompression before processing, which drives up power consumption and introduces data retrieval latency.

Innovation Solution

A decompression system with a dual-port memory configuration, including a dictionary memory with one read and one write port, and an uncompressed mirror write buffer with separate read and write ports, allowing concurrent back-reference and uncompressed data readout operations, reducing the number of ports and latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored in compressed form to reduce storage capacity requirements, then storage efficiency is improved, but decompression latency and computational overhead increase

Engineering Contradiction:
Improvestorage capacityVSAvoiddecompression latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The decompression system performs preliminary actions by pre-fetching and decompressing data blocks before they are actually needed for processing. The controller predicts which data blocks will be needed and initiates decompression in advance, storing results in buffer memory. This eliminates wait time during actual processing operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a time dimension to the storage-retrieval operation by implementing asynchronous decompression. Multiple data blocks are decompressed at different times in parallel, transforming a sequential single-dimension operation into a multi-dimensional time-sliced process that improves throughput.

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

2Ease of operation

If decompression is performed before data processing, then data usability is improved, but power consumption increases

Engineering Contradiction:
Improvedata usabilityVSAvoidpower consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The system performs partial decompression by only decompressing the portion of compressed data that is currently needed for processing, rather than decompressing entire data sets. The buffer memory holds only the necessary decompressed portions, reducing unnecessary computational energy expenditure.

Inventive Principle:
Principle #16Partial or excessive action

3Device complexity

If a single-port memory is used for dictionary storage, then device complexity is reduced, but read port contention and latency increase

Engineering Contradiction:
Improvememory port configurationVSAvoidread access speed
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The memory system is segmented into multiple functional units: dictionary memory for storing compression dictionaries, buffer memory for holding decompressed data, and separate read/write ports for each function. This segmentation allows simultaneous dictionary access and data buffering without port contention.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A buffer memory acts as an intermediary between the compressed data storage and the processing units. It decouples the read operations from the dictionary memory, allowing the dictionary to be accessed at full speed while the buffer handles data movement and temporary storage.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Quantity of substance

If decompression is performed in-place, then memory usage is optimized, but data integrity and reliability decrease

Engineering Contradiction:
Improvememory usageVSAvoiddata integrity
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The decompressed data is extracted from the compressed storage and placed into a separate buffer memory region. This physical separation ensures that original compressed data remains unchanged and intact, while decompressed data can be processed independently without risking corruption of the source.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11048413B2Method for reducing read ports and accelerating decompression in memory systems
Publication Date: 2021.06.29 SAMSUNG ELECTRONICS CO LTD
  • US11048413B2 patent drawing
  • US11048413B2 patent drawing
  • US11048413B2 patent drawing

AI summary

A decompression system includes a first memory including a first write port configured to receive decompressed data from a decompressor, and a first read port configured to receive a back-reference read request, the first memory being configured to output the decompressed data to the decompressor in response to receiving the back-reference read request at the first read port, and a second memory including a second write port electrically coupled to the first write port and configured to receive the decompressed data, the second memory being configured to buffer the decompressed data for retrieval by a receiver.