Patents by Inventor Olof Henrik Uhrenholt

Olof Henrik Uhrenholt has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11468633
    Abstract: A method of and apparatus for processing graphics in a tile-based graphics processing system, wherein when preparing primitive lists it is determined, based on a measure of the size of a primitive, whether or not to perform processing of one or more attributes of one or more vertices of the primitive.
    Type: Grant
    Filed: March 30, 2021
    Date of Patent: October 11, 2022
    Assignee: Arm Limited
    Inventors: Olof Henrik Uhrenholt, Michael Martin Klock, Philip Carlos Garcia
  • Publication number: 20220319111
    Abstract: A method of and apparatus for processing graphics in a tile-based graphics processing system, wherein when preparing primitive lists it is determined, based on a measure of the size of a primitive, whether or not to perform processing of one or more attributes of one or more vertices of the primitive.
    Type: Application
    Filed: March 30, 2021
    Publication date: October 6, 2022
    Applicant: Arm Limited
    Inventors: Olof Henrik Uhrenholt, Michael Martin Klock, Philip Carlos Garcia
  • Publication number: 20220308884
    Abstract: A data processor comprising an execution engine 51 for executing programs for execution threads and one or more caches 48, 49 operable to store data values for use when executing program instructions to perform processing operations for execution threads. The data processor further comprises a thread throttling control unit 54 configured to monitor the operation of the caches 48, 49 during execution of programs for execution threads, and to control the issuing of instructions for execution threads to the execution engine for executing a program based on the monitoring of the operation of the caches during execution of the program.
    Type: Application
    Filed: March 24, 2022
    Publication date: September 29, 2022
    Inventors: Tord Kvestad Øygard, Olof Henrik Uhrenholt, Andreas Due Engh-Halstvedt
  • Patent number: 11361485
    Abstract: When generating a set of tile-lists for use in a tile-based graphics processing system when rendering a scene for display, vertex data is obtained for a plurality of draw calls, and the obtained vertex data is then processed to generate for each of the draw calls data indicative of which tile(s) the primitives associated with that draw call should be rendered for when rendering the scene for display. The vertex data for at least some of the plurality of draw calls can be obtained and processed out of order and/or in parallel and the data is then sorted based on a desired rendering order for the draw calls in order to generating a tile-list identifying the sequence of draw calls to be rendered. In embodiments, the generated data is sorted using a re-ordering buffer.
    Type: Grant
    Filed: October 21, 2019
    Date of Patent: June 14, 2022
    Assignee: Arm Limited
    Inventor: Olof Henrik Uhrenholt
  • Publication number: 20220164128
    Abstract: A data processing system includes an external memory system, a processor and an internal memory system. The internal memory system includes an internal memory that stores data for use by the processor when performing data processing operations. The internal memory system also includes a data encoder associated with the internal memory. The data encoder reads data from the external memory system to the data encoder and returns the data to the external memory system from the data encoder, without storing the data in the internal memory.
    Type: Application
    Filed: November 18, 2021
    Publication date: May 26, 2022
    Inventors: Olof Henrik UHRENHOLT, Andreas Due ENGH-HALSTVEDT
  • Patent number: 11250620
    Abstract: A method of operating a graphics processor that comprises a renderer that can render primitives to generate a render output using different shading rates is disclosed. A shading rate for rendering a primitive is determined based on a depth value for the primitive. This can reduce processing effort required to render a render output while maintaining an acceptable image quality.
    Type: Grant
    Filed: June 9, 2020
    Date of Patent: February 15, 2022
    Assignee: Arm Limited
    Inventors: Olof Henrik Uhrenholt, Sandeep Kakarlapudi
  • Publication number: 20220027283
    Abstract: A data processing system is provided comprising a cache system configured to transfer data between a processor and memory system. The cache system comprises a cache. When a block of data that is stored in the memory in a compressed form is to be loaded into the cache, the block of data is stored into a group of one or more cache lines of the cache and the associated compression metadata for the compressed block of data is provided as separate side band data.
    Type: Application
    Filed: July 23, 2020
    Publication date: January 27, 2022
    Applicant: Arm Limited
    Inventors: Olof Henrik Uhrenholt, Andrew Brookfield Swaine
  • Publication number: 20220027281
    Abstract: A data processing system includes a memory system, a processor and a cache system. The cache system includes a cache and a data encoder associated with the cache. The data encoder encodes blocks of uncompressed data having a particular data size for storing in the memory system. The processor is configured, when an array of data has a data size equal to the particular data size or is able to be combined with one or more other arrays of data already written to the cache to provide a plurality of arrays of data having a data size that is equal to the particular data size, to output the array of data from the processor to the data encoder, bypassing the cache, for encoding as or as part of a block of data having the particular data size.
    Type: Application
    Filed: July 19, 2021
    Publication date: January 27, 2022
    Inventors: Olof Henrik Uhrenholt, Håkan Lars-Göran Persson, Jakob Axel Fries
  • Publication number: 20220020108
    Abstract: To suspend the processing for a group of one or more execution threads currently executing a shader program for an output being generated by a graphics processor, the issuing of shader program instructions for execution by the group of one or more execution threads is stopped, and any outstanding register-content affecting transactions for the group of one or more execution threads are allowed to complete. Once all outstanding register-content affecting transactions for the group of one or more execution threads have completed, the content of the registers associated with the threads of the group of one or more execution threads, and a set of state information for the group of one or more execution threads, including at least an indication of the last instruction in the shader program that was executed for the threads of the group of one or more execution threads, are stored to memory.
    Type: Application
    Filed: July 17, 2020
    Publication date: January 20, 2022
    Applicant: Arm Limited
    Inventor: Olof Henrik Uhrenholt
  • Patent number: 11216993
    Abstract: When processing graphics primitives in a graphics processing system, the render output is divided into a plurality of regions for rendering, each region comprising a respective area of the render output. It is determined for which of the plurality of regions of the render output a primitive should be rendered for. Primitive data for rendering the primitive is then stored either in a combined data structure in memory that is associated with a plurality of different regions of the render output, or is stored in a respective data structure for each region of the render output it is determined the primitive should be rendered for. Which manner the primitive data is stored is determined in dependence on a property, e.g. a coverage, of the primitive.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: January 4, 2022
    Assignee: Arm Limited
    Inventors: Alexander Eugene Chalfin, Andreas Due Engh-Halstvedt, Olof Henrik Uhrenholt
  • Patent number: 11210847
    Abstract: When processing graphics primitives in a graphics processing system, the render output is divided into a plurality of regions for rendering, each region comprising a respective area of the render output. It is determined for which of the plurality of regions of the render output a primitive should be rendered for. Associated state data for rendering the primitive is stored in a “state data” data structure in memory. For each region of the render output it is determined the primitive should be rendered for, a reference to the associated state data for rendering the primitive is stored in a respective, different data structure for each different region of the render output it is determined the primitive should be rendered for.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: December 28, 2021
    Assignee: Arm Limited
    Inventors: Alexander Eugene Chalfin, Andreas Due Engh-Halstvedt, Olof Henrik Uhrenholt
  • Patent number: 11210821
    Abstract: When processing graphics primitives in a graphics processing system, the render output is divided into a plurality of regions for rendering, each region comprising a respective area of the render output. It is determined for which of the plurality of regions of the render output a primitive should be rendered for. For each region of the render output it is determined a primitive should be rendered for, geometry data for the primitive is stored in memory in a respective data structure for the region in a compressed form, such that the geometry data for the primitive to be rendered is stored in a compressed form, in a respective, different data structure for each different region of the render output it is determined the primitive should be rendered for.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: December 28, 2021
    Assignee: Arm Limited
    Inventors: Alexander Eugene Chalfin, Andreas Due Engh-Halstvedt, Olof Henrik Uhrenholt, Andreas Loeve Selvik
  • Patent number: 11205243
    Abstract: A data processing system includes a memory and a processor in communication with the memory. The processor is configured to, when storing an array of data in the memory, produce information representative of the content of a block of data representing a particular region of the array of data, write the block of data to a data structure in the memory, and write the information representative of the content of the block of data to the data structure.
    Type: Grant
    Filed: January 14, 2020
    Date of Patent: December 21, 2021
    Assignee: Arm Limited
    Inventors: Olof Henrik Uhrenholt, Andreas Due Engh-Halstvedt
  • Publication number: 20210383600
    Abstract: A method of operating a graphics processor that comprises a renderer that can render primitives to generate a render output using different shading rates is disclosed. A shading rate for rendering a primitive is determined based on a depth value for the primitive. This can reduce processing effort required to render a render output while maintaining an acceptable image quality.
    Type: Application
    Filed: June 9, 2020
    Publication date: December 9, 2021
    Applicant: Arm Limited
    Inventors: Olof Henrik Uhrenholt, Sandeep Kakarlapudi
  • Patent number: 11189005
    Abstract: A method of operating a graphics processor that is configured to execute a graphics processing pipeline is provided. The method comprises the graphics processor reading, from an index buffer in external memory, a block of data comprising plural sets of indices, each set of indices comprising a sequence of indices indexing a set of vertices that defines a primitive of a plurality of primitives to be processed by the graphics processing pipeline. The graphics processor compresses the block of data to form a compressed version of the block of data, and stores the compressed version of the block of data in an internal memory of the graphics processor.
    Type: Grant
    Filed: August 27, 2020
    Date of Patent: November 30, 2021
    Assignee: Arm Limited
    Inventors: Andreas Due Engh-Halstvedt, Jorn Nystad, Olof Henrik Uhrenholt, Frank Klaeboe Langtind
  • Patent number: 11170555
    Abstract: When processing graphics primitives in a graphics processing system, the render output is divided into a plurality of regions (40) for rendering, each region (40) comprising a respective area of the render output; and for sets of one or more primitives to be rendered, it is determined for which of the plurality of regions of the render output (40) the primitive(s) should be rendered; and for each region of the render output (40) it is determined the primitive(s) should be rendered for, geometry data for the primitive(s) is stored in memory in a respective data structure (42) along with an indication of state data that is to be used for rendering the primitive(s) for the region, such that the geometry data for the primitive(s) to be rendered is stored in a respective, different data structure (42) for each different region of the render output (40) it is determined the primitive(s) should be rendered for.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: November 9, 2021
    Assignee: Arm Limited
    Inventors: Ian Rudolf Bratt, Andreas Due Engh-Halstvedt, Alexander Eugene Chalfin, Andreas Loeve Selvik, Olof Henrik Uhrenholt, Thomas J. Olson
  • Patent number: 11138786
    Abstract: A method of operating a graphics processor comprises snapping a position of a vertex to an array of vertex positions to produce one or more first representations of the position of the vertex, and converting each of one or more of the first representations of the position of the vertex into a second representation of the position of the vertex. At least one bit of the second representation of the position of the vertex is unused to represent the position of the vertex. The method comprises using the at least one bit of the second representation of the position of the vertex to represent the one or more other vertex attributes to form a representation of both the position of the vertex and the one or more other vertex attributes, and storing a representation of both the position of the vertex and the one or more other vertex attributes.
    Type: Grant
    Filed: May 19, 2020
    Date of Patent: October 5, 2021
    Assignee: Arm Limited
    Inventor: Olof Henrik Uhrenholt
  • Patent number: 11132835
    Abstract: To suspend processing of a sequence of primitives being processed in a graphics processing pipeline the processing of primitives in a second section of the graphics processing pipeline in which the primitives are processed into graphics fragments is continued to generate respective sets of fragments. For each respective set of graphics fragments generated from this continued processing the set of fragments is passed from the second section of the graphics processing pipeline to a rendering circuit and the processing in respect of the respective fragments is then suspended. A set of suspend operation state information for the set of fragments indicating that the processing was suspended is then written out.
    Type: Grant
    Filed: July 17, 2020
    Date of Patent: September 28, 2021
    Assignee: Arm Limited
    Inventor: Olof Henrik Uhrenholt
  • Patent number: 11127188
    Abstract: To suspend the processing of primitives in a graphics processing pipeline the graphics processor selects a suspend operation “boundary” primitive having a position within a sequence of graphics primitives being processed such that it can be guaranteed that all primitives in the sequence of primitives that are behind the position of the selected boundary primitive within the sequence of primitives are in their initial specified order, whereas any primitives in the sequence of primitives that may be out of order are ahead of the selected boundary primitive. The processing of primitives behind the boundary primitive is then stopped, whereas processing for primitives ahead of boundary primitive is continued.
    Type: Grant
    Filed: July 17, 2020
    Date of Patent: September 21, 2021
    Assignee: Arm Limited
    Inventor: Olof Henrik Uhrenholt
  • Patent number: 11127187
    Abstract: When processing graphics primitives in a graphics processing system, the render output is divided into a plurality of regions (40) for rendering, each region (40) comprising a respective area of the render output; and for sets of one or more primitives to be rendered, it is determined for which of the plurality of regions of the render output (40) the primitive(s) should be rendered; and for each region of the render output (40) it is determined the primitive(s) should be rendered for, geometry data for the primitive(s) is stored in memory in a respective data structure (42) along with an indication of state data that is to be used for rendering the primitive(s) for the region, such that the geometry data for the primitive(s) to be rendered is stored in a respective, different data structure (42) for each different region of the render output (40) it is determined the primitive(s) should be rendered for.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: September 21, 2021
    Assignee: Arm Limited
    Inventors: Ian Rudolf Bratt, Andreas Due Engh-Halstvedt, Alexander Eugene Chalfin, Andreas Loeve Selvik, Olof Henrik Uhrenholt, Thomas J. Olson