RANS Decoding with Two-Phase Hardware and Adaptive Symbol Width

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Range Asymmetric Number System (RANS) encoding/decoding approaches face limitations in computational efficiency and adaptiveness, particularly in hardware implementations and handling varying distributions of symbol values.

Innovation Solution

The implementation of a two-phase RANS decoding structure, adaptable symbol widths, switchable static probability models, selective flushing of decoder state, and fragment-by-fragment adjustments to improve compression efficiency and computational performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional RANS decoding is implemented in hardware, then compression efficiency is improved, but computational complexity increases

Engineering Contradiction:
Improvecompression efficiencyVSAvoidcomputational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The RANS decoding process is divided into two distinct phases: Phase 0 performs state updates using probability information from previous iterations, while Phase 1 performs state merging with encoded data and generates output symbols. This segmentation allows each phase to be optimized independently in hardware, improving overall compression efficiency while managing computational complexity through structured organization of operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic adaptability by allowing the symbol width to be adjusted on a fragment-by-fragment basis and enabling switching between different static probability models. This dynamic configuration allows the hardware implementation to adapt to varying symbol distributions, improving compression efficiency for different data patterns without requiring a fixed complex architecture for all scenarios.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If RANS decoding uses fixed symbol width, then device complexity is reduced, but adaptability to different symbol distributions decreases

Engineering Contradiction:
Improveadaptability to symbol distributionsVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic symbol width adjustment where the decoder can be reconfigured to use different symbol widths based on the characteristics of the input data fragments. This allows the system to adapt to varying symbol distributions (improving parameter 35) while maintaining a relatively simple fixed-width decoding engine that can be reconfigured rather than requiring multiple complex fixed architectures (managing parameter 36).

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of symbol width dynamically based on the data being decoded. By allowing the symbol width parameter to be adjusted on a fragment-by-fragment basis, the system achieves better adaptability to different symbol distributions without fundamentally changing the core decoding algorithm, thus improving compression efficiency while controlling the increase in device complexity.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If RANS decoder state is retained across fragments, then compression efficiency is improved, but reliability decreases due to error propagation

Engineering Contradiction:
Improvecompression efficiencyVSAvoidresilience to transmission errors
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic state management where the decision to flush or retain the RANS decoder state is made on a fragment-by-fragment basis. This allows the system to retain state across fragment boundaries to improve compression efficiency (parameter 39) while providing the option to flush state when error resilience is prioritized (parameter 27), achieving a flexible balance between these competing requirements through conditional state management.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20220109891A1Features of range asymmetric number system encoding and decoding
Publication Date: 2022.04.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20220109891A1 patent drawing
  • US20220109891A1 patent drawing
  • US20220109891A1 patent drawing

AI summary

Innovations in range asymmetric number system (“RANS”) coding and decoding are described herein. Some of the innovations relate to hardware implementations of RANS decoding that organize operations in two phases, which can improve the computational efficiency of RANS decoding. Other innovations relate to adapting RANS encoding/decoding for different distributions or patterns of values for symbols. For example, RANS encoding/decoding can adapt by switching a default symbol width (the number of bits per symbol), adjusting symbol width on a fragment-by-fragment basis for different fragments of symbols, switching between different static probability models on a fragment-by-fragment basis for different fragments of symbols, and/or selectively flushing (or retaining) the state of a RANS decoder on a fragment-by-fragment basis for different fragments of symbols. In many cases, such innovations can improve compression efficiency while also providing computationally efficient performance.