IP Library Granted Patent US 9,565,433
Granted Patent B2
US 9,565,433 · App. 13/729,914 · Granted Feb 7, 2017

System for parallel intra-prediction decoding of video data

Inventors: Alexander Lyashevsky (Cupertino, CA); Jason Yang (San Francisco, CA); Arcot J. Preetham (Sunnyvale, CA)
Assignee: ATI TECHNOLOGIES ULC
H04N19/00569H04N19/107H04N19/172H04N19/436H04N19/44H04N19/50H04N19/61H04N19/85
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,565,433
App. No.
13/729,914
Granted
Feb 7, 2017
Kind
B2
Abstract

A system for decoding video data includes a processing unit. The processing unit includes a plurality of processing pipelines and a driver. The driver includes a decoder configured to generate a plurality of intermediate control maps containing control information including an indication of which macro blocks or portions of macro blocks may be processed in parallel in the plurality of processing pipelines.

Claims (32)

1. A system for decoding video data, the system comprising:

a plurality of processing pipelines;

a z-buffer; and

a driver, coupled to the z-buffer, the driver comprising a decoder, the decoder being configured to:

receive a plurality of control maps that were generated from encoded video data encoded according to a pre-defined format,

write, to the z-buffer, values indicating whether macro blocks of the encoded video data are to be decoded using intra-prediction or inter-prediction, the values being based on the plurality of control maps,

preprocess the plurality of received control maps to generate a plurality of intermediate control maps containing control information including an indication of which macro blocks or portions of macro blocks may be processed in parallel in the plurality of processing pipelines, and

performing Z-testing on the Z-buffer to determine whether to perform intra-prediction or inter-prediction on the encoded video data.

2. The system of claim 1 , wherein the Z-buffer is configured to operate when the control information comprises designations for units of video data, the designations being such that a decoding operation may be performed in parallel on similarly designated units of data without errors due to inter-unit dependencies.

3. The system of claim 1 , wherein the decoder is configured to operate when the pre-defined format comprises a compression scheme according to which the encoded video data may be encoded using one of a plurality of prediction operations for various units of video data in a frame, the plurality of prediction operations comprising intra-prediction.

4. The system of claim 1 , wherein the decoder is configured such that the pre-processing of control maps comprises creating a buffer from the control maps using one of a plurality of pre-shaders.

5. The system of claim 4 , wherein the buffer contains a subset of the control information.

6. The system of claim 4 , wherein the buffer is a Z-buffer.

7. The system of claim 1 , wherein the decoder is configured to operate when the pre-defined format comprises an MPEG standard video format.

8. The system of claim 1 , wherein the decoder is configured to operate when the control information comprises types of sub-units within the units of video data.

9. The system of claim 1 , wherein:

the decoder is in a graphics processing unit (GPU), and

the decoder is configured to receive the plurality of control maps from a host processor or a central processing unit (CPU) in the system.

10. The system of claim 1 , wherein the decoder is configured to preprocess the plurality of received control maps by interpreting information provided in the plurality of received control maps to determine which macro blocks or portions of macro blocks in the encoded video data may be processed in parallel in the plurality of processing pipelines.

11. The system of claim 1 , wherein:

the plurality of processing pipelines, the z-buffer, and the driver are included within a processing unit.

12. The system of claim 11 , wherein the plurality of prediction operations further includes performing intra-prediction on all of the indicated macro blocks or portions of macro blocks in multiple interleaved frames in parallel.

13. A system for decoding video data, the system comprising:

a processing unit, comprising:

a plurality of processing pipelines; and

a driver comprising a decoder, the decoder being configured to:

receive a plurality of control maps that were generated from encoded video data encoded according to a pre-defined format, and

preprocess the plurality of received control maps to generate a plurality of intermediate control maps containing:

control information including an indication of which macro blocks or portions of macro blocks may be processed in parallel in the plurality of processing pipelines,

information indicating which of a plurality of prediction operations is to be performed on each unit of video data in the macro blocks or the portions of the macro blocks in a frame, the plurality of prediction operations comprising at least infra-prediction and inter-prediction,

information regarding types of sub-units of video data within units of video data in the frame, and

control information specific to the plurality of processing pipelines.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2014
From: LYASHEVSKY, ALEXANDER; YANG, JASON; PREETHAM, ARCOT J.
To: ATI TECHNOLOGIES INC.
Reel/Frame 032598/0264 →
CHANGE OF NAME Recorded Apr 3, 2014
From: ATI TECHNOLOGIES INC.
To: ATI TECHNOLOGIES ULC
Reel/Frame 032604/0792 →
Continuity (2)
Continuation 11515472 · Aug 31, 2006
Related Publication 20130114711A1 · May 9, 2013