Apparatus and method for handling memory load requests
AssigneeArm Limited
InventorsMbou Eyole, Stefanos Kaxiras
Life of this patent
Estimating the term…
Abstract
When load requests are generated to support data processing operations, the load requests are buffered in pending load buffer circuitry prior to being carried out. Coalescing circuitry determines for a first load request whether a set of one or more subsequent load requests buffered in the pending load buffer circuitry satisfies an address proximity condition. The address proximity condition is satisfied when all data items identified by the set of one or more subsequent load requests are comprised within a series of data items which will be retrieved from the memory system in response to the first load request. When the address proximity condition is satisfied, forwarding of the set of one or more subsequent load requests is suppressed.
Claims16
Apparatus to perform data processing operations, the data processing operations comprising loading data items from a memory system, the apparatus comprising:
- address generation circuitry to generate addresses for load requests;
- pending load buffer circuitry to buffer the load requests received from the address generation circuitry prior to the load requests being carried out to retrieve data items using the addresses of the load requests;
- load handling circuitry responsive to a load request to retrieve from the memory system a series of data items comprising the data item identified by the load request;
- coalescing circuitry to forward the load request buffered in the pending load buffer circuitry to the load handling circuitry and arranged to determine for a set of one or more subsequent load requests buffered in the pending load buffer circuitry whether an address proximity condition is satisfied,
- wherein the address proximity condition is satisfied when all data items identified by the set of one or more subsequent load requests are comprised within the series of data items,
- and wherein the coalescing circuitry is responsive to the address proximity condition being satisfied to suppress forwarding of the set of one or more subsequent load requests;
- and
- decoalescing circuitry to receive the series of data items retrieved by the load handling circuitry and to return as the result of the load request the data item identified by the load request,
- wherein the decoalescing circuitry is responsive to the address proximity condition being satisfied to return, for each of the subsequent load requests in the set of one or more subsequent load requests, one or more further data items identified by the one or more subsequent load requests from the series of data items as the results of the one or more subsequent load requests.
A method of operating an apparatus to perform data processing operations, the data processing operations comprising loading data items from a memory system, the method comprising:
- generating addresses for load requests;
- buffering in pending load buffer circuitry the load requests prior to load handling circuitry carrying out the load requests to retrieve data items using the addresses of the load requests;
- forwarding to the load handling circuitry a load request buffered in the pending load buffer circuitry a load request to retrieve from the memory system a series of data items comprising the data item identified by the load request;
- determining for a set of one or more subsequent load requests buffered in the pending load buffer circuitry whether an address proximity condition is satisfied, wherein the address proximity condition is satisfied when all data items identified by the set of one or more subsequent load requests are comprised within the series of data items,
- suppressing, responsive to the address proximity condition being satisfied, forwarding of the set of one or more subsequent load requests to the load handling circuitry;
- retrieving, responsive to the load request, from the memory system the series of data items comprising the data item identified by the load request;
- receiving the series of data items retrieved and returning as the result of the load request the data item identified by the load request;
- and
- returning, responsive to the address proximity condition being satisfied, for each of the subsequent load requests in the set of one or more subsequent load requests, one or more further data items identified by the one or more subsequent load requests from the series of data items as the results of the one or more subsequent load requests.
Apparatus to perform data processing operations, the data processing operations comprising loading data items from a memory system, the apparatus comprising:
- means for generating addresses for load requests;
- means for buffering the load requests prior to means for handling loads carrying out the load requests to retrieve data items using the addresses of the load requests;
- means for forwarding to the means for handling loads a load request buffered in the means for buffering a load request to retrieve from the memory system a series of data items comprising the data item identified by the load request, wherein the means for handling loads is responsive to the load request, to retrieve from the memory system the series of data items comprising the data item identified by the load request;
- means for determining for a set of one or more subsequent load requests buffered in the means for buffering whether an address proximity condition is satisfied, wherein the address proximity condition is satisfied when all data items identified by the set of one or more subsequent load requests are comprised within the series of data items,
- means for suppressing, responsive to the address proximity condition being satisfied, forwarding of the set of one or more subsequent load requests to the means for handling loads,
- means for receiving the series of data items retrieved and for returning as the result of the load request the data item identified by the load request;
- and
- means for returning, in response to the address proximity condition being satisfied, for each of the subsequent load requests in the set of one or more subsequent load requests, one or more further data items identified by the one or more subsequent load requests from the series of data items as the results of the one or more subsequent load requests.
Dependencies are inferred from the claim text.