IP Library › Granted Patent US 7,411,529
Granted Patent B2
US 7,411,529 · App. 11/601,653 · Granted Aug 12, 2008

Method of decoding bin values using pipeline architecture and decoding device therefor

Assignee: Samsung Electronics Co., Ltd.
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 7,411,529
App. No.
11/601,653
Granted
Aug 12, 2008
Kind
B2
Abstract

A method and device for decoding bin values using a pipeline architecture in a CABAC decoder are provided. The method includes reading a first context model required to decode a first bin value, from a memory; determining whether a second context model required to decode a second bin value is the same as the first context model, while decoding the first bin value using the first context model; determining whether a third context model required to decode a third bin value is the same as the second context model, while decoding the second bin value using the second context model, if it is determined that the second context model is the same as the first context model; and reading the second context model from the memory, if it is determined that the second context model is not the same as the first context model.

Claims (59)

1. A method of decoding a plurality of bin values in a context-based adaptive binary arithmetic coding decoder using a pipeline architecture, the method comprising:

reading a first context model required to decode a first bin value, from a memory;

determining whether a second context model required to decode a second bin value is the same as the first context model, while decoding the first bin value using the first context model;

determining whether a third context model required to decode a third bin value is the same as the second context model, while decoding the second bin value using the second context model, if it is determined that the second context model is the same as the first context model; and

reading the second context model from the memory, if it is determined that the second context model is not the same as the first context model.

2. The method of claim 1 , wherein the reading the first context model from a memory comprises:

reading candidate context models corresponding to a syntax element including the first bin value from the memory while calculating a context index increment for the syntax element including the first bin value; and

selecting one of the candidate context models using the calculated context index increment.

3. The method of claim 2 , wherein the reading the candidate context models comprises reading the candidate context models by using a context index offset which is determined according to a type of the syntax element including the first bin value.

4. The method of claim 1 , wherein the determining whether the second context model is the same as the first context model comprises:

calculating a context index for a syntax element including the second bin value; and

determining whether the second context model is the same as the first context model according to whether a context index for the first context model is the same as the calculated context index.

5. The method of claim 1 , further comprising storing the first context model, which is modified when the first bin value is decoded, in the memory while decoding the second bin value using the second context model, if it is determined that the second context model is not the same as the first context model.

6. The method of claim 5 , wherein the determining whether the third context model required to decode the third bin value is the same as the second context model is performed while decoding the second bin value and storing the first context model in the memory, if the second context model is not the same as the first context model.

7. The method of claim 1 , wherein the determining whether the second context model is the same as the first context model comprises:

estimating context indexes of the second context model for each case when the first bin value is 0 and 1 while decoding the first bin value using the first context model;

selecting one of the estimated context indexes according to the decoded bin value; and

determining whether the second context model is the same as the first context mode according to whether the selected context index is the same as the context index of the first context model.

8. The method of claim 7 , wherein the selecting the one of the estimated context indexes according to the decoded bin value comprises selecting one of the estimated context indexes using a 2:1 multiplexer.

9. A method of decoding a plurality of bin values in a context-based adaptive binary arithmetic coding decoder using a pipeline architecture, the method comprising:

determining whether a first context model read from a memory is the same as a second context model required to decode an (i)th bin value, where i is a positive integer;

determining whether a third context model required to decode an (i+1)th bin value is the same as the second context model while decoding the (i)th bin value using the second context model, if it is determined that the first context model is the same as the second context model; and

reading the second context model from the memory, if it is determined that the first context model is not the same as the second context model.

10. The method of claim 9 , wherein the determining whether the third context model required to decode the (i+1)th bin value is the same as the second context model, comprises:

calculating a context index for a syntax element including the (i+1)th bin value; and

determining whether the third context model is the same as the second context model according to whether the context index for the second context model is the same as the calculated context index.

11. The method of claim 9 , further comprising storing the first context model in the memory while decoding the (i)th bin value using the second context model, if it is determined that the first context model is not the same as the second context model.

12. The method of claim 9 , wherein the determining whether a third context model required to decode the (i+1)th bin value is the same as the second context model comprises:

estimating context indexes of the third context model for each case when the (i)th bin value is 0 and 1 while decoding the (i)th bin value using the second context model;

selecting one of the estimated context indexes according to the decoded (i)th bin value; and

determining whether the third context model is the same as the second context mode according to whether the selected context index is the same as the context index of the second context model.

13. The method of claim 12 , wherein the selecting the one of the estimated context indexes according to the decoded (i)th bin value comprises selecting the one of the estimated context indexes using a 2:1 multiplexer.

14. A device for decoding a plurality of bin values using a pipeline architecture, the device comprising:

a context model loading unit which reads a first context model required to decode a bin value;

a decoding and context model equality determining unit which determines whether a second context model required to decode a next bin value in a pipeline is the same as the first context model while decoding the bin value using the first context model; and

a pipeline control unit which operates the decoding and context model equality determining unit by considering the next bin value in the pipeline to be the current bin value in the pipeline if the second context model is the same as the first context model, and operates the context model loading unit by considering the next bin value in the pipeline to be the current bin value in the pipeline if the second context model is not the same as the first context model.

15. The device of claim 14 , wherein the context model loading unit comprises:

a context index increment calculating and candidate context model loading unit which reads candidate context models corresponding to a syntax element including the bin value from the memory while calculating a context index increment for the syntax element including the bin value; and

a context model selection unit which selects one of the candidate context models using the calculated context index increment.

16. The device of claim 15 , wherein the context index increment calculating and candidate context model loading unit reads the candidate context models by using a context index offset which is determined according to a type of the syntax element including the bin value.

17. The device of claim 14 , wherein the decoding and context model equality determining unit comprises:

a context index calculating unit which calculates a context index for a syntax element including the next bin value in the pipeline; and

a context model determining unit which determines whether the second context model is the same as the first context model according to whether a context index for the first context model is the same as the calculated context index.

18. The device of claim 14 , further comprising a decoding and context model update unit which stores the first context model in the memory while decoding the next bin value in the pipeline using the second context model, if the second context model is not the same as the first context model.

19. The device of claim 18 , wherein the decoding and context model update unit determines whether the third context model required to decode the next to the next bin value in the pipeline is the same as the second context model while decoding the next bin value in the pipeline and storing the first context model in the memory.

20. The device of claim 14 , wherein the decoding and context model equality determining unit comprises:

a decoding and context index estimating unit which estimates context indexes of the second context model for each case when the bin value to be decoded is 0 and 1 while decoding the bin value using the first context model;

a context index selection unit which selects one of the estimated context indexes according to the decoded bin value; and

a context index comparing unit which determines whether the second context model is the same as the first context model according to whether the selected context index is the same as the context index of the first context model.

21. The device of claim 20 , wherein the context index selection unit comprises a 2:1 multiplexer which selects the one of the estimated context indexes according to the decoded bin value.

22. A computer-readable medium having embodied thereon a computer program for executing a method of decoding a plurality of bin values in a context-based adaptive binary arithmetic coding decoder using a pipeline architecture, the method comprising:

reading a first context model required to decode a first bin value;

determining whether a second context model required to decode a second bin value in a pipeline is the same as the first context model while decoding the first bin value using the first context model;

determining whether a third context model required to decode a third bin value is the same as the second context model while decoding the second bin value using the second context model, if it is determined that the second context model is the same as the first context model; and

reading the second context model, if it is determined that the second context model is not the same as the first context model.

23. A computer-readable medium having embodied thereon a computer program for executing a method of decoding a plurality of bin values in a context-based adaptive binary arithmetic coding decoder using a pipeline architecture, the method comprising:

determining whether a first context model read from a memory is the same as a second context model required to decode an (i)th bin value, where i is a positive integer;

determining whether a third context model required to decode an (i+1)th bin value is the same as the second context model while decoding the (i)th bin value using the second context model, if it is determined that the first context model is the same as the second context model; and

reading the second context model from the memory, if it is determined that the first context model is not the same as the second context model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2006
From: PARK, IN-CHEOL; YI, YONG-SEOK
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 018619/0847 →
Priority Claims (1)
KR 10-2005-0110901 · Nov 18, 2005 · national
Continuity (1)
Related Publication 20070115154A1 · May 24, 2007