Efficient evict for cache block memory

    公开(公告)号:US11954038B2

    公开(公告)日:2024-04-09

    申请号:US17305991

    申请日:2021-07-19

    Applicant: Arm Limited

    CPC classification number: G06F12/0888 G06T1/20 G06T1/60 G06T9/00 G06F2212/1044

    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.

    Accessing encoded blocks of data
    32.
    发明授权

    公开(公告)号:US11954028B2

    公开(公告)日:2024-04-09

    申请号:US17657498

    申请日:2022-03-31

    Applicant: Arm Limited

    CPC classification number: G06F12/0646 G06F2212/40

    Abstract: There is disclosed a method of storing an encoded block of data in memory comprising encoding a block of data elements and determining a memory location (26) at which the encoded block of data is to be stored. The memory location (26) at which the encoded block of data is stored is then indicated in a header (406) for the encoded block of data by including in the header a memory address value (407) together with a modifier value (500) representing a modifier that is to be applied to the memory address value (407) when determining the memory location (26). When the encoded block of data is to be retrieved, the header (406) is read and processed to determine the memory location (26).

    Encoding data arrays
    33.
    发明授权

    公开(公告)号:US11515961B2

    公开(公告)日:2022-11-29

    申请号:US17078047

    申请日:2020-10-22

    Applicant: Arm Limited

    Abstract: When encoding a block of data elements in an array of data elements, the data values for data elements in the block are represented and stored in a data packet as truncated data values using a subset of one or more most significant bits of the respective bit sequences for the data values of the data elements. A rounding mode is selected from a plurality of available rounding modes that can be applied when decoding the block of data elements and an indication of the selected rounding mode is provided along with the encoded data packet. The rounding mode is associated with one or more rounding bit sequence(s) that can then be applied to the truncated data values when decoding the data packet to obtain decoded data values for the data elements in the block.

    Video data processing system for storing frames of video data

    公开(公告)号:US11308570B2

    公开(公告)日:2022-04-19

    申请号:US16442711

    申请日:2019-06-17

    Applicant: Arm Limited

    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.

    DEPTH TESTING IN GRAPHICS PROCESSING SYSTEMS

    公开(公告)号:US20210065437A1

    公开(公告)日:2021-03-04

    申请号:US16552500

    申请日:2019-08-27

    Applicant: Arm Limited

    Abstract: A graphics processor includes a rasteriser, an early depth tester, a renderer, a late depth tester, and a depth test data buffer that stores depth data values for use by the early and late depth testers. When a fragment is to undergo an early depth test to update the depth buffer, it is first determined whether the fragment should undergo the early depth test to update the depth buffer without waiting for any other fragment to undergo a depth test, or whether the result of a late depth test on a fragment that is still to undergo a late depth test should be awaited before performing a depth test to update the depth buffer on the fragment.

    Method of and apparatus for generating a signature representative of the content of an array of data

    公开(公告)号:US10832639B2

    公开(公告)日:2020-11-10

    申请号:US15214800

    申请日:2016-07-20

    Applicant: ARM LIMITED

    Abstract: A method and an apparatus for generating a signature representative of the content of a region of an array of data in a data processing system, where the region of the array of data comprising plural data positions, and each data position having an associated data value or values. A data value or values for a data position of the region of the data array is/are generated. The data value or values for the data position of the region of the data array is/are written to storage that stores the region of the data array as it is being generated. A signature representative of the content of the region of the data array is generated in parallel with the data value or values for the data position of the region of the data array being written to the storage.

    Updating data stored in a memory
    38.
    发明授权

    公开(公告)号:US10824357B2

    公开(公告)日:2020-11-03

    申请号:US15798060

    申请日:2017-10-30

    Applicant: Arm Limited

    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.

    Accessing encoded blocks of data in memory

    公开(公告)号:US10466915B2

    公开(公告)日:2019-11-05

    申请号:US15636524

    申请日:2017-06-28

    Applicant: ARM Limited

    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.

    UPDATING DATA STORED IN A MEMORY
    40.
    发明申请

    公开(公告)号:US20180129419A1

    公开(公告)日:2018-05-10

    申请号:US15798060

    申请日:2017-10-30

    Applicant: Arm Limited

    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.

Patent Agency Ranking