Multi-output decoder for texture decompression

US11836830B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11836830-B2
Application numberUS-202318101506-A
CountryUS
Kind codeB2
Filing dateJan 25, 2023
Priority dateApr 28, 2017
Publication dateDec 5, 2023
Grant dateDec 5, 2023

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.

A decoder is configured to decode a plurality of texels from a received block of texture data encoded according to the Adaptive Scalable Texture Compression (ASTC) format, and includes a parameter decode unit configured to decode configuration data for the received block of texture data, a colour decode unit configured to decode colour endpoint data for the plurality of texels of the received block in dependence on the configuration data, a weight decode unit configured to decode interpolation weight data for each of the plurality of texels of the received block in dependence on the configuration data, and at least one interpolator unit configured to calculate a colour value for each of the plurality of texels of the received block using the interpolation weight data for that texel and a pair of colour endpoints from the colour endpoint data. At least one of the parameter decode unit, colour decode unit and weight decode unit are configured to decode intermediate data from the received block that is common to the decoding of at least a subset of texels of that block and to use that decoded intermediate data as part of the decoding of at least two of the plurality of texels from the received block of texture data.

First claim

Opening claim text (preview).

What is claimed is: 1. A decoder configured to decode a plurality of texels from a received block of texture data encoded according to the Adaptive Scalable Texture Compression (ASTC) format, wherein the texels represented by the block are partitioned into n p partitions, the decoder comprising: a weight decode unit configured to decode interpolation weight data for each of the plurality of texels of the received block; and n p interpolator units, each interpolator unit being configured to calculate a colour value for each texel of a subset of texels of the plurality of texels in a respective partition using the interpolation weight data for that texel and a respective pair of colour endpoints from colour endpoint data for the plurality of texels of the received block, wherein the n p interpolator units are configured to operate in parallel; wherein the weight decode unit is configured to decode as part of decoding the interpolation weight data, intermediate weight data only once, from the received block that is common to the decoding of at least two of the plurality of texels and independent of which of the texels are decoded from the received block; and wherein the weight decode unit is configured to use the intermediate weight data to decode the interpolation weight data for the at least two of the plurality of texels in parallel. 2. The decoder as claimed in claim 1 , further comprising a colour decode unit configured to decode the colour endpoint data for the plurality of texels of the received block. 3. The decoder as claimed in claim 2 , wherein the colour decode unit is configured to: decode intermediate colour data from the block as part of decoding the colour endpoint data that is independent of the texels being decoded from that block; and use that intermediate colour data to decode the colour endpoint data for each of the plurality of texels. 4. The decoder as claimed in claim 3 , wherein the intermediate colour data comprises the size of the data within the block used to represent the colour endpoints. 5. The decoder as claimed in claim 3 , wherein the intermediate colour data comprises colour endpoint mode data that specifies how to convert a set of colour endpoint values into a pair of colour endpoints. 6. The decoder as claimed in claim 2 , wherein the colour decode unit is configured to decode a set of colour values and to convert those values into a pair of colour endpoints for each of the plurality of texels, the colour decode unit being configured to use at least one of the colour endpoints for two or more of the plurality of texels. 7. The decoder as claimed in claim 6 , wherein the colour decode unit is configured to decode a set of n v colour values and to convert those values into a pair of colour endpoints for each of the plurality of texels, each colour endpoint being formed from n cv colour values, where n v <2n p n cv . 8. The decoder as claimed in claim 7 , wherein n p =4, n cv =4 and n v =18. 9. The decoder as claimed in claim 1 , wherein the block of texture data represents a block of n by m texels, and the intermediate weight data comprises a scaling factor for scaling a weight grid to the block of n by m texels represented by the block of texture data. 10. The decoder as claimed in claim 1 , wherein the intermediate weight data comprises the size of the data within the block used to represent the interpolation weight data. 11. The decoder as claimed in claim 1 , wherein the block of texture data represents a block of n by m texels, and the plurality of texels is a block of p by q texels, where p≤n and q≤m. 12. The decoder as claimed in claim 11 , wherein the decoder is configured to decode a block of 2 by 2 texels. 13. The decoder as claimed in claim 1 , wherein the weight decode unit is configured to decode interpolation weight data for each of the plurality of texels of the received block in dependence on configuration data for the received block of texture data. 14. The decoder as claimed in claim 13 , wherein a first portion of the configuration data is common to the decoding of the plurality of texels from the received block, and the weight decode unit is configured to use that first portion of configuration data for decoding the interpolation weight data for each of the plurality of texels. 15. The decoder as claimed in claim 14 , wherein the first portion of configuration data comprises a weight grid size specifying the dimensions of a weight grid and weight ranges specifying the range of values occupied by weights of the grid. 16. The decoder as claimed in claim 13 , further comprising a parameter decode unit configured to decode the configuration data for the received block of texture data. 17. The decoder as claimed in claim 16 , wherein the parameter decode unit is configured to decode intermediate configuration data from the block as part of decoding the configuration data; and use that same intermediate configuration data to decode a partition index for each of the plurality of texels. 18. The decoder as claimed in claim 17 , wherein the intermediate configuration data comprises at least one of a partition pattern index and a partition number. 19. A method of decoding a plurality of texels from a received block of texture data encoded according to the Adaptive Scalable Texture Compression (ASTC) format, wherein the texels represented by the block are partitioned into n p partitions, the method comprising: decoding interpolation weight data for each of the plurality of texels of the received block; and calculating, at each of n p interpolator units, a colour value for each texel of a subset of texels of the plurality of texels in a respective partition using the interpolation weight data for that texel and a respective pair of colour endpoints from colour endpoint data for the plurality of texels of the received block, wherein the n p interpolator units are configured to operate in parallel; wherein the decoding of interpolation weight data comprises decoding intermediate weight data, only once, from the received block that is common to the decoding of at least two of the plurality of texels and independent of which of the texels are decoded from the received block, and using the decoded intermediate weight data to decode the interpolation weight data for the at least two of the plurality of texels in parallel. 20. A non-transitory computer readable medium having stored thereon an integrated circuit definition dataset that, when processed in an integrated circuit manufacturing system, configures the integrated circuit manufacturing system to manufacture a decoder configured to decode a plurality of texels from a received block of texture data encoded according to the Adaptive Scalable Texture Compression (ASTC) format, wherein the texels represented by the block are partitioned into n p partitions, the decoder comprising: a weight decode unit configured to decode interpolation weight data for each of the plurality of texels of the received block; and n p interpolator units, each interpolator unit being configured to calculate a colour value for each texel of a subset of texels of the plurality of texels in a respective partition using the interpolation weight data for that texel and a respective pair of colour endpoints from colour endpoint data for the plurality of texels of the received block, wherein the n p interpolator units are configured to operate in parallel; wherein the weight decode unit is configured to decode, as part of decoding the interpolation weight da

Assignees

Inventors

Classifications

  • G06T11/10Primary

    Texturing; Colouring; Generation of textures or colours (retouching, inpainting or scratch removal G06T5/77) · CPC title

  • Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation (H04N19/635, H04N19/86 take precedence) · CPC title

  • Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder · CPC title

  • involving scalability at the object level, e.g. video object layer [VOL] · CPC title

  • the adaptation method, adaptation tool or adaptation type being iterative or recursive · 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 US11836830B2 cover?
A decoder is configured to decode a plurality of texels from a received block of texture data encoded according to the Adaptive Scalable Texture Compression (ASTC) format, and includes a parameter decode unit configured to decode configuration data for the received block of texture data, a colour decode unit configured to decode colour endpoint data for the plurality of texels of the received b…
Who is the assignee on this patent?
Imagination Tech Ltd
What technology area does this patent fall under?
Primary CPC classification G06T11/10. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 05 2023 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).