Hardware Range Coding With Single-Read Probability Retrieval
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Context-based range coders in data processing units face inefficiencies due to repeated memory access operations for retrieving probability values, leading to slowed throughput and increased memory bandwidth usage, especially when switching between applications and managing state information.
Innovation Solution
Implementing a data processing unit with specialized hardware-based accelerators that retrieve speculative probability values in a single read instruction, reducing memory access and compressing state information to minimize latency during application switching.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If context-based range coder retrieves probability values through repeated memory access operations on a bit-by-bit basis, then it can access the required probability values for coding, but the throughput is slowed down and memory bandwidth efficiency is reduced
Solution Approach 1:
The patent applies preliminary action by retrieving multiple probability values in advance through a single memory read operation before the actual coding process. Instead of accessing memory repeatedly during bit-by-bit coding, the system pre-loads a batch of probability values into a buffer, allowing subsequent coding operations to proceed without additional memory access delays.
Solution Approach 2:
The patent segments the probability value retrieval process into two distinct phases: a bulk retrieval phase where multiple probability values are fetched in a single memory operation, and a sequential processing phase where these pre-fetched values are consumed during coding. This segmentation separates the high-latency memory access from the time-critical coding operations.
2Reliability
If context-based range coder performs frequent memory access operations for each bit coding, then it ensures up-to-date probability values, but memory bandwidth consumption increases
Solution Approach 1:
The patent merges multiple sequential memory access operations into a single combined memory read operation. By batching the retrieval of multiple probability values into one memory transaction, the system reduces the total number of memory access events and consolidates bandwidth consumption into fewer, more efficient operations.
Solution Approach 2:
The patent creates a local copy of multiple probability values in a buffer or register file, allowing the coding process to reference these copied values without repeatedly accessing the original memory location. This copying mechanism decouples the time-critical coding operations from the slower memory subsystem.
3Stability of the object's composition
If state information is stored and retrieved when switching between applications, then coding continuity is maintained, but latency is introduced during application switching
Solution Approach 1:
The patent applies preliminary action by pre-storing state information in a readily accessible buffer before application switching occurs. When an application needs to resume coding, the pre-stored state is already available in memory, eliminating the need for time-consuming state retrieval operations during the actual switching moment.
Solution Approach 2:
The patent extracts the state information storage and retrieval operations from the critical application switching path. By separating state management from the switching mechanism itself, the system can maintain coding state without introducing latency into the switching process, as state operations occur independently before or after switching.
Data Source
AI summary
A highly programmable data processing unit includes multiple processing units for processing streams of information, such as network packets or storage packets. The data processing unit includes one or more specialized hardware accelerators configured to perform acceleration for various data-processing functions. The data processing unit is configured to retrieve speculative probability values for range coding a plurality of bits with a single read instruction to an on-chip memory that stores a table of probability values. The data processing unit is configured to store state information used for context-coding packets of a data stream so that the state information is available after switching between data streams.


