Compression and decompression in hardware for data processing

US11962335B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11962335-B2
Application numberUS-202318144524-A
CountryUS
Kind codeB2
Filing dateMay 8, 2023
Priority dateMay 24, 2021
Publication dateApr 16, 2024
Grant dateApr 16, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods, systems, and apparatus, including computer-readable storage media for hardware compression and decompression. A system can include a decompressor device coupled to a memory device and a processor. The decompressor device can be configured to receive, from the memory device, compressed data that has been compressed using an entropy encoding, process the compressed data using the entropy encoding to generate uncompressed data, and send the uncompressed data to the processor. The system can also include a compressor device configured to generate, from uncompressed data, a probability distribution of codewords, generate a code table from the probability distribution, and compress incoming data using the generated code table.

First claim

Opening claim text (preview).

The invention claimed is: 1. A system, comprising: one or more memory devices including a first memory device; one or more processors including a first processor, wherein the one or more processors are coupled to the one or more memory devices; and a decompressor device coupled at least to the first memory device and the first processor, wherein the decompressor device is configured to: receive, from the first memory device, compressed data that has been compressed using an entropy encoding, process the compressed data using the entropy encoding to generate uncompressed data, and send the uncompressed data to the first processor, wherein the one or more processors are configured to generate the compressed data from input data comprising model parameter values by processing the input data to generate a probability distribution of codewords in the input data, and to generate a code table based on the probability distribution of the codewords in the input data. 2. The system of claim 1 , wherein the model parameter values are associated with a plurality of operation layers; and wherein the one or more processors are further configured to: generate, for each layer, a respective probability distribution of codewords for respective model parameter values in the layer, and generate, for each layer and from the respective probability distribution of codewords for the layer, a respective layer code table. 3. The system of claim 2 , wherein the decompressor device is further configured to: identify first compressed model parameter values corresponding to a first layer of the plurality of layers, and process the first compressed model parameter values using the entropy encoding and a first layer code table corresponding to the first layer. 4. The system of claim 1 , wherein the model parameter values are each represented in a floating point format comprising at least an exponent, and wherein the one or more processors are further configured to generate the probability distribution of codewords using exponents of the model parameter values as codewords. 5. The system of claim 1 , wherein the model parameter values are associated with a plurality of operation layers and are each represented in a floating point format comprising at least an exponent; and wherein the one or more processors are further configured to: generate, for each layer, a respective probability distribution of codewords for respective model parameter values in the layer using exponents of the model parameter values of the layer, and generate, for each layer and from the respective probability distribution for the layer, a respective layer code table. 6. The system of claim 1 , wherein the compressed data is first compressed data and the uncompressed data is first uncompressed data, and wherein the system further comprises a compressor device coupled at least to the first memory device and the first processor, wherein the compressor device is configured to: receive second uncompressed data from the first processor; process the second uncompressed data using the entropy encoding to generate second compressed data; and send the second compressed data to the first memory device. 7. The system of claim 6 , wherein at least one of the compressor device and the decompressor device is implemented as one or more integrated circuits coupled to the first memory device and the first processor by one or more circuit interconnects. 8. The system of claim 6 , wherein the code table corresponding to the entropy encoding is stored on the first memory device, and wherein at least one of the decompressor device and the compressor device is configured to process data using the entropy encoding by accessing the code table from the first memory device. 9. The system of claim 6 , wherein the compressor device is further configured to: receive third uncompressed data from the first memory device; generate, from the third uncompressed data, a probability distribution of codewords from the third uncompressed data; generate a code table from the probability distribution of the codewords; process the third uncompressed data using the generated code table to generate third compressed data; and send the third compressed data and the generated code table to the first memory device. 10. The system of claim 9 , wherein the decompressor device is further configured to: receive, from the first memory device, the generated code table; and process the third compressed data using the entropy encoding and the code table. 11. The system of claim 1 , wherein the one or more processors are configured to: store the code table in the first memory device; and wherein the decompressor device is configured to process the compressed data by accessing the code table stored in the first memory device. 12. The system of claim 1 , wherein the decompressor device comprises a plurality of entropy coders configured to decompress data using the entropy encoding, and wherein in processing the data using the entropy coding, the decompressor device is configured to: distribute the compressed data across each of the plurality of entropy coders; process the compressed data across each of the plurality of entropy coders to generate respective output decompressed data; and generate the decompressed data corresponding to the compressed data from the respective output decompressed data of each of the plurality of entropy coders. 13. The system of claim 12 , wherein the number of entropy coders that the decompressor device comprises depends at least on (i) the maximum bandwidth between the first memory device and the first processor, and (ii) the maximum bandwidth of each entropy coder. 14. A decompressor device for data decompression, wherein the decompression device is configured to: receive, from a first memory device, compressed data, wherein the compressed data has been compressed using an entropy encoding; process the compressed data to generate uncompressed data; and send the uncompressed data to a first processor, wherein the compressed data is data compressed from input data comprising model parameter values, the compressed data being generated by processing the input data to generate a probability distribution of codewords from the input data, and wherein a code table is generated from the probability distribution of the codewords in the input data. 15. The decompressor device of claim 14 , wherein the decompressor device is an integrated circuit coupled to the first memory device and the first processor by one or more circuit interconnects. 16. The decompressor device of claim 14 , wherein the decompressor device is further configured to process the compressed data using the code table. 17. The decompressor device of claim 16 , wherein the code table comprises a plurality of layer code tables, each layer code table corresponding to codewords from a plurality of model parameter values of a respective layer of a plurality of operation layers. 18. The decompressor device of claim 14 , wherein the plurality of model parameter values are each represented in a floating point format comprising at least an exponent; and wherein the probability distribution of codewords is generated using exponents of the model parameter values as codewords. 19. A method for data decompression performed by a decompressor device, the method comprising: receiving, by the decompressor device and from a first memory device, compressed data, wherein the compressed data has been compre

Assignees

Inventors

Classifications

  • Quantised networks; Sparse networks; Compressed networks · CPC title

  • H03M7/42Primary

    using table look-up for the coding or decoding process, e.g. using read-only memory {(H03M7/4006 takes precedence)} · CPC title

  • using semiconductor devices · CPC title

  • Encoder aspects · CPC title

  • H03M7/6023Primary

    Parallelization · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11962335B2 cover?
Methods, systems, and apparatus, including computer-readable storage media for hardware compression and decompression. A system can include a decompressor device coupled to a memory device and a processor. The decompressor device can be configured to receive, from the memory device, compressed data that has been compressed using an entropy encoding, process the compressed data using the entropy…
Who is the assignee on this patent?
Google Llc
What technology area does this patent fall under?
Primary CPC classification H03M7/42. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 16 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).