Parallel Data Decompression Using Split Flag and Literal Streams

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data compression and decompression techniques, such as LZ77 and LZ78 algorithms, are inefficient in handling data with minimal repetition, as they rely on distance-length pairs and literals, which can lead to suboptimal compression ratios and are not well-suited for parallel processing.

Innovation Solution

The proposed solution involves separating compressed data into streams of distance-length pairs, literals, and flags, using a detector to identify consecutive literal flags, and a data copier to efficiently decode data into an output memory area, optimized for use with processors like the Cell microprocessor, allowing for parallel processing and improved decompression efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional LZ77/LZ78 algorithms are used for data compression, then compression is achieved by replacing data with distance-length pairs, but decompression efficiency deteriorates due to sequential processing requirements and suboptimal performance on data with minimal repetition

Engineering Contradiction:
Improvedecompression efficiencyVSAvoidprocessing structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the decompression process into three independent parallel streams: a distance-length pair stream, a literal stream, and a flag stream. Each stream is processed independently and simultaneously, eliminating the sequential dependencies in traditional LZ77/LZ78 decompression. The flag stream acts as a control mechanism that directs the other streams, enabling parallel execution while maintaining correct decompression logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the traditional single-stream sequential decompression into a multi-dimensional parallel processing architecture. By introducing the flag stream as a control dimension and separating data into multiple independent streams, the system achieves parallelism across multiple processing dimensions simultaneously, fundamentally changing the temporal execution model from sequential to concurrent.

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

2Speed

If distance-length pairs and literals are used to encode data, then compression is achieved, but the number of instructions required for decompression increases, reducing processing speed

Engineering Contradiction:
Improvedecompression speedVSAvoidnumber of instructions
Core Design Contradiction:
SpeedVSExtent of automation

Solution Approach 1:

The patent uses copying mechanisms where the flag stream controls the copying of data from either the distance-length pair stream or the literal stream. The data copier component automatically copies the appropriate number of data items based on flag values, reducing the instruction count by eliminating the need for individual processing of each distance-length pair or literal through complex decoding logic.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The flag stream serves itself as a control mechanism that automatically directs the decompression process. By encoding the control logic directly in the flag stream, the system eliminates the need for external control logic or complex state machines, allowing the decompression process to self-regulate based on the flag values without requiring additional instruction overhead.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8253608B2Data compression and decompression
Publication Date: 2012.08.28 SONY INTERACTIVE ENTERTAINMENT LLC
  • US8253608B2 patent drawing
  • US8253608B2 patent drawing
  • US8253608B2 patent drawing

AI summary

Data decompression apparatus is disclosed which is arranged to act on compressed data comprising: an ordered stream of references to groups of previously decoded data items; an ordered stream of direct representations of data items to be decoded; and an ordered stream of flags indicating whether each successive decompression operation should act on a reference or a direct representation. The apparatus comprises an output memory area; a detector to detect the number n of consecutive flags indicating that a decompression operation should act on a direct representation; and a data copier for copying to the output memory area either a next referenced group of previously decoded data or a group of n consecutive direct representations from the ordered stream of direct representations.