Patent classifications
H03M7/607
Systems and methods for variable length codeword based, hybrid data encoding and decoding using dynamic memory allocation
A data encoding system includes a non-transitory memory, a processor, a digital-to-analog converter (DAC) and a transmitter. The non-transitory memory stores a predetermined file size threshold. The processor is in operable communication with the memory, and is configured to receive data. The processor detects a file size associated with the data. When the file size is below the predetermined file size threshold, the processor compresses the data using a variable length codeword (VLC) encoder. When the file size is not below the predetermined file size threshold, the processor compresses the data, using a hash table algorithm. The DAC is configured to receive a digital representation of the compressed data from the processor and convert the digital representation of the compressed data into an analog representation of the compressed data. The transmitter is coupled to the DAC and configured to transmit the analog representation of the compressed data.
NEURAL NETWORK METHOD AND APPARATUS
A method and apparatus for processing data of a neural network. The method includes: obtaining one or more bit representations of data used for processing a neural network; generating a plurality of candidate profiles based on the bit representations; determining a final profile by comparing compression performances for each of the candidate profiles; and determining an optimal configuration for compressing data of the neural network based on the determined final profile.
Verifying the correctness of a deflate compression accelerator
Embodiments of the invention are directed to a DEFLATE compression accelerator and to a method for verifying the correctness of the DEFLATE compression accelerator. The accelerator includes an input buffer and a Lempel-Ziv 77 (LZ77) compressor communicatively coupled to an output of the input buffer. A switch is communicatively coupled to the output of the input buffer and to the output of the LZ77 compressor. The switch is configured to bypass the LZ77 compressor during a compression test. The accelerator further includes a deflate Huffman encoder communicatively coupled to an output of the switch and an output buffer communicatively coupled to the deflate Huffman encoder. When the switch is not bypassed, the compressor can be modified to produce repeatable results.
COMPRESSION ENGINE WITH CONFIGURABLE SEARCH DEPTHS AND WINDOW SIZES
Examples described herein relate to an encoder circuitry to apply one of multiple lossless data compression schemes on input data. In some examples, to compress input data, the encoder circuitry is to utilize a search window size and number of searches based on an applied compression scheme. In some examples, content of a memory is reconfigured to store data corresponding to a search window size of the applied compression scheme. In some examples, an applicable hash function is configured based on the applied compression scheme. In some examples, a number of searches are made for a byte position. In some examples, the encoder circuitry includes a hash table look-up and a bank decoder. In some examples, the hash table look-up is to generate a hash index to identify an address of an entry in the search window. In some examples, the bank decoder is to select a bank based on the hash index.
SUBCUTANEOUS ELECTROCARDIOGRAPHY MONITOR CONFIGURED FOR SELF-OPTIMIZING ECG DATA COMPRESSION
A subcutaneous electrocardiography monitor configured for self-optimizing ECG data compression is provided. ECG waveform characteristics are rarely identical in patients with cardiac disease making this innovation crucial for the long-term data storage and analysis of complex cardiac rhythm disorders. The monitor includes a memory and a micro-controller operable to execute under a micro-programmable control and configured to: obtain a series of electrode voltage values; select one or more of a plurality of compression algorithms for compressing the electrode voltage series; apply one or more of the selected compression algorithms to the electrode voltage series; evaluate a degree of compression of the electrode voltage series achieved using the application of the selected algorithms; apply one or more of the compression algorithms to the compressed electrode voltage series upon the degree of compression not meeting a predefined threshold; and store the compressed electrode voltage series within the memory.
Verifying the correctness of a deflate compression accelerator
Embodiments of the invention are directed to a DEFLATE compression accelerator and to a method for verifying the correctness of the DEFLATE compression accelerator. The accelerator includes an input buffer and a Lempel-Ziv 77 (LZ77) compressor communicatively coupled to an output of the input buffer. A switch is communicatively coupled to the output of the input buffer and to the output of the LZ77 compressor. The switch is configured to bypass the LZ77 compressor during a compression test. The accelerator further includes a deflate Huffman encoder communicatively coupled to an output of the switch and an output buffer communicatively coupled to the deflate Huffman encoder. When the switch is not bypassed, the compressor can be modified to produce repeatable results.
SYSTEM, APPARATUS AND METHOD FOR DATA COMPACTION AND DECOMPACTION
A system, an apparatus and a method for encoding data are provided. The method includes: (a) compressing the data to generate a first compressed data according to a compression configuration; (b) compacting the data to generate a first compacted data according to a compaction configuration; (c) determining whether the first compressed data satisfy a target condition; and (d) selecting the first compressed data if the first compressed data satisfy the target condition, and selecting the first compacted data if the first compressed data fail to satisfy the target condition. The compression configuration has variable compression ratios. The compaction configuration has a predetermined compaction ratio.
SYSTEM, APPARATUS AND METHOD FOR DATA COMPACTION AND DECOMPACTION
A system, an apparatus and a method for encoding data are provided. The method includes (a) receiving encoded data; (b) determining a type of encoding scheme of the encoded data; (c) if the encoded data is determined as a first type of encoding scheme, decompressing the encoded data; and (d) if the encoded data is determined as a second type of encoding scheme different from the first type of encoding scheme, decompacting the encoded data. The first type of encoding scheme has a variable compression ratio. The second type of encoding scheme has a predetermined compaction ratio.
System, Apparatus and Method for Data Compaction and Decompaction
A system includes a transmission bus and an encoding module. The encoding module is connected to the transmission bus. The encoding module includes a first encoding unit, a second encoding unit and a selection unit. The first encoding unit is configured to convert data into a first compressed data by adopting a compression configuration having variable compression ratios. The second encoding unit is configured to convert the data into a first compacted data by adopting a compaction configuration having a predetermined compaction ratio. The selection unit is connected to the first encoding unit and the second encoding unit and configured to select the first compressed data to be transmitted to the transmission bus if the first compressed data satisfy a target condition, and to select the first compacted data to be transmitted to the transmission bus if the first compressed data fail to satisfy the target condition.
Method and system of content based dynamic data compression
The present disclosure describes methods and systems that provide for content based dynamic data compression. During a training stage a plurality of training sets are compressed using multiple data compression techniques, and each training data set is associated with a most effective compression technique. Statistical features can be extracted from each of the training data sets with consideration of the most effective compression techniques and are saved as a compression parameters file. During a working stage, individual data blocks within a telemetry data set are compressed using a data compression technique selected for the data block in light of the statistical feature presented in the compression parameters file, and the compressed data blocks are written to a compressed data set, along with encoding tags that identify the compression technique used on each data block. During a consumption stage, the compressed data blocks are decompressed using techniques identified by the encoding tags.