Patents Assigned to Imagination Technology Limited
-
Patent number: 11900036Abstract: Methods and systems for verifying a property of an integrated circuit hardware design. The method includes formally verifying, using a formal verification tool, that the property is true for the hardware design under a constraint that an instantiation of the hardware design transitions to a quiescent state at a symbolic time.Type: GrantFiled: July 22, 2021Date of Patent: February 13, 2024Assignee: Imagination Technologies LimitedInventor: Reinald Cruz
-
Patent number: 11900543Abstract: A tessellation method uses both vertex tessellation factors and displacement factors defined for each vertex of a patch, which may be a quad, a triangle or an isoline. The method is implemented in a computer graphics system and involves calculating a vertex tessellation factor for each corner vertex in one or more input patches. Tessellation is then performed on the plurality of input patches using the vertex tessellation factors. The tessellation operation involves adding one or more new vertices and calculating a displacement factor for each newly added vertex. A world space parameter for each vertex is subsequently determined by calculating a target world space parameter for each vertex and then modifying the target world space parameter for a vertex using the displacement factor for that vertex.Type: GrantFiled: October 19, 2022Date of Patent: February 13, 2024Assignee: Imagination Technologies LimitedInventors: Peter Malcolm Lacey, Simon Fenney
-
Patent number: 11900503Abstract: A multicore graphics processing unit (GPU) and a method of operating a GPU are provided. The GPU comprises at least a first core and a second core. At least one of the cores in the multicore GPU comprises a master unit configured to distribute geometry processing tasks between at least the first core and the second core.Type: GrantFiled: March 24, 2023Date of Patent: February 13, 2024Assignee: Imagination Technologies LimitedInventor: Ian King
-
Patent number: 11900122Abstract: Methods and parallel processing units for avoiding inter-pipeline data hazards identified at compile time. For each identified inter-pipeline data hazard the primary instruction and secondary instruction(s) thereof are identified as such and are linked by a counter which is used to track that inter-pipeline data hazard. When a primary instruction is output by the instruction decoder for execution the value of the counter associated therewith is adjusted to indicate that there is hazard related to the primary instruction, and when primary instruction has been resolved by one of multiple parallel processing pipelines the value of the counter associated therewith is adjusted to indicate that the hazard related to the primary instruction has been resolved.Type: GrantFiled: July 10, 2023Date of Patent: February 13, 2024Assignee: Imagination Technologies LimitedInventors: Luca Iuliano, Simon Nield, Yoong-Chert Foo, Ollie Mower
-
Patent number: 11893754Abstract: Methods and image processing systems are provided for determining a dominant gradient orientation for a target region within an image. A plurality of gradient samples are determined for the target region, wherein each of the gradient samples represents a variation in pixel values within the target region. The gradient samples are converted into double-angle gradient vectors, and the double-angle gradient vectors are combined so as to determine a dominant gradient orientation for the target region.Type: GrantFiled: June 10, 2022Date of Patent: February 6, 2024Assignee: Imagination Technologies LimitedInventor: Ruan Lakemond
-
Patent number: 11887244Abstract: A system and method for performing intersection testing of rays in a ray tracing system. The ray tracing system uses a hierarchical acceleration structure comprising a plurality of nodes, each identifying one or more elements for intersection testing. The system defines and updates progress information that identifies, for a ray, leaf nodes of the hierarchical acceleration structure which identify elements for which it is not yet known whether or not the ray interests.Type: GrantFiled: December 10, 2021Date of Patent: January 30, 2024Assignee: Imagination Technologies LimitedInventor: Daniel Barnard
-
Patent number: 11887212Abstract: A graphics processing system includes a tiling unit configured to tile a scene into a plurality of tiles. A processing unit identifies tiles of the plurality of tiles that are each associated with at least a predetermined number of primitives. A memory management unit allocates a portion of memory to each of the identified tiles and does not allocate a portion of memory for each of the plurality of tiles that are not identified by the processing unit. A rendering unit renders each of the identified tiles and does not render tiles that are not identified by the processing unit.Type: GrantFiled: November 18, 2022Date of Patent: January 30, 2024Assignee: Imagination Technologies LimitedInventors: Michael Worcester, Stuart Smith, Simon Fenney
-
Patent number: 11886536Abstract: Methods and systems for performing a convolution transpose operation between an input tensor having a plurality of input elements and a filter comprising a plurality of filter weights. The method includes: dividing the filter into a plurality of sub-filters; performing, using hardware logic, a convolution operation between the input tensor and each of the plurality of sub-filters to generate a plurality of sub-output tensors, each sub-output tensor comprising a plurality of output elements; and interleaving, using hardware logic, the output elements of the plurality of sub-output tensors to form a final output tensor for the convolution transpose.Type: GrantFiled: January 12, 2023Date of Patent: January 30, 2024Assignee: Imagination Technologies LimitedInventors: Cagatay Dikici, Clifford Gibson, James Imber
-
Patent number: 11887240Abstract: A graphics processing unit having multiple groups of processor cores for rendering graphics data for allocated tiles and outputting the processed data to regions of a memory resource. Scheduling logic allocates sets of tiles to the groups of processor cores to perform a first render, and at a time when at least one of the groups has not completed processing its allocated sets of one or more tiles as part of the first render, allocates at least one set of tiles for a second render to one of the other groups of processor cores for processing. Progress indication logic indicates progress of the first render, indicating regions of the memory resource for which processing for the first render has been completed. Progress check logic checks the progress indication in response to a request for access to a region of the memory resource as part of the second render and enables access that region of the resource in response to an indication that processing for the first render has been completed for that region.Type: GrantFiled: January 19, 2022Date of Patent: January 30, 2024Assignee: Imagination Technologies LimitedInventors: John Howson, Steven Fishwick
-
Patent number: 11880933Abstract: Systems and methods for processing primitive fragments in a rasterization phase of a graphics processing system wherein a rendering space is subdivided into a plurality of tiles. The method includes receiving a plurality of primitive fragments, each primitive fragment corresponding to a pixel sample in a tile; determining whether a depth buffer read is to be performed for hidden surface removal processing of one or more of the primitive fragments; sorting the primitive fragments into a priority queue and a non-priority queue based on the depth buffer read determinations; and performing hidden surface removal processing on the primitive fragments in the priority and non-priority queues wherein priority is given to the primitive fragments in the priority queue.Type: GrantFiled: May 26, 2021Date of Patent: January 23, 2024Assignee: Imagination Technologies LimitedInventors: Robert Brigg, Lorenzo Belli
-
Patent number: 11880925Abstract: In an aspect, an update unit can evaluate condition(s) in an update request and update one or more memory locations based on the condition evaluation. The update unit can operate atomically to determine whether to effect the update and to make the update. Updates can include one or more of incrementing and swapping values. An update request may specify one of a pre-determined set of update types. Some update types may be conditional and others unconditional. The update unit can be coupled to receive update requests from a plurality of computation units. The computation units may not have privileges to directly generate write requests to be effected on at least some of the locations in memory. The computation units can be fixed function circuitry operating on inputs received from programmable computation elements. The update unit may include a buffer to hold received update requests.Type: GrantFiled: January 7, 2022Date of Patent: January 23, 2024Assignee: Imagination Technologies LimitedInventors: Steven J. Clohset, Jason R. Redgrave, Luke T. Peterson
-
Patent number: 11880907Abstract: A method of configuring a graphics processing unit includes generating configuration data that specifies a configuration to be adopted by the graphics processing unit. The configuration data is received at the graphics processing unit, which is configured in accordance with the configuration data by writing the configuration data into one or more registers of the graphics processing unit. It is determined whether the graphics processing unit is correctly configured in accordance with the configuration data by determining whether the configuration data has been correctly written into the one or more registers of the graphics processing unit. An error is determined to have occurred in response to determining that the graphics processing unit is not correctly configured in accordance with the configuration data.Type: GrantFiled: January 23, 2023Date of Patent: January 23, 2024Assignee: Imagination Technologies LimitedInventors: Mario Sopena Novales, Philip Morris
-
Patent number: 11875443Abstract: A method of rendering a scene formed by primitives in a graphics processing system. For a sequence of primitives, a pipeline fragment shading rate value and a primitive fragment shading rate value for a primitive are combined to produce a combined fragment shading rate value for the primitive. Fragment shading rate data representing the combined fragment shading rate value for the primitive is stored and data identifying the primitive is associated with the fragment shading rate data. For a subsequent primitive, it is determined whether or not a combined fragment shading rate value for the subsequent primitive is the same as for the preceding primitive. If it is the same, data identifying the subsequent primitive is associated with the fragment shading rate data that the data identifying the preceding primitive is associated with.Type: GrantFiled: June 30, 2022Date of Patent: January 16, 2024Assignee: Imagination Technologies LimitedInventor: Enrique de Lucas
-
Patent number: 11875248Abstract: A multicore hardware implementation of a deep neural network includes a plurality of layers arranged in plurality of layer groups. The input data to the network comprises a multidimensional tensor including one or more traversed dimensions that are traversed by strides in at least one layer of a first layer group, and one or more non-traversed dimensions. If a size of the input data in a first dimension is greater than a threshold, the hardware implementation splits the input data for the first layer group into at least a first tile and a second tile, along the first dimension. If the size of the input data in the first dimension is not greater than the threshold, the hardware implementation splits the evaluation of the first layer group into at least a first pass and a second pass, along a dimension other than the first dimension.Type: GrantFiled: October 13, 2021Date of Patent: January 16, 2024Assignee: Imagination Technologies LimitedInventors: Xiran Huang, Fernando Escobar
-
Patent number: 11868290Abstract: A communications interface for interfacing between a host system and a state machine includes an event slot, the event slot comprising a plurality of registers including: a write register for writing by the host system, and a read register for reading by the host system, wherein the event slot is addressed from the host system by a single address location permitting the host system to write data to the write register and/or read data from the read register; and wherein the write register and the read register are individually addressable by the state machine.Type: GrantFiled: August 11, 2022Date of Patent: January 9, 2024Assignee: Imagination Technologies LimitedInventors: Bert Hindle, Ben Fletcher
-
Patent number: 11868775Abstract: Methods of encoding and decoding are described which use a variable number of instruction words to encode instructions from an instruction set, such that different instructions within the instruction set may be encoded using different numbers of instruction words. To encode an instruction, the bits within the instruction are re-ordered and formed into instruction words based upon their variance as determined using empirical or simulation data. The bits in the instruction words are compared to corresponding predicted values and some or all of the instruction words that match the predicted values are omitted from the encoded instruction.Type: GrantFiled: May 5, 2022Date of Patent: January 9, 2024Assignee: Imagination Technologies LimitedInventors: Simon Thomas Nield, James McCarthy
-
Patent number: 11868692Abstract: Address generators for use in verifying an integrated circuit hardware design for an n-way set associative cache. The address generator is configured to generate, from a reverse hashing algorithm matching the hashing algorithm used by the n-way set associative cache, a list of cache set addresses that comprises one or more addresses of the main memory corresponding to each of one or more target sets of the n-way set associative cache. The address generator receives requests for addresses of main memory from a driver to be used to generate stimuli for testing an instantiation of the integrated circuit hardware design for the n-way set associative cache. In response to receiving a request the address generator provides an address from the list of cache set addresses.Type: GrantFiled: April 2, 2021Date of Patent: January 9, 2024Assignee: Imagination Technologies LimitedInventors: Anthony Wood, Philip Chambers
-
Patent number: 11869133Abstract: A system and method for performing intersection testing of rays in a ray tracing system. The ray tracing system uses a hierarchical acceleration structure comprising a plurality of nodes, each identifying one or more elements able to be intersected by a ray. The system makes use of a serial-mode ray intersection process, in which, when a ray intersects a bounding volume, a limited number of new ray requests are generated.Type: GrantFiled: September 30, 2021Date of Patent: January 9, 2024Assignee: Imagination Technologies LimitedInventor: Daniel Barnard
-
Patent number: 11868426Abstract: Hardware implementations of, and methods for processing, a convolution layer of a DNN that comprise a plurality of convolution engines wherein the input data and weights are provided to the convolution engines in an order that allows input data and weights read from memory to be used in at least two filter-window calculations performed either by the same convolution engine in successive cycles or by different convolution engines in the same cycle. For example, in some hardware implementations of a convolution layer the convolution engines are configured to process the same weights but different input data each cycle, but the input data for each convolution engine remains the same for at least two cycles so that the convolution engines use the same input data in at least two consecutive cycles.Type: GrantFiled: October 26, 2021Date of Patent: January 9, 2024Assignee: Imagination Technologies LimitedInventors: Chris Martin, David Hough, Clifford Gibson, Daniel Barnard
-
Patent number: 11868807Abstract: A method of activating scheduling instructions within a parallel processing unit includes checking if an ALU targeted by a decoded instruction is full by checking a value of an ALU work fullness counter stored in the instruction controller and associated with the targeted ALU. If the targeted ALU is not full, the decoded instruction is sent to the targeted ALU for execution and the ALU work fullness counter associated with the targeted ALU is updated. If, however, the targeted ALU is full, a scheduler is triggered to de-activate the scheduled task by changing the scheduled task from the active state to a non-active state. When an ALU changes from being full to not being full, the scheduler is triggered to re-activate an oldest scheduled task waiting for the ALU by removing the oldest scheduled task from the non-active state.Type: GrantFiled: November 17, 2021Date of Patent: January 9, 2024Assignee: Imagination Technologies LimitedInventors: Simon Nield, Yoong-Chert Foo, Adam de Grasse, Luca Iuliano