Transform Coefficient Level Coding Within 32-Bit Register Limits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding techniques, such as those in the HEVC standard, face inefficiencies in coding transform coefficients, particularly with the Golomb-Rice/Exponential-Golomb coding method, which results in excessive bit lengths that do not fit within processor registers and cause implementation issues.

Innovation Solution

The proposed solution introduces a max_suffix_length parameter equal to Log2TransformRange and a max_prefix_length parameter, limiting the worst-case length of the coeff_abs_level_remaining syntax element to 32 bits, allowing for efficient binarization that fits within a single processor instruction word by truncating unary representations and adjusting suffix and prefix lengths based on bit-depth and coding modes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If Golomb-Rice/Exponential-Golomb coding is used to code transform coefficients, then coding flexibility is improved, but the bit length becomes excessive and does not fit within processor registers

Engineering Contradiction:
Improvecoding flexibilityVSAvoidbit length
Core Design Contradiction:
Adaptability or versatilityVSLength of moving object

Solution Approach 1:

The transform coefficient coding is divided into two separate parts: a prefix code and a suffix code. The prefix code handles the most significant bits while the suffix code handles the remaining bits. This segmentation allows each part to be optimized independently, with the suffix length constrained to fit within processor registers (e.g., 32 bits), thereby resolving the contradiction between coding flexibility and bit length.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The most significant bits of the transform coefficient are extracted and coded separately as a prefix, while the remaining less significant bits are coded as a suffix using Golomb-Rice/Exponential-Golomb coding. By taking out the critical high-order bits separately, the suffix can be kept short enough to fit within processor registers while still maintaining overall coding flexibility.

Inventive Principle:
Principle #2Taking out (Extraction)

2Measurement precision

If the bit length of coeff_abs_level_remaining syntax element is increased to accommodate larger transform coefficient values, then coding precision is improved, but implementation complexity increases due to exceeding processor register limits

Engineering Contradiction:
Improvecoding precisionVSAvoidimplementation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The syntax element coding is segmented into prefix and suffix parts. The prefix contains the most significant bits that determine the primary magnitude, while the suffix contains the remaining bits. This segmentation allows the suffix to be kept within processor register limits (maintaining implementation simplicity) while the prefix provides the necessary precision for large transform coefficient values.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The coding structure transitions from a single-dimensional bit sequence to a two-dimensional structure with prefix and suffix components. This dimensional change allows the system to simultaneously achieve high precision (through the prefix) and hardware compatibility (through the constrained suffix), resolving the contradiction between precision and implementation complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Adaptability or versatility

If the maximum bit length for transform coefficients is reduced to fit within processor registers, then hardware compatibility is improved, but the ability to represent large coefficient values is reduced

Engineering Contradiction:
Improvehardware compatibilityVSAvoidrepresentable value range
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The transform coefficient representation is segmented into prefix and suffix components. The suffix is constrained to a maximum length that fits within processor registers (e.g., 32 bits), ensuring hardware compatibility. The prefix is appended to extend the representable value range, allowing large coefficient values to be represented while maintaining register compatibility for the critical suffix portion.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The suffix (which must fit within processor registers) is nested within a larger coding structure that includes the prefix. The suffix contains the least significant bits that require fast processing, while the prefix contains the most significant bits that extend the value range. This nested structure allows the system to simultaneously achieve hardware compatibility and extended representable range.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentEP3117525B1Coefficient level coding in a video coding process
Publication Date: 2022.08.17 QUALCOMM INC
  • EP3117525B1 patent drawingFigure 1
  • EP3117525B1 patent drawingFigure 2
  • EP3117525B1 patent drawingFigure 3

AI summary

A device for coding video data includes a memory configured to store video data, and at least one processor configured to: determine a maximum number of bits to be used when coding a syntax element indicating absolute values of transform coefficients of a coding unit of the video data, determine a maximum number of suffix bits to be used when coding a Golomb-Rice/Exponential-Golomb coding suffix codeword of the syntax element, determine a maximum number of prefix bits to be used when coding a unary Golomb-Rice/Exponential-Golomb coding prefix codeword of the syntax element, determine the absolute values of transform coefficients for the coding unit, code a prefix codeword for one of the absolute values, and code a suffix codeword for the one of the absolute values, and code the coding unit based on the prefix codeword and the suffix codeword.