Data processing systems

US11036644B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11036644-B2
Application numberUS-201715423497-A
CountryUS
Kind codeB2
Filing dateFeb 2, 2017
Priority dateFeb 2, 2017
Publication dateJun 15, 2021
Grant dateJun 15, 2021

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.

When a data processing operation requires data that is stored in a first cache and the fetching of the data into the first cache is dependent upon data stored in another cache, and an attempt to read the data from the first cache “misses”, the data processing operation is added to a record of data processing operations that have missed in the first cache and the data that is required for the data processing operation is fetched into the first cache by reading the data that is required to fetch the data into the first cache from the another cache and then using that data from the another cache to fetch the required data into the first cache. When the data that is required for the data processing operation has been fetched into the first cache, the data processing operation is performed using the fetched data.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of operating a graphics processing system when performing a graphics texturing operation, the method comprising: when a graphics texturing operation requires texel data that is stored in a texel cache of the graphics processing system and the fetching of the texel data into the texel cache for use by the graphics texturing operation is dependent upon further mip-map address data stored in a second cache of the graphics processing system the mip-map address data comprising a memory location of the texel data or information to allow determination of a memory location of the texel data: attempting to read the texel data from the texel cache; in response to the attempt to read the texel data from the texel cache finding that the texel data is stored in the texel cache: reading the texel data from the texel cache and performing the graphics texturing operation using the read texel data, wherein mip-map address data is not read from the second cache; and in response to the attempt to read the texel data from the texel cache other than finding that the texel data is stored in the texel cache: stalling the graphics texturing operation; adding the graphics texturing operation to a record of graphics texturing operations for which texel data has been attempted to be read from the texel cache and for which it was found that the texel data was not present in the texel cache; fetching the texel data into the texel cache, wherein fetching the texel data into the texel cache includes reading the mip-map address data from the second cache and using the mip-map address data read from the second cache to fetch the texel data into the texel cache; and when the texel data has been fetched into the texel cache, identifying from the record of graphics texturing operations the graphics texturing operation awaiting the texel data that has been fetched into the texel cache, reading the fetched texel data from the texel cache for the identified graphics texturing operation and performing the identified graphics texturing operation using the read texel data. 2. The method of claim 1 , further comprising: associating state information with each cache line in the texel cache; wherein each cache line of the texel cache can be indicated as having one of four states: a state meaning that the line is not in use and does not contain any valid data; a state meaning that the line is allocated to receive data and the data for it is still to be requested from storage; a state meaning that the line is allocated to receive data and the data for the line has been requested from storage; and a state meaning that the line contains valid data. 3. The method of claim 1 , wherein fetching the texel data into the texel cache in response to the attempt to read the texel data from the texel cache other than finding that the texel data is stored in the texel cache comprises: determining whether there is an available cache line in the texel cache for receiving the texel data; and when it is determined that there is a cache line in the texel cache available for receiving the texel data: allocating an available cache line in the texel cache to receive the texel data; and setting an indication to indicate that the allocated cache line in the texel cache is allocated to receive data and that the data for the line is still to be requested from storage where that data is stored. 4. The method of claim 3 , wherein the fetching of the texel data into the texel cache in response to the attempt to read texel data from the texel cache other than finding that the texel data is stored in the texel cache comprises: scanning the cache lines in the texel cache in turn in a scanning order to identify the next line in the texel cache in the scanning order that is indicated as being allocated to receive data and for which the data for the line is still to be requested from storage where that data is stored; and attempting to fetch the data for the identified line into the identified line in the texel cache. 5. The method of claim 4 , wherein attempting to fetch the data for the identified line into the identified line in the texel cache comprises: attempting to read the mip-map address data from the second cache; and in response to the attempt to read the mip-map address data in the second cache finding that the mip-map address data is stored in the second cache: reading that mip-map address data from the second cache; and using that mip-map address data to send a fetch request to load the texel data into the texel cache. 6. The method of claim 4 , wherein attempting to fetch the data for the identified line into the identified line in the texel cache comprises: attempting to read the mip-map address data from the second cache; and in response to the attempt to read the mip-map address data from the second cache other than finding that the mip-map address data is stored in the second cache: leaving the identified cache line in the texel cache as being indicated that the line is allocated to receive data and for which the data for the line is still to be requested from storage where that data is stored; and continuing the scanning of the cache lines in the texel cache in turn in the scanning order to identify the next line in the texel cache in the scanning order that is indicated as being allocated to receive data and for which the data for the line is still to be requested from storage where that data is stored. 7. The method of claim 4 , wherein attempting to fetch the data for the identified line into the identified line in the texel cache comprises: attempting to read the mip-map address data from the second cache; and in response to the attempt to read the mip-map address data from the second cache other than finding that the mip-map address data is stored in the second cache: fetching the mip-map address data into the second cache; and when the mip-map address data has been fetched into the second cache: reading that mip-map address data from the second cache; and using that mip-map address data to fetch the texel data into the texel cache. 8. The method of claim 7 , wherein fetching the mip-map address data into the second cache comprises: determining whether there is an available cache line in the second cache for receiving the mip-map address data; and when it is determined that there is a cache line in the second cache available for receiving the mip-map address data: allocating an available cache line in the second cache to receive the mip-map address data; and configuring the graphics processing system to ensure that the fetch of the mip-map address data into the allocated line in the second cache will happen. 9. The method of claim 7 , wherein fetching the mip-map address data into the second cache comprises: determining whether there is an available cache line in the second cache for receiving the mip-map address data; and once it is determined that there is not a cache line in the second cache available for receiving mip-map address data: recording which cache line in the texel cache has failed to have an available cache line allocated in the second cache; and preventing any other cache line in the texel cache from being allocated a cache line in the second cache until the cache line in the texel cache that failed to have an available cache line in the second cache allocated to it has had a cache line in the second cache allocated to it. 10. The method of claim 7 , further comprising once mip-map address data has been fetched into a cache line of the second cache, locking that cache line of the second cache such that it cannot be evicted from the second cache unti

Assignees

Inventors

Classifications

  • Performance improvement · CPC title

  • with dedicated cache, e.g. instruction or stack · CPC title

  • In image processor or graphics adapter · CPC title

  • adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel · CPC title

  • with two or more cache hierarchy levels (with multilevel cache hierarchies G06F12/0811) · 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 US11036644B2 cover?
When a data processing operation requires data that is stored in a first cache and the fetching of the data into the first cache is dependent upon data stored in another cache, and an attempt to read the data from the first cache “misses”, the data processing operation is added to a record of data processing operations that have missed in the first cache and the data that is required for the da…
Who is the assignee on this patent?
Advanced Risc Mach Ltd
What technology area does this patent fall under?
Primary CPC classification G06F12/0897. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 15 2021 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).