Video Decoding Memory Architecture for Simultaneous Context Data Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video decoding technologies face challenges in ensuring simultaneous data update and replication in static random access memory, leading to slow decoding speeds and inefficient video playback, especially with high-definition video formats like 4K and 8K.

Innovation Solution

A video decoding device and method utilizing a WPP status control module and memory selection module that employs a buffer memory and two update memories to manage context data, allowing for efficient data replication and update without needing to switch static random access memory, thereby optimizing hardware usage and reducing power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If one static random access memory is used to store context data, then the memory structure is simple, but data update and replication cannot be executed simultaneously, leading to slow decoding speed

Engineering Contradiction:
Improvememory structureVSAvoiddecoding speed
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides the single static random access memory into multiple functional memory units: a first static random access memory for storing context data and a second static random access memory for replicating context data. This segmentation allows simultaneous data update and replication operations, resolving the contradiction between simple memory structure and decoding speed.

Inventive Principle:
Principle #1Segmentation

2Productivity

If context data is updated and replicated in the same memory, then memory usage is efficient, but data integrity cannot be ensured during simultaneous operations

Engineering Contradiction:
Improvememory usage efficiencyVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces a memory selection module as an intermediary that controls data flow between the first and second static random access memories. This module ensures that update and replication operations are coordinated properly, maintaining data integrity while allowing efficient memory usage through selective data routing.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If frequent memory switching is performed to manage context data, then data management is flexible, but power consumption increases

Engineering Contradiction:
Improvedata management flexibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary actions by pre-allocating two separate static random access memories for different functions (storage and replication). This eliminates the need for frequent memory switching during operation, as the system can simultaneously access both memories without relocation, thereby reducing power consumption while maintaining flexible data management.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10575006B2Video data decoding and decoding method
Publication Date: 2020.02.25 ALLWINNER TECH CO LTD
  • US10575006B2 patent drawing
  • US10575006B2 patent drawing
  • US10575006B2 patent drawing

AI summary

A video data decoding device and method. The device has an entropy decoder, and a WPP status control module for selecting an operating status according to a syntax structure of a coding tree unit. The device further has a memory selector for controlling the operating status of a memory. The memory has one buffer memory and two update memories. When the number of columns of a row of coding tree units currently decoded is larger than three, the context data of the coding tree units currently decoded is written into the buffer memory and one of the update memories; and when it is determined that the context data of the coding tree units referred by a first coding tree unit in a next row of coding tree units is available when the next row of coding tree units starts to be parsed, the data in the buffer memory is replicated.