H03M7/42

NESTED ENTROPY ENCODING
20230105786 · 2023-04-06 ·

Methods and systems for improving coding decoding efficiency of video by providing a syntax modeler, a buffer, and a decoder. The syntax modeler may associate a first sequence of symbols with syntax elements. The buffer may store tables, each represented by a symbol in the first sequence, and each used to associate a respective symbol in a second sequence of symbols with encoded data. The decoder decodes the data into a bitstream using the second sequence retrieved from a table.

Systems and methods for data transfer over a shared interface
11620250 · 2023-04-04 · ·

A method for compressing is provided. The method includes compressing, via a processor, a portion of a first data packet to generate a second data packet having a compressed portion. The method includes transmitting the second data packet having the compressed portion via an interface to a co-processor. The processor and the co-processor are communicatively coupled via the interface. The method also includes unpacking, via the co-processor, the compressed portion of the second data packet to restore the first data packet.

VIDEO PROCESSING USING MULTIPLE BITSTREAM ENGINES
20220321899 · 2022-10-06 ·

A device includes a first bitstream engine and a second bitstream engine. The first bitstream engine is configured to decode a first portion of a first video frame of a plurality of video frames to generate first decoded portion data. The first bitstream engine is also configured to generate synchronization information based on completion of decoding the first portion. The second bitstream engine is configured to, based on the synchronization information, initiate decoding of a second portion of a particular video frame to generate second decoded portion data. The second bitstream engine uses the first decoded portion data during decoding of the second portion of the particular video frame. The particular video frame includes the first video frame or a second video frame of the plurality of video frames.

Arithmetic Encoders, Arithmetic Decoders, Video Encoder, Video Decoder, Methods for Encoding, Methods for Decoding and Computer Program

An arithmetic encoder for encoding a plurality of symbols having symbol values is configured to derive an interval size information for an arithmetic encoding of one or more symbol values to be encoded based on a plurality of state variable values representing statistics of a plurality of previously encoded symbol values with different adaptation time constants. The arithmetic encoder is configured to map a first state variable value, or a scaled and/or rounded version thereof, using a lookup-table and to map a second state variable value, or a scaled and/or rounded version thereof using the lookup-table, in order to obtain the interval size information describing an interval size for the arithmetic encoding of one or more symbols to be encoded. Further arithmetic encoders, arithmetic decoders, video encoders, video decoder, methods for encoding, methods for decoding and computer programs are also disclosed which are based on the same concept and on other concepts.

Arithmetic Encoders, Arithmetic Decoders, Video Encoder, Video Decoder, Methods for Encoding, Methods for Decoding and Computer Program

An arithmetic encoder for encoding a plurality of symbols having symbol values is configured to derive an interval size information for an arithmetic encoding of one or more symbol values to be encoded based on a plurality of state variable values representing statistics of a plurality of previously encoded symbol values with different adaptation time constants. The arithmetic encoder is configured to map a first state variable value, or a scaled and/or rounded version thereof, using a lookup-table and to map a second state variable value, or a scaled and/or rounded version thereof using the lookup-table, in order to obtain the interval size information describing an interval size for the arithmetic encoding of one or more symbols to be encoded. Further arithmetic encoders, arithmetic decoders, video encoders, video decoder, methods for encoding, methods for decoding and computer programs are also disclosed which are based on the same concept and on other concepts.

ENTROPY CODING OF MOTION VECTOR DIFFERENCES

An entropy decoder is configured to, for horizontal and vertical components of motion vector differences, derive a truncated unary code from the data stream using context-adaptive binary entropy decoding with exactly one context per bin position of the truncated unary code, which is common for horizontal and vertical components of the motion vector differences, and an Exp-Golomb code using a constant equi-probability bypass mode to obtain the binarizations of the motion vector differences. A desymbolizer is configured to debinarize the binarizations of the motion vector difference syntax elements to obtain integer values of the horizontal and vertical components of the motion vector differences. A reconstructor is configured to reconstruct a video based on the integer values of the horizontal and vertical components of the motion vector differences.

ENTROPY CODING OF MOTION VECTOR DIFFERENCES

An entropy decoder is configured to, for horizontal and vertical components of motion vector differences, derive a truncated unary code from the data stream using context-adaptive binary entropy decoding with exactly one context per bin position of the truncated unary code, which is common for horizontal and vertical components of the motion vector differences, and an Exp-Golomb code using a constant equi-probability bypass mode to obtain the binarizations of the motion vector differences. A desymbolizer is configured to debinarize the binarizations of the motion vector difference syntax elements to obtain integer values of the horizontal and vertical components of the motion vector differences. A reconstructor is configured to reconstruct a video based on the integer values of the horizontal and vertical components of the motion vector differences.

Fast data compression for systems with large dynamic ranges or other systems
11513732 · 2022-11-29 · ·

A method includes defining a lookup table having multiple compressed data values and, for each compressed data value, a range of one or more raw data values associated with the compressed data value. The method also includes compressing raw data using the lookup table. Each raw data value is associated with one of the compressed data values in the lookup table based on a distance ratio involving (i) a distance of the raw data value from a minimum value and (ii) a distance of the raw data value from a maximum value.

Hybrid decoding using hardware and software for automatic speech recognition systems
11676585 · 2023-06-13 · ·

Embodiments describe a method for decoding speech including receiving speech input at an audio input device, generating speech data that is a digital representation of the speech input; extracting acoustic features of the speech data, assigning acoustic scores to the acoustic features, receiving data representing the acoustic features and the acoustic scores, decoding the data representing the acoustic features into a word, having a word score, by referencing a WFST language model, modifying the word score into a new word score based on a personalized grammar model stored in the external memory device, the processor is separate from and external to the WFST accelerator, and determining an intent represented by a plurality of words outputted by the WFST accelerator, where the plurality of words include the word and the new word score.

CLOUD-BASED SCALE-UP SYSTEM COMPOSITION

Technologies for composing a managed node with multiple processors on multiple compute sleds to cooperatively execute a workload include a memory, one or more processors connected to the memory, and an accelerator. The accelerator further includes a coherence logic unit that is configured to receive a node configuration request to execute a workload. The node configuration request identifies the compute sled and a second compute sled to be included in a managed node. The coherence logic unit is further configured to modify a portion of local working data associated with the workload on the compute sled in the memory with the one or more processors of the compute sled, determine coherence data indicative of the modification made by the one or more processors of the compute sled to the local working data in the memory, and send the coherence data to the second compute sled of the managed node.