Encoded Data Arrays With Independent Segments for Fast Decoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data encoding techniques are inefficient in decoding data streams due to the need for extensive analysis to identify independent segments, which hinders parallel processing and increases processing time and resource usage.

Innovation Solution

The technology encodes data arrays as a plurality of independent segments, each capable of being decoded independently, with a custom header providing information on the location of these segments, allowing for immediate decoding without extensive analysis.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data arrays are encoded using conventional block-by-block compression techniques, then data compression is achieved to reduce bandwidth and memory consumption, but decoding efficiency deteriorates due to the need for extensive analysis to identify independent segments

Engineering Contradiction:
Improvedata compressionVSAvoiddecoding efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent divides the encoded data stream into multiple independent segments, each containing complete image data that can be decoded separately. This segmentation is achieved by organizing the compressed data into fixed-size blocks with explicit segment delimiters, allowing the decoder to process multiple segments simultaneously without extensive analysis to identify boundaries.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If conventional encoding techniques are used without explicit segment information, then data compression is maintained, but processing time increases due to the need for extensive analysis during decoding

Engineering Contradiction:
Improvedata compressionVSAvoidprocessing time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent performs preliminary organization of the encoded data stream during the encoding phase, where segments are explicitly delimited and structured in a predetermined format. This preliminary action includes adding segment headers or delimiters that mark the beginning and end of each independent segment, so that during decoding, no extensive analysis is needed to identify segment boundaries - the structure is already in place for immediate processing.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If data is encoded as a continuous stream without independent segment structure, then compression efficiency is improved, but parallel processing capability is lost

Engineering Contradiction:
Improvecompression efficiencyVSAvoidparallel processing capability
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent explicitly segments the compressed data stream into multiple independent, equally-sized blocks, where each block represents a complete image or image portion that can be decoded independently. This segmentation is implemented through fixed-size buffering and explicit delimitation, enabling parallel processing architectures to decode multiple segments simultaneously while maintaining compression efficiency through the use of standard compression algorithms on each segment.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10771792B2Encoding data arrays
Publication Date: 2020.09.08 ARM LTD
  • US10771792B2 patent drawing
  • US10771792B2 patent drawing
  • US10771792B2 patent drawing

AI summary

When encoding an array of data elements, or a stream of such arrays, using an encoder comprising encoding circuitry operable to encode the array(s) of data elements as a plurality of independent segments, wherein each independent segment can be decoded independently; a header is generated for output with an encoded data stream including the plurality of independent segments wherein the header contains information indicative of the location of each of the plurality of independent segments within the encoded data stream. When an encoded data stream associated with such a header is to be decoded, a decoder may thus read the header to identify the location of the independent segment within the data stream and then read and decode the identified segments from the identified location(s) in the data stream.