-
公开(公告)号:US10769838B2
公开(公告)日:2020-09-08
申请号:US16218982
申请日:2018-12-13
Applicant: Arm Limited
Inventor: Frode Heggelund , Toni Viki Brkic , Christian Vik Grovdal , Lars Oskar Flordal
Abstract: A graphics processing system can divide a render output into plural larger patches, with each larger patch encompassing plural smaller patches. A rasteriser of the system tests a larger patch against a primitive to be processed to determine if the primitive covers the larger patch. When it is determined that the primitive only partially covers the larger patch, the larger patch is sub-divided into plural smaller patches and at least one of the smaller patches is re-tested against the primitive. Conversely, when it is determined that the primitive completely covers the larger patch, the larger patch is output from the rasteriser in respect of the primitive for processing by a subsequent stage, of the graphics processing system. The system can provide efficient, hierarchal, processing of primitives, whilst helping to prevent the output of the rasteriser from becoming blocked.
-
公开(公告)号:US10580113B2
公开(公告)日:2020-03-03
申请号:US16153315
申请日:2018-10-05
Applicant: Arm Limited
Inventor: Lars Oskar Flordal , Toni Viki Brkic , Christian Vik Grovdal , Andreas Due Engh-Halstvedt , Frode Heggelund
Abstract: A tile-based graphics processing system comprises a graphics processing pipeline comprising a plurality of processing stages, including at least a rasteriser that rasterises input primitives to generate graphics fragments to be processed, and a renderer that processes fragments generated by the rasteriser to generate rendered fragment data, and a tile buffer configured to store data locally to the graphics processing pipeline. The graphics processing system is operable to cause data for use when performing graphics processing operations for each tile of a set of plural tiles of a plurality of tiles to be loaded into the tile buffer before causing graphics processing operations to be performed for any of the tiles of the set of plural tiles.
-
公开(公告)号:US10430099B2
公开(公告)日:2019-10-01
申请号:US15472637
申请日:2017-03-29
Applicant: ARM Limited
Inventor: Quinn Carter , Lars Oskar Flordal , Jakob Axel Fries , Andreas Due Engh-Halstvedt
Abstract: A data array to be stored is first divided into a plurality of blocks. Each block is further sub-divided into a set of sub-blocks.Data representing sub-blocks of the data array is stored, together with a header data block for each block that the data array has been divided into.For each block, it is determined whether all the data positions for the block have the same data value associated with them, and, if so, an indication that all of the data positions within the block have the same data value associated with them, and an indication of the same data value that is associated with each of the data positions in the block, is stored in the header data block for that block of the data array.
-
公开(公告)号:US20180004443A1
公开(公告)日:2018-01-04
申请号:US15636524
申请日:2017-06-28
Applicant: ARM Limited
Inventor: Quinn Carter , Lars Oskar Flordal , Jakob Axel Fries
IPC: G06F3/06
Abstract: A method of storing encoded blocks of data in memory comprises generating headers for the encoded blocks of data. The headers are stored in memory according to a tiled layout based on tiles of plural adjacent blocks of data elements of the array of data elements. Respective sets of the encoded blocks of data are also stored in respective distinct regions of memory locations that have been allocated to those sets. The method provides an efficient way to access headers and corresponding encoded blocks of data in memory.
-
公开(公告)号:US20170352165A1
公开(公告)日:2017-12-07
申请号:US15610016
申请日:2017-05-31
Applicant: ARM Limited
Inventor: Lars Oskar Flordal , Jakob Axel Fries , Toni Viki Brkic
IPC: G06T9/40 , H04N19/176 , H04N19/186 , G06T15/00 , H04N19/11 , H04N19/96 , H04N19/182
CPC classification number: G06T9/40 , G06T9/00 , G06T15/005 , G09G5/39 , G09G2340/02 , G09G2350/00 , G09G2360/12 , H04N19/11 , H04N19/15 , H04N19/176 , H04N19/182 , H04N19/186 , H04N19/96
Abstract: A method of encoding a block of an array of data elements comprises selectively writing out an encoded version of the block either that is encoded using a first encoding scheme, which provides encoded blocks of non-fixed data size, or that is encoded using a second encoding scheme, which provides encoded blocks of fixed data size. The selection of which version of the encoded block to write out is based on the size of the encoded block when encoded using the first encoding scheme. This provides the potential for the encoded block that is written out to be compressed in a more superior manner using the first encoding scheme where possible, whilst also providing an encoded block that has a predictable maximum compressed size.
-
公开(公告)号:US20170285955A1
公开(公告)日:2017-10-05
申请号:US15472637
申请日:2017-03-29
Applicant: ARM Limited
Inventor: Quinn Carter , Lars Oskar Flordal , Jakob Axel Fries , Andreas Due Engh-Halstvedt
IPC: G06F3/06
CPC classification number: G06F3/064 , G06F3/0604 , G06F3/0673 , G06T1/20 , G06T1/60 , G06T11/40 , G06T2210/08 , G09G5/393 , G09G2360/12 , G09G2360/122
Abstract: A data array to be stored is first divided into a plurality of blocks. Each block is further sub-divided into a set of sub-blocks.Data representing sub-blocks of the data array is stored, together with a header data block for each block that the data array has been divided into.For each block, it is determined whether all the data positions for the block have the same data value associated with them, and, if so, an indication that all of the data positions within the block have the same data value associated with them, and an indication of the same data value that is associated with each of the data positions in the block, is stored in the header data block for that block of the data array.
-
公开(公告)号:US11308570B2
公开(公告)日:2022-04-19
申请号:US16442711
申请日:2019-06-17
Applicant: Arm Limited
Inventor: Lars Oskar Flordal , Jakob Axel Fries
Abstract: A data processing system includes a producer processor that produces a sequence of data outputs for use by consumer processors of the data processing system. The system also includes a memory for storing a sequence of data outputs produced by the data processor. The data processor encodes data outputs as encoded blocks of data, storing a particular encoded block of a first frame in a first location in the memory and an indication of the first location. The data processor stores a corresponding encoded block of a second data output in a second location and updates the indication to the second location.
-
公开(公告)号:US10824357B2
公开(公告)日:2020-11-03
申请号:US15798060
申请日:2017-10-30
Applicant: Arm Limited
Inventor: Lars Oskar Flordal , Jian Wang , Jakob Axel Fries
Abstract: A process of updating data for a block of an array of data elements stored in an allocated memory region for the block comprises reading in data for a first group of the data elements, updating the data for the first group, and then writing back the updated data to memory. The process can avoid overwriting data for a second group of the data elements that is yet to be read in from the memory region by writing back the updated data for the first group starting at a selected memory address, for example other than the start address of the memory region. The data for the second group of data elements can then be read in and updated, and the updated data can be written back to memory. The process can reduce the amount of memory bandwidth and local cache that needs to be used.
-
公开(公告)号:US10466915B2
公开(公告)日:2019-11-05
申请号:US15636524
申请日:2017-06-28
Applicant: ARM Limited
Inventor: Quinn Carter , Lars Oskar Flordal , Jakob Axel Fries
IPC: G06F3/06 , H04N19/423
Abstract: A method of storing encoded blocks of data in memory comprises generating headers for the encoded blocks of data. The headers are stored in memory according to a tiled layout based on tiles of plural adjacent blocks of data elements of the array of data elements. Respective sets of the encoded blocks of data are also stored in respective distinct regions of memory locations that have been allocated to those sets. The method provides an efficient way to access headers and corresponding encoded blocks of data in memory.
-
公开(公告)号:US20190108610A1
公开(公告)日:2019-04-11
申请号:US16153315
申请日:2018-10-05
Applicant: Arm Limited
Inventor: Lars Oskar Flordal , Toni Viki Brkic , Christian Vik Grovdal , Andreas Due Engh-Halstvedt , Frode Heggelund
CPC classification number: G06T1/60 , G06T1/20 , G06T11/001 , G06T11/40 , G06T15/005 , G06T15/405
Abstract: A tile-based graphics processing system comprises a graphics processing pipeline comprising a plurality of processing stages, including at least a rasteriser that rasterises input primitives to generate graphics fragments to be processed, and a renderer that processes fragments generated by the rasteriser to generate rendered fragment data, and a tile buffer configured to store data locally to the graphics processing pipeline. The graphics processing system is operable to cause data for use when performing graphics processing operations for each tile of a set of plural tiles of a plurality of tiles to be loaded into the tile buffer before causing graphics processing operations to be performed for any of the tiles of the set of plural tiles.
-
-
-
-
-
-
-
-
-