Video Decoding Pixel Cache Memory Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video decoding technologies face challenges in effectively managing memory utilization and minimizing idle time during the processing of luminance and chrominance signals, particularly in high-resolution video decoding.

Innovation Solution

A video decoding apparatus and method that includes an entropy decoder, buffers, and a controller to manage the storage and processing of motion compensation and intra prediction data, utilizing a pixel cache and multiplexers to optimize memory usage and synchronize the processing of luminance and chrominance signals.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If motion compensation reference data is stored in a pixel cache and then transferred to a buffer, then memory utilization is improved, but processing time increases due to sequential operations

Engineering Contradiction:
Improvememory utilizationVSAvoidprocessing time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The pixel cache pre-loads and stores motion compensation reference data from memory before the buffer needs it for processing. This preliminary action ensures that when the buffer requires the data, it is already available, eliminating waiting time and maintaining high memory utilization without sequential bottlenecks.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The pixel cache acts as an intermediary between the memory and the buffer. It receives motion compensation reference data from memory, holds it temporarily, and then supplies it to the buffer when needed. This intermediary structure allows parallel operations and eliminates direct sequential dependencies between memory and buffer.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If luminance and chrominance signals are processed sequentially, then processing simplicity is maintained, but idle time increases reducing overall efficiency

Engineering Contradiction:
Improveprocessing efficiencyVSAvoididle time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The processing system is segmented into separate processing paths for luminance signals and chrominance signals. Each path has dedicated processing units that can operate independently and simultaneously. This segmentation eliminates the need for sequential processing while maintaining processing simplicity within each path, thereby reducing idle time and improving overall productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

By implementing parallel processing paths, the system ensures that useful action continues without interruption. While luminance signal processing is ongoing, chrominance signal processing also proceeds simultaneously, eliminating idle time periods where processors would otherwise be waiting for sequential operations to complete.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20240323417A1Video decoding apparatus and video decoding method
Publication Date: 2024.09.26 SAMSUNG ELECTRONICS CO LTD
  • US20240323417A1 patent drawing
  • US20240323417A1 patent drawing
  • US20240323417A1 patent drawing

AI summary

A video decoding apparatus includes a first buffer storing input data received from an entropy decoder, a first motion compensation processor extracting motion compensation reference data based on the input data, and store the motion compensation reference data in a pixel cache, a second buffer, and a controller. The input data comprises one of first data including motion information and second data including intra prediction information. The controller controls the second buffer to store the motion compensation reference data stored in the pixel cache when the input data is the first data, and controls the second buffer to store the second data stored in the first buffer when the input data is the second data.