Video Data Processing System Block Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data processing systems, particularly in video processing, the latency and errors caused by consumer processing units trying to read partially written data blocks can result in unwanted artefacts and deadlocks, especially when dealing with block-wise encoded data.

Innovation Solution

A method where a video processor encodes video frames into blocks and stores them in a shared memory using a 'front-buffer' approach, updating the location indication for each block to ensure only fully written blocks are accessed by consumer processors, preventing partial data reads and maintaining data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If a consumer processing unit reads data from shared memory during the writing process (front-buffer rendering), then latency is reduced, but data integrity deteriorates causing artefacts and deadlocks

Engineering Contradiction:
ImprovelatencyVSAvoiddata integrity
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent divides the data output into multiple blocks, each with its own location indication in the shared memory. This segmentation allows the system to manage partial data writes safely by tracking which blocks are fully written and ready for consumption, preventing consumers from reading incomplete data while maintaining low latency through selective access to ready blocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a feedback mechanism where location indications are updated to reflect the current state of data blocks in memory. This feedback allows consumer processing units to determine which blocks are fully written and safe to read, preventing artefacts and deadlocks while enabling efficient data consumption without waiting for complete frame writes.

Inventive Principle:
Principle #23Feedback

2Productivity

If a consumer processing unit attempts to read partially written blocks, then productivity is improved by continuous processing, but harmful factors increase causing artefacts and deadlocks

Engineering Contradiction:
Improvecontinuous processing capabilityVSAvoidartefacts and deadlocks
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

By segmenting the data output into blocks with individual location indications, the system enables continuous processing of ready blocks while preventing access to incomplete blocks. This segmentation allows consumers to read only fully written blocks, maintaining productivity without generating harmful artefacts or deadlocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The location indications act as intermediaries between the producer and consumer processing units. These indications mediate the data access process by providing consumers with information about which blocks are ready for reading, enabling continuous processing while preventing harmful effects from reading partially written data.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11308570B2Video data processing system for storing frames of video data
Publication Date: 2022.04.19 ARM LTD
  • US11308570B2 patent drawing
  • US11308570B2 patent drawing
  • US11308570B2 patent drawing

AI summary

A data processing system includes a producer processor that produces a sequence of data outputs for use by consumer processors of the data processing system. The system also includes a memory for storing a sequence of data outputs produced by the data processor. The data processor encodes data outputs as encoded blocks of data, storing a particular encoded block of a first frame in a first location in the memory and an indication of the first location. The data processor stores a corresponding encoded block of a second data output in a second location and updates the indication to the second location.