Speculative Motion Prediction Cache for Video Decoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-definition video decoding is hindered by memory read latency due to the limited capacity and high cost of motion prediction caches, which leads to choppy playback and inefficiencies in memory bandwidth usage.

Innovation Solution

Implementing a speculative motion prediction cache that requests reference frame data during idle periods, reducing latency by pre-fetching data that may be needed for subsequent macroblocks, thereby improving decode performance and reducing memory read latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If a motion prediction cache is used to store reference frame data, then memory read latency is reduced, but the cache capacity is limited and data is quickly replaced

Engineering Contradiction:
Improvememory read latencyVSAvoidcache capacity
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The system speculatively requests reference frame data in advance during idle periods before it is actually needed for decoding. This preliminary action allows the data to be fetched and stored in the motion prediction cache before the next macroblock processing requires it, thereby reducing memory read latency without requiring larger cache capacity.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the motion prediction cache is made larger to store more reference frame data, then decode performance improves, but the cost increases

Engineering Contradiction:
Improvedecode performanceVSAvoidhardware cost
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

By speculatively requesting and pre-fetching reference frame data during idle periods, the system ensures that needed data is already in the cache when required for decoding. This approach maintains high decode performance with a smaller, more cost-effective cache by utilizing time-based optimization rather than space expansion.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If data is speculatively requested from external memory, then effective memory read latency is reduced, but extra memory read bandwidth is consumed

Engineering Contradiction:
Improveeffective memory read latencyVSAvoidmemory read bandwidth
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The system performs speculative data requests during idle periods when the motion prediction cache would otherwise be unused. This timing strategy utilizes otherwise wasted time and bandwidth capacity to pre-fetch data, reducing the critical path latency for actual decoding operations without significantly increasing overall memory bandwidth consumption.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8446955B2Speculative motion prediction cache
Publication Date: 2013.05.21 ADVANCED MICRO DEVICES INC
  • US8446955B2 patent drawing
  • US8446955B2 patent drawing
  • US8446955B2 patent drawing

AI summary

A method and apparatus to improve motion prediction in video processing systems is introduced. When a motion prediction cache completes requesting data for a current macroblock and enters an into idle state, data comprising one or more reference frames is speculatively requested, with the hope that the requested data are will be needed in a subsequent macroblock. If the speculative data is needed, then it is consumed. However, if the speculative data is not needed, then the correct data must be requested and a price is paid for an extra memory read bandwidth. In case the speculative data is the correct data for the subsequent macroblock, the effective memory read latency is reduced and the decode performance increases. The video decoder becomes more immune to memory read latency.