-
公开(公告)号:US12175251B2
公开(公告)日:2024-12-24
申请号:US18107139
申请日:2023-02-08
Applicant: Arm Limited
Inventor: Glen Andrew Harris , Alexander Cole Shulyak , . Abhishek Raja , Bipin Prasad Heremagalur Ramaprasad , William Elton Burky , Li Ma , Michael David Achenbach , Nicholas Andrew Plante , Yasuo Ishii
IPC: G06F9/38
Abstract: There is provided an apparatus, method and medium. The apparatus comprises processing circuitry to process instructions and a reorder buffer identifying a plurality of entries having state information associated with execution of one or more of the instructions. The apparatus comprises allocation circuitry to allocate entries in the reorder buffer, and to allocate at least one compressed entry corresponding to a plurality of the instructions. The apparatus comprises memory access circuitry responsive to an address associated with a memory access instruction corresponding to access-sensitive memory and the memory access instruction corresponding to the compressed entry, to trigger a reallocation procedure comprising flushing the memory access instruction and triggering reallocation of the memory access instruction without the compression. The allocation circuitry is responsive to a frequency of occurrence of memory access instructions addressing the access-sensitive memory meeting a predetermined condition, to suppress the compression whilst the predetermined condition is met.
-
公开(公告)号:US12093692B2
公开(公告)日:2024-09-17
申请号:US18109297
申请日:2023-02-14
Applicant: Arm Limited
Inventor: . Abhishek Raja
CPC classification number: G06F9/3806 , G06F9/30043 , G06F9/3842
Abstract: An apparatus has processing circuitry, load tracking circuitry and load prediction circuitry. It is determined whether tracking information indicates that there is a risk of target data, corresponding to an address of a speculatively-issued load operation which is speculatively issued (bypassing an older operation) based on a prediction determined by the load prediction circuitry, having changed between the target data being loaded for the speculatively-issued load operation and data being loaded for a given older load operation bypassed by the speculatively-issued load operation. If so, independent of whether the addresses of the speculatively-issued load operation and the given older load operation correspond, at least the speculatively-issued load operation is reissued, even when the prediction is correct. This protects against ordering violations.
-
公开(公告)号:US11513966B2
公开(公告)日:2022-11-29
申请号:US17208130
申请日:2021-03-22
Applicant: Arm Limited
Inventor: . Abhishek Raja
IPC: G06F12/0888 , G06F9/38
Abstract: An apparatus has processing circuitry, load tracking circuitry and value prediction circuitry. In response to an actual value of first target data becoming available for a value-predicted load operation, it is determined whether the actual value matches the predicted value of the first target data determined by the value prediction circuitry, and whether the tracking information indicates that, for a given younger load operation issued before the actual value of the first target data was available, there is a risk of second target data associated with that given load operation having changed after having been loaded. Independent of whether the addresses of the value-predicted load operation and younger load operation correspond, at least the given load operation is re-processed when the value prediction is correct and the tracking information indicates there is a risk of the second target data having changes after being loaded. This protects against ordering violations.
-
公开(公告)号:US10102143B2
公开(公告)日:2018-10-16
申请号:US15294031
申请日:2016-10-14
Applicant: ARM LIMITED
Inventor: Barry Duane Williamson , Michael Filippo , . Abhishek Raja , Adrian Montero , Miles Robert Dooley
IPC: G06F12/08 , G06F12/1045 , G06F12/128 , G06F12/1009
Abstract: A data processing system 2 includes an address translation cache 12 to store a plurality of address translation entries. Eviction control circuitry 10 selects a victim entry for eviction from address translation cache 12 using an eviction control parameter. The address translation cache 12 can store multiple different types of entry corresponding to respective different levels of address translation within a multiple-level page table walk. The different types of entry have different eviction control parameters assigned at the time of allocation. Eviction from the address translation cache is dependent upon the entry type, as well as the subsequent accesses to the entry concerned and the other entries within the address translation cache.
-
公开(公告)号:US12197340B2
公开(公告)日:2025-01-14
申请号:US17978400
申请日:2022-11-01
Applicant: Arm Limited
Inventor: Anton Smekalov , . Abhishek Raja
IPC: G06F12/0891
Abstract: There is provided an apparatus, medium and method for cache invalidation. The apparatus comprises a cache having a plurality of entries grouped into a plurality of entry sets. Each entry of the plurality of entries identifies an address range having one of a plurality of predetermined address range sizes. The apparatus further comprises cache invalidation circuitry responsive to a cache invalidation request indicating an address invalidation range to trigger invalidation of entries in the cache that overlap the address invalidation range. The cache invalidation circuitry is configured to operate in one of a plurality of invalidation modes based on the address invalidation range and cache occupancy information indicating address range sizes identified by the plurality of entries in the cache. The plurality of invalidation modes comprise: an entry-driven invalidation mode in which the cache invalidation circuitry is configured, for each entry of the plurality of entries and in response to a determination that the address invalidation range overlaps the address range identified by that entry, to invalidate that entry; and an invalidation-range-driven invalidation mode in which the cache invalidation circuitry is configured to generate a set of address range sizes based on the address range sizes indicated in the cache occupancy information and, for each given address range size, to generate one or more cache indexes from the address invalidation range in dependence on the given address range size, each of the cache indexes identifying a corresponding entry set of the plurality of entry sets, and for each corresponding entry set to invalidate entries in dependence on whether the address range identified by those entries overlaps the address invalidation range.
-
公开(公告)号:US11327791B2
公开(公告)日:2022-05-10
申请号:US16546752
申请日:2019-08-21
Applicant: Arm Limited
Inventor: Michael David Achenbach , Robert Greg McDonald , Nicholas Andrew Pfister , Kelvin Domnic Goveas , Michael Filippo , . Abhishek Raja , Zachary Allen Kingsbury
Abstract: An apparatus provides an issue queue having a first section and a second section. Each entry in each section stores operation information identifying an operation to be performed. Allocation circuitry allocates each item of received operation information to an entry in the first section or the second section. Selection circuitry selects from the issue queue, during a given selection iteration, an operation from amongst the operations whose required source operands are available. Availability update circuitry updates source operand availability for each entry whose operation information identifies as a source operand a destination operand of the selected operation in the given selection iteration. A deferral mechanism inhibits from selection, during a next selection iteration, any operation associated with an entry in the second section whose source operands are now available due to that operation having as a source operand the destination operand of the selected operation in the given selection iteration.
-
公开(公告)号:US10754687B2
公开(公告)日:2020-08-25
申请号:US16005811
申请日:2018-06-12
Applicant: Arm Limited
Inventor: . Abhishek Raja , Chris Abernathy , Michael Filippo
Abstract: There is provided a data processing apparatus that includes processing circuitry for executing a plurality of instructions. Storage circuitry stores a plurality of entries, each entry relating to an instruction in the plurality of instructions and including a dependency field. The dependency field stores a data dependency of that instruction on a previous instruction in the plurality of instructions. Scheduling circuitry schedules the execution of the plurality of instructions in an order that depends on each data dependency. When the previous instruction is a single-cycle instruction, the dependency field includes a reference to one of the entries that relates to the previous instruction, otherwise, the data dependency field includes an indication of an output destination of the previous instruction.
-
-
-
-
-
-