Patents by Inventor ARM Limited
ARM Limited 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).
-
Publication number: 20140327671Abstract: A tile-based graphics processing pipeline 1 comprising a rasteriser 3, a renderer 6, a tile buffer 10, a write out stage 13 and a programmable processing stage 14. The tile buffer 10 stores multiple render targets for a deferred shading operation and the programmable processing stage 14 is operable to, under the control of graphics program instructions, read data from two or more of a set of multiple render targets for a deferred shading operation stored in the tile buffer 10, perform a deferred shading processing operation using the read data, and to write the result of the processing operation to an output render target in the tile buffer 10, or to external memory.Type: ApplicationFiled: May 2, 2013Publication date: November 6, 2014Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20140327688Abstract: A tile-based graphics processing pipeline comprising a rasteriser 3, a renderer 6, a tile buffer 10 configured to store rendered fragment data locally to the graphics processing pipeline prior to that data being written out to an external memory, a write out stage 13 configured to write data stored in the tile buffer to an external memory, and a programmable processing stage 14. The programmable processing stage 14 is operable under the control of graphics program instructions to read fragment data stored in the tile buffer 10 on a random access basis, perform a processing operation using the read fragment data, and write the result of the processing operation into the tile buffer 10 or to an external memory.Type: ApplicationFiled: May 2, 2013Publication date: November 6, 2014Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20140317390Abstract: A data processing apparatus executes call instructions, and after a sequence of instructions executed in response to a call instruction a return instruction causes the program flow to return to a point in the program sequence associated with that call instruction. The data processing apparatus is configured to speculatively execute instructions in dependence on a predicted outcome of earlier instructions and a return address prediction unit is configured to store return addresses associated with unresolved call instructions. The return address prediction unit comprises: a stack portion onto which return addresses associated with unresolved call instructions are pushed, and from which a return address is popped when a return instruction is speculatively executed; and a buffer portion which stores an entry for each unresolved call instruction executed and for each return instruction which is speculatively executed.Type: ApplicationFiled: April 18, 2013Publication date: October 23, 2014Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20140307514Abstract: A memory controller and a method of calibrating the memory controller are provided. Input circuitry in the memory controller receives a differential pair of data strobe signals from a memory and generates a logical data strobe signal in dependence on a voltage difference between the differential pair of data strobe signals. Hysteresis circuitry, when active, increases by a predetermined offset a threshold voltage difference at which the input circuitry changes a logical state of the logical data strobe signal. Gate signal generation circuitry generates a data strobe gating signal, wherein the memory controller interprets the logical data strobe signal as valid when the data strobe gating signal is asserted.Type: ApplicationFiled: April 12, 2013Publication date: October 16, 2014Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20140286096Abstract: A memory device includes an array of memory cells arranged as a plurality of rows and columns, each row being coupled to an associated read word line, and each column forming at least one column group, where the memory cells of each column group are coupled to an associated read bit line. Each column group includes circuitry to precharge the associated read bit line to a first voltage level prior to the read operation. Each memory cell has coupling circuitry connected between the associated read bit line and a second voltage level different to the first voltage level. During read operation the coupling circuitry associated with the activated memory cell selectively discharges the associated read bit line towards the second voltage level dependent on the data value stored within that activated memory cell. The clamping circuitry connects the associated read bit line to the second voltage level.Type: ApplicationFiled: March 20, 2013Publication date: September 25, 2014Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20140267256Abstract: In a graphics processing pipeline 1, a primitive depth sorting stage 9 is arranged prior to the rasterisation stage 3 and rendering stage 6. The primitive depth sorting stage 9 operates to sort successive sub-sets of primitives in a stream of primitives 2 received by the graphics processing pipeline 1 based on their depth values. The so-sorted primitives are then output from the primitive depth sorting stage 9 in their sorted depth order to the rasteriser 3. This makes the depth test stages 4, 13 of the graphics processing pipeline 1 more efficient in their hidden surface removal operations, because the primitives entering the rasteriser 3 will be in depth order.Type: ApplicationFiled: March 18, 2013Publication date: September 18, 2014Applicant: ARM LIMITEDInventor: ARM Limited
-
Publication number: 20140267283Abstract: To encode a texture to be used in a graphics processing system, the texture is first downscaled to generate a lower resolution representation of the texture 41. An upscaled version 42 of the lower resolution version of the texture is then compared to the original texture to determine a set of difference values indicating for each texel the difference between the value of the texel in the upscaled version of the texture and in the original texture 43. An encoded texture data block is then generated for each 8×8 block of texels in the original texture 44. Each encoded texture data block contains a base colour value taken from the lower resolution representation of the texture and a set of index values indicating the difference data from the determined set of difference data to be used when decoding the block of texture data to generate the data values to be used for the texture data elements that the block of texture data represents.Type: ApplicationFiled: March 15, 2013Publication date: September 18, 2014Applicant: ARM LIMITEDInventor: ARM Limited
-
Publication number: 20130322550Abstract: A video decoding apparatus for decoding an encoded video bitstream having a sequence of video pictures, wherein at least one video picture is encoded in a plurality of slices, wherein each slice comprises a sequence of raster scan order blocks which can be decoded independently of another slice.Type: ApplicationFiled: April 16, 2013Publication date: December 5, 2013Inventor: ARM Limited
-
Publication number: 20130311725Abstract: In response to a transfer stimulus, performance of a processing workload is transferred from a source processing circuitry to a destination processing circuitry, in preparation for the source processing circuitry to be placed in a power saving condition following the transfer. To reduce the number of memory fetches required by the destination processing circuitry following the transfer, a cache of the source processing circuitry is maintained in a powered state for a snooping period. During the snooping period, cache snooping circuitry snoops data values in the source cache and retrieves the snoop data values for the destination processing circuitry.Type: ApplicationFiled: April 30, 2013Publication date: November 21, 2013Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20130212700Abstract: A data processing apparatus and method are provided for handling exceptions, including processing circuitry configured to perform data processing operations in response to program code, said circuitry including exception control circuitry. A plurality of registers are provided including a first and second subsets of registers, and a data store. The data store includes a secure region and a less secure region, wherein the secure region is for storing data accessible by the processing circuitry when operating in a secure domain and not accessible by the processing circuitry when operating in a less secure domain. The exception control circuitry performs state saving of data from the first subset of registers before triggering the processing circuitry to perform an exception handling routine corresponding to the exception. Where background processing was performed by the processing circuitry in the secure domain, the exception control circuitry performs additional state saving of the data.Type: ApplicationFiled: January 15, 2013Publication date: August 15, 2013Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20130205413Abstract: A data processing apparatus 2 has processing circuitry 4 which has a secure domain and a less secure domain of operation. When operating in the secure domain the processing circuitry 4 has access to data that is not accessible in the less secure domain. In response to a control flow altering instruction, processing switches to a program instruction at a target address. Domain selection is performed to determine a selected domain in which the processing circuitry 4 is to operate for the instruction at the target address. Domain checking can be performed to check which domains are allowed to be the selected domain determining the domain selection. A domain check error is triggered if the selected domain in the domain selection is not an allowed selected domain.Type: ApplicationFiled: January 7, 2013Publication date: August 8, 2013Applicant: ARM LimitedInventor: ARM Limited
-
Publication number: 20130205125Abstract: Processing circuitry can operate in a secure domain and a less secure domain. In response to an initial exception from background processing performed by the processing circuitry, state saving of data from a first subset of registers is performed by exception control circuitry before triggering an exception handling routine, while the exception handling routine has responsibility for performing state saving of data from a second subset of registers. In response to a first exception causing a transition from the secure domain from a less secure domain, where the background processing was in the less secure domain, the exception control circuitry performs additional state saving of data from the second set of registers before triggering the exception handling routine. In response to a tail-chained exception causing a transition from the secure domain to the less secure domain, the exception handling routine is triggered without performing an additional state saving.Type: ApplicationFiled: November 19, 2012Publication date: August 8, 2013Applicant: ARM LIMITEDInventor: Arm Limited
-
Publication number: 20130141445Abstract: When carrying out a second, higher level of anti-aliasing such as 8× MSAA, in a graphics processing pipeline 1 configured to “natively” support a first level of anti-aliasing, such as 4× MSAA, the rasterisation stage 3, early Z (depth) and stencil test stage 4, late Z (depth) and stencil test stage 7, blending stage 9, and downsampling and writeback (multisample resolve) stage 11 of the graphics processing pipeline 1 process each graphics fragment or pixel that they receive for processing in plural processing passes, each such processing pass processing a sub-set of the sampling points that the fragment represents, but the fragment shader 6 is configured to process each graphics fragment in a processing pass that processes all the sampling points that the fragment represents in parallel, so as to ensure compliance with the desired higher level of multisampled anti-aliasing.Type: ApplicationFiled: November 30, 2012Publication date: June 6, 2013Applicant: ARM LIMITEDInventor: ARM Limited
-
Publication number: 20130084018Abstract: A graphics texture data encoding arrangement in which the texels in a texel block 30 to be encoded are divided into different partitions within the block. A reference partitioning pattern for a texel block to be encoded is generated by using a partitioning function 32 to partition the data values for the texels into a number of data value partitions, and then sorting the individual texels in the texel block into respective partitions 33 based on their values. A set of predefined partitioning patterns 35 that the encoding scheme supports is then compared 36 to the generated reference partitioning pattern. The predefined partitioning pattern that best matches 39 the generated reference partitioning pattern is then used 42 to encode the block of texels.Type: ApplicationFiled: September 28, 2012Publication date: April 4, 2013Applicant: ARM LIMITEDInventor: ARM Limited
-
Publication number: 20130076762Abstract: The fragment processing pipeline 10 of a graphics processing core 2 has an associated occlusion query cache 19 that is used to maintain a set of local occlusion counters 21. The occlusion query cache 19 is maintained in a local memory 3 of the graphics processing system and can communicate via an interconnect 7 with a set of master occlusion counters 22 in a main memory 5 for the graphics processing system. When an occlusion query starts, a corresponding occlusion counter 22 is initialised in the main memory 5. A corresponding local occlusion counter 21 is also provided in the occlusion query cache 19 in the local memory 3 of the graphics processor, and is used to count the results of the occlusion query. The local occlusion counter value is written back to the occlusion counter 22 for the query in the main memory 5 at the appropriate time for further processing.Type: ApplicationFiled: September 20, 2012Publication date: March 28, 2013Applicant: ARM LIMITEDInventor: ARM Limited
-
Publication number: 20130076761Abstract: In a tile-based graphics processing system having plural rendering processors, the set of tiles 31 to be processed to generate an output frame 30 for display is partitioned among the different rendering processors by defining respective tile traversal paths 32, 33, 34, 35 for each rendering processor that start at a tile initially allocated to the processor and that, at least for the initial tiles along the path, traverse to spatially adjacent tiles in the output, and that will traverse every tile to be rendered if followed to their end. The next tile for a given rendering processor to process is then selected as being the next tile along its defined path, unless the next tile in the path has already been processed (or is already being processed) by another rendering processor, in which case the next tile to be allocated to the rendering processor is selected to be a free tile further on in the tile traversal path for that processor.Type: ApplicationFiled: September 20, 2012Publication date: March 28, 2013Applicant: ARM LIMITEDInventor: ARM Limited