IP Library Granted Patent US 9,214,955
Granted Patent B2
US 9,214,955 · App. 13/336,870 · Granted Dec 15, 2015

Boolean entropy decoder and boolean entropy decoding method for video display system

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,214,955
App. No.
13/336,870
Granted
Dec 15, 2015
Kind
B2
Abstract

A Boolean entropy decoder including a decoding module, a buffer and an updating module is provided. The decoder sequentially generates a first boolean value, a second boolean value and a third boolean value. The first and second boolean values are generated during a same cycle. The decoding module requires a first bit amount while generating a first value corresponding to the first boolean value, and requires a second bit amount while generating a second value corresponding to the second boolean value. The buffer temporarily stores a bit segment in the bitstream to be provided to the decoding module. The updating module fetches a new bit segment according to the first bit amount and the second bit amount and updates the buffer. The decoding module selectively updates a value corresponding to the third boolean value after the buffer is updated.

Claims (56)

1. A Boolean entropy decoder, for decoding a bitstream, comprising:

a decoding module, for generating an initial boolean value, a first boolean value and a second boolean value according to the bitstream, requiring a first bit amount while generating a first value corresponding to the first boolean value, and requiring a second bit amount while generating a second value corresponding to the second boolean value; wherein, the first boolean value, the second value, the second boolean value and a temporary third value corresponding to a third boolean value are generated during a same cycle; the decoding module, comprising:

a preliminary computing unit, for generating an adjusted split (S 0 — m1) according to a range (R 0 ) and a probability (P 0 ) corresponding to the initial boolean value, and said adjusted split is equal to:

(

R

0

-

1

)

*

P

0

256

;

 and

a determining unit, for determining the first bit amount according to the adjusted split;

a buffer, for temporarily storing a bit segment of the bitstream to be provided to the decoding module, the bit segment covering the first bit amount and the second bit amount; and

an updating module, updating the buffer after fetching a new bit segment from the bitstream according to the first bit amount and the second bit amount;

wherein, the decoding module selectively adjusts the temporary third value corresponding to the third boolean value after the buffer is updated; and

wherein, the first bit amount is a number of bits in the buffer required when said bitstream is fetched for generating the first value, and the second bit amount is a number of bits in the buffer required when the bitstream is fetched for generating the second value.

2. The Boolean entropy decoder according to claim 1 , wherein the first bit amount and the second bit amount respectively have a maximum value of 7 bits, and the buffer has a capacity of 16 bits.

3. The Boolean entropy decoder according to claim 1 , the first bit amount being in the range of 0 to N−1, N being a positive integer, the decoding module further comprising:

a first adjusting unit, for generating (N−1) reference ranges according to the adjusted split;

a second adjusting unit, for generating (N−1) reference values according to an initial value corresponding to the initial boolean value;

N sets of calculating circuits, for generating N candidate boolean values according to the adjusted split, the initial value corresponding to the initial boolean value, the (N−1) reference ranges and the (N−1) reference values; and

a first multiplexer, for selecting the second boolean value from the N candidate boolean values according to the first bit amount.

4. The Boolean entropy decoder according to claim 3 , wherein the N sets of calculating circuits respectively generates a reference split, and the decoding module further comprises:

a second multiplexer, for selecting a split corresponding to the first boolean value from the N reference splits according to the first bit amount;

a third multiplexer, for selecting the first value corresponding to the first boolean value from the initial value corresponding to the initial boolean value and the (N−1) reference values according to the first bit amount; and

a fourth multiplexer, for selecting a range corresponding to the first boolean value from the adjusted split and the (N−1) reference ranges according to the first bit amount.

5. The Boolean entropy decoder according to claim 3 , wherein N equals 8.

6. The Boolean entropy decoder according to claim 3 , wherein the first adjusting unit generates the reference ranges by utilizing at least one shifter.

7. A Boolean entropy decoding method applied to a video display system, for decoding a bitstream, the video display system comprising a buffer for temporarily storing a bit segment of the bitstream, the method comprising:

generating a first value corresponding to a first boolean value by utilizing a first segment having a first bit amount in the bit segment;

generating the first boolean value during a first cycle;

generating a second value corresponding to a second boolean value by utilizing a second segment having a second bit amount in the bit segment;

fetching a new bit segment from the bitstream according to the first bit amount and the second bit amount;

generating the second boolean value during the first cycle;

generating a temporary third value corresponding to a third boolean value, and selectively updating the third temporary third boolean value after the buffer is updated according to the new bit segment; and

generating the third boolean value by utilizing the selectively adjusted temporary third value during a second cycle;

wherein, the first bit amount is a number of bits in the buffer required when said bitstream is fetched for generating the first value, and the second bit amount is a number of bits in the buffer required when the bitstream is fetched for generating the second value; and

wherein, the first bit amount is determined according to an adjusted split (S 0 — m1), said adjusted split is generated according to a range (R 0 ) and a probability (P 0 ) corresponding to an initial boolean value, and said adjusted split is equal to:

(

R

0

-

1

)

*

P

0

256

.

8. The method according to claim 7 , wherein the first bit amount and the second bit amount respectively have a maximum value of 7 bits, and the buffer has a capacity of 16 bits.

9. The method according to claim 7 , wherein the buffer is updated after the new bit segment is fetched from the bitstream or before the second cycle starts.

10. The method according to claim 7 , wherein the first boolean value, the second value and the second boolean value are generated during the first cycle.

Assignments (2)
MERGER Recorded Jun 8, 2020
From: MSTAR SEMICONDUCTOR, INC.
To: MEDIATEK INC.
Reel/Frame 052871/0833 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2011
From: TU, YING-CHIEH; WU, JIN-MU
To: MSTAR SEMICONDUCTOR, INC.
Reel/Frame 027443/0408 →