Patents Assigned to Imagination Technologies
-
Patent number: 12148093Abstract: Rendering systems that can use combinations of rasterization rendering processes and ray tracing rendering processes are disclosed. In some implementations, these systems perform a rasterization pass to identify visible surfaces of pixels in an image. Some implementations may begin shading processes for visible surfaces, before the geometry is entirely processed, in which rays are emitted. Rays can be culled at various points during processing, based on determining whether the surface from which the ray was emitted is still visible. Rendering systems may implement rendering effects as disclosed.Type: GrantFiled: April 2, 2021Date of Patent: November 19, 2024Assignee: Imagination Technologies LimitedInventors: Jens Fursund, Luke T. Peterson
-
Patent number: 12148188Abstract: A computer-implemented method and a decompression unit for decompressing a compressed block of data in accordance with a multi-level difference table. The compressed block of data represents a block of image data comprising a plurality of image element values, wherein each level of the multi-level difference table comprises a plurality of entries. An origin value for the block of image data is determined using data representing the origin value from the compressed block of data. A level within the multi-level difference table for the block of image data is identified using an indication of the level from the compressed block of data.Type: GrantFiled: May 28, 2023Date of Patent: November 19, 2024Assignee: Imagination Technologies LimitedInventor: Xile Yang
-
Patent number: 12141548Abstract: Methods and leading zero anticipators for estimating the number of leading zeros in a result of a fixed point arithmetic operation which is accurate to within one bit for any signed fixed point numbers. The leading zero anticipator includes an input encoding circuit which generates an encoded input string from the fixed point numbers; a window-based surrogate string generation circuit which generates a surrogate string whose leading one is an estimate of the leading one in the result of the arithmetic operation by examining consecutive windows of the encoded input string and setting corresponding bits of the surrogate string based on the examinations; and a counter circuit configured to estimate the number of leading zeros in the result of the arithmetic operation based on the leading one in the surrogate string.Type: GrantFiled: June 1, 2023Date of Patent: November 12, 2024Assignee: Imagination Technologies LimitedInventors: Freddie Rupert Exall, Theo Alan Drane, Joe Buckingham
-
Patent number: 12141684Abstract: Hardware for implementing a Deep Neural Network (DNN) having a convolution layer, the hardware comprising an input buffer configured to provide data windows to a plurality of convolution engines, each data window comprising a single input plane; and each of the plurality of convolution engines being operable to perform a convolution operation by applying a filter to a data window, each filter comprising a set of weights for combination with respective data values of a data window, and each of the plurality of convolution engines comprising: multiplication logic operable to combine a weight of the filter with a respective data value of the data window provided by the input buffer; and accumulation logic configured to accumulate the results of a plurality of combinations performed by the multiplication logic so as to form an output for a respective convolution operation.Type: GrantFiled: March 9, 2023Date of Patent: November 12, 2024Assignee: Imagination Technologies LimitedInventor: Christopher Martin
-
Patent number: 12141909Abstract: Methods of rendering a scene in a graphics system identify a draw call within a current render and analyse the last shader in the series of shaders used by the draw call to identify any buffers that are sampled by the last shader and that are to be written by a previous render that has not yet been sent for execution on the GPU. If any such buffers are identified, further analysis is performed to determine whether the last shader samples from the identified buffers using screen space coordinates that correspond to a current fragment location and if this determination is positive, the draw call is added to data relating to the previous render and the last shader is recompiled to replace an instruction that reads data from an identified buffer with an instruction that reads data from an on-chip register.Type: GrantFiled: June 12, 2023Date of Patent: November 12, 2024Assignee: Imagination Technologies LimitedInventors: John W. Howson, Aroun Demeure, Steven Fishwick
-
Patent number: 12135886Abstract: Methods and storage unit allocators for allocating one or more portions of a storage unit to a plurality of tasks for storing at least two types of data. The method includes receiving a request for one or more portions of the storage unit to store a particular type of data of the at least two types of data for a task of the plurality of tasks; associating the request with one of a plurality of virtual partitionings of the storage unit based on one or more characteristics of the request, each virtual partitioning allotting none, one, or more than one portion of the storage unit to each of the at least two types of data; and allocating the requested one or more portions of the storage unit to the task from the none, one, or more than one portion of the storage unit allotted to the particular type of data in the virtual partitioning associated with the request.Type: GrantFiled: October 16, 2023Date of Patent: November 5, 2024Assignee: Imagination Technologies LimitedInventor: Ian King
-
Patent number: 12131403Abstract: Methods and apparatus for merging tasks in a graphics pipeline in which, subsequent to a trigger to flush a tag buffer, one or more tasks from the flushed tag buffer are generated, each task comprising a reference to a program and plurality of fragments on which the program is to be executed, wherein a fragment is an element of a primitive at a sample position. It is then determined whether merging criteria are satisfied and if satisfied, one or more fragments from a next tag buffer flush are added to a last task of the one or more tasks generated from the flushed tag buffer.Type: GrantFiled: August 7, 2023Date of Patent: October 29, 2024Assignee: Imagination Technologies LimitedInventors: Roger Hernando Buch, Panagiotis Velentzas, Richard Broadhurst, Xile Yang, John W. Howson
-
Patent number: 12131564Abstract: A computer-implemented method for generating a feature descriptor for a location in an image for use in performing descriptor matching in analysing the image, the method comprising determining a set of samples characterising a location in an image by sampling scale-space data representative of the image, the scale-space data comprising data representative of the image at a plurality of length scales; and generating a feature descriptor in dependence on the determined set of samples.Type: GrantFiled: May 23, 2022Date of Patent: October 29, 2024Assignee: Imagination Technologies LimitedInventor: Timothy Smith
-
Patent number: 12118398Abstract: Aspects include computation systems that can identify computation instances that are not capable of being reentrant, or are not reentrant capable on a target architecture, or are non-reentrant as a result of having a memory conflict in a particular execution situation. For example, a system can have a plurality of computation units, each with an independently schedulable SIMD vector. Computation instances can be defined by a program module, and a data element(s) that may be stored in a local cache for a particular computation unit of the plurality. Each local cache does not maintain coherency controls for such data elements. During scheduling, a scheduler can maintain a list of running (or runnable) instances, and attempt to schedule new computation instances by determining whether any new computation instance conflicts with a running instance and responsively defer scheduling. Such memory conflict checks can be conditioned on a flag or other indication of the potential for non-reentrancy.Type: GrantFiled: July 20, 2018Date of Patent: October 15, 2024Assignee: Imagination Technologies LimitedInventors: Luke Tilman Peterson, James Alexander McCombe
-
Patent number: 12112396Abstract: A SIMD processing unit processes a plurality of tasks which each include up to a predetermined maximum number of work items. The work items of a task are arranged for executing a common sequence of instructions on respective data items. The data items are arranged into blocks, with some of the blocks including at least one invalid data item. Work items which relate to invalid data items are invalid work items. The SIMD processing unit comprises a group of processing lanes configured to execute instructions of work items of a particular task over a plurality of processing cycles. A control module assembles work items into the tasks based on the validity of the work items, so that invalid work items of the particular task are temporally aligned across the processing lanes. In this way the number of wasted processing slots due to invalid work items may be reduced.Type: GrantFiled: August 21, 2023Date of Patent: October 8, 2024Assignee: Imagination Technologies LimitedInventors: John Howson, Jonathan Redshaw, Yoong Chert Foo
-
Patent number: 12112421Abstract: A method and an intersection testing module in a ray tracing system for performing intersection testing for a ray with respect to a plurality of convex polygons, each of which is defined by an ordered set of vertices. The vertices of the convex polygons are projected onto a pair of axes orthogonal to the ray direction. For each edge of a convex polygon defined by two of the projected vertices, a signed parameter is determined, wherein the sign of the signed parameter is indicative of which side of the edge the ray passes on. If the ray is determined to intersect a point on the edge then the sign of the signed parameter is determined using a module which is configured to: take as inputs, indications which classify each of pi, qi, pj and qj coordinates as negative, zero or positive, and output, for valid combinations of classifications of the pi, qi, pj and qj coordinates, an indication of the sign of the signed parameter.Type: GrantFiled: March 22, 2022Date of Patent: October 8, 2024Assignee: Imagination Technologies LimitedInventors: Peter Smith-Lacey, Rostam King, Gregory Clark, Simon Fenney
-
Patent number: 12112423Abstract: Ray tracing systems have computation units (“RACs”) adapted to perform ray tracing operations (e.g. intersection testing). There are multiple RACs. A centralized packet unit controls the allocation and testing of rays by the RACs. This allows RACs to be implemented without Content Addressable Memories (CAMs) which are expensive to implement, but the functionality of CAMs can still be achieved by implemented them in the centralized controller.Type: GrantFiled: July 31, 2023Date of Patent: October 8, 2024Assignee: Imagination Technologies LimitedInventors: Joseph M. Richards, Luke T. Peterson, Steven J. Clohset
-
Patent number: 12112410Abstract: Conservative rasterization hardware comprises hardware logic arranged to perform an edge test calculation for each edge of a primitive and for two corners of each pixel in a microtile. The two corners that are used are selected based on the gradient of the edge and the edge test result for one corner is the inner coverage result and the edge test result for the other corner is the outer coverage result for the pixel. An overall outer coverage result for the pixel and the primitive is calculated by combining the outer coverage results for the pixel and each of the edges of the primitive in an AND gate. The overall inner coverage result for the pixel is calculated in a similar manner.Type: GrantFiled: May 24, 2022Date of Patent: October 8, 2024Assignee: Imagination Technologies LimitedInventor: Casper Van Benthem
-
Patent number: 12112197Abstract: A processor has a register bank to which software writes descriptors specifying tasks to be processed by a hardware pipeline. The register bank includes a plurality of register sets, each for holding the descriptor of a task. The processor includes a first selector operable to connect the execution logic to a selected one of the register sets and thereby enable the software to write successive ones of said descriptors to different ones of said register sets. The processor also includes a second selector operable to connect the hardware pipeline to a selected one of the register sets. The processor further comprises control circuitry configured to control the hardware pipeline to begin processing a current task based on the descriptor in a current one of the register sets while the software is writing the descriptor of another task to another of the register sets.Type: GrantFiled: September 27, 2022Date of Patent: October 8, 2024Assignee: Imagination Technologies LimitedInventors: Michael John Livesley, Ian King, Alistair Goudie
-
Patent number: 12106424Abstract: A ray tracing unit implemented in a graphics rendering system includes processing logic configured to perform ray tracing operations on rays, a dedicated ray memory coupled to the processing logic and configured to store ray data for rays to be processed by the processing logic, an interface to a memory system, and control logic configured to manage allocation of ray data to either the dedicated ray memory or the memory system. Core ray data for rays to be processed by the processing logic is stored in the dedicated ray memory, and at least some non-core ray data for the rays is stored in the memory system. This allows core ray data for many rays to be stored in the dedicated ray memory without the size of the dedicated ray memory becoming too wasteful when the ray tracing unit is not in use.Type: GrantFiled: September 11, 2023Date of Patent: October 1, 2024Assignee: Imagination Technologies LimitedInventors: John W. Howson, Steven J. Clohset, Ali Rabbani
-
Patent number: 12106525Abstract: Methods and decompression units for decompressing a selected sub-block of image element values from a compressed block of image element values. The method includes: identifying, from the compressed block of image element values, a pattern of a plurality of patterns of image element values associated with the selected sub-block; identifying, from the compressed block of image element values, one or more image element values associated with the selected sub-block; and generating the selected sub-block from the pattern and the one or more image element values associated with the selected sub-block.Type: GrantFiled: March 30, 2021Date of Patent: October 1, 2024Assignee: Imagination Technologies LimitedInventor: Xile Yang
-
Patent number: 12100062Abstract: A computing system comprises graphics rendering logic and image processing logic. The graphics rendering logic processes graphics data to render an image using a rendering space which is sub-divided into a plurality of tiles. Cost indication logic obtains a cost indication for each of a plurality of sets of one or more tiles of the rendering space, wherein the cost indication for a set of one or more tiles is suggestive of a cost of processing rendered image values for a region of the rendered image corresponding to the set of one or more tiles. The image processing logic processes rendered image values for regions of the rendered image. The computing system causes the image processing logic to process rendered image values for regions of the rendered image in dependence on the cost indications for the corresponding sets of one or more tiles.Type: GrantFiled: May 5, 2022Date of Patent: September 24, 2024Assignee: Imagination Technologies LimitedInventors: John W. Howson, Richard Broadhurst, Steven Fishwick
-
Patent number: 12093621Abstract: A hardware monitor arranged to detect out-of-bounds violations in a hardware design for an electronic device. The hardware monitors include monitor and detection logic configured to monitor the current operating state of an instantiation of the hardware design and detect when the instantiation of the hardware design implements a fetch of an instruction from memory; and assertion evaluation logic configured to evaluate one or more assertions that assert a formal property that compares the memory address of the fetched instruction to an allowable memory address range associated with the current operating state of the instantiation of the hardware design to determine whether there has been an out-of-bounds violation. The hardware monitor may be used by a formal verification tool to exhaustively verify that the hardware design does not cause an instruction to be fetched from an out-of-bounds address.Type: GrantFiled: May 28, 2023Date of Patent: September 17, 2024Assignee: Imagination Technologies LimitedInventors: Ashish Darbari, Iain Singleton
-
Patent number: 12086922Abstract: Ray tracing systems and methods generate a hierarchical acceleration structure to be used for intersection testing in a ray tracing system. Nodes of the hierarchical acceleration structure are determined, each representing a region in a scene, and being linked to form the hierarchical acceleration structure. Data is stored representing the hierarchical acceleration structure, including data defining the regions represented by a plurality of the nodes. At least one node is an implicitly represented node, wherein data defining a region represented by an implicitly represented node is not explicitly included as part of the stored data but can be inferred from the stored data. Intersection testing in the ray tracing system is performed in which, based on conditions in the ray tracing system, a determination is made as to whether testing of one or more rays for intersection with a region represented by a particular node of a sub-tree is to be skipped.Type: GrantFiled: June 4, 2022Date of Patent: September 10, 2024Assignee: Imagination Technologies LimitedInventors: Gregory Clark, Steven J. Clohset
-
Patent number: 12086566Abstract: A method of selecting, in hardware logic, an ith largest or a pth smallest number from a set of n m-bit numbers is described. The method is performed iteratively and in the rth iteration, the method comprises: summing an (m?r)th bit from each of the m-bit numbers to generate a summation result and comparing the summation result to a threshold value. Depending upon the outcome of the comparison, the rth bit of the selected number is determined and output and additionally the (m?r?1)th bit of each of the m-bit numbers is selectively updated based on the outcome of the comparison and the value of the (m?r)th bit in the m-bit number. In a first iteration, a most significant bit from each of the m-bit numbers is summed and each subsequent iteration sums bits occupying successive bit positions in their respective numbers.Type: GrantFiled: October 31, 2019Date of Patent: September 10, 2024Assignee: Imagination Technologies LimitedInventor: Thomas Rose