Memory controller performing a priority based data prefetch and associated methods and systems
AssigneeNXP B.V.
InventorsVivek Singh, Nikhil Tiwari, Pradap Karuppaiah, Nipun Kharbanda
Life of this patent
Estimating the term…
Abstract
A priority based prefetch by a memory controller is disclosed. A prefetch of data of a low priority master is suspended when a data request associated with a high priority master indicated by a master identification is to be performed. The suspension includes storing a saved state of the prefetch, performing the prefetch of data of the high priority master, and resuming the prefetch of data of the low priority master when the prefetch of data of the high priority master is completed.
Claims20
A method for priority based prefetch by a memory controller, the method comprising:
- receiving, by the memory controller, a data request from a master;
- determining, by the memory controller, that the master is a high priority master based on a master identification of the master in the data request;
- determining, by the memory controller, that the prefetch of data of a low priority master is pending when the data request is received;
- suspending, by the memory controller, the prefetch of data of the low priority master based on the determination;
- performing, by the memory controller, a prefetch of data of the high priority master from memory based on the suspension;
- and
- resuming, by the memory controller, the prefetch of data of the low priority master after the prefetch of data of the high priority master is completed.
A memory controller in a system on chip (SoC) for priority based prefetch, the memory controller arranged to receive a data request from a master;
- determine that the master is a high priority master based on a master identification of the master in the data request;
- determine that a prefetch of data of a low priority master is pending when the data request is received;
- suspend the prefetch of data of the low priority master based on the determination;
- perform the prefetch of data of the high priority master from memory coupled to the SoC based on the suspension;
- and resume the prefetch of data of the low priority master after the prefetch of data of the high priority master is completed.
A system for priority based prefetch of data comprising:
- a high priority master;
- a low priority master;
- a memory controller coupled to the masters;
- a memory external to the masters and memory controller;
- the memory controller arranged to receive a data request from a master;
- determine that the master is a high priority master based on a master identification of the master in the data request;
- determine that a prefetch of data of the low priority master is pending when the data request is received;
- suspend the prefetch of data of the low priority master based on the determination;
- perform the prefetch of data of the high priority master from the memory based on the suspension;
- and resume the prefetch of data of the low priority master after the prefetch of data of the high priority master is completed.
Dependencies are inferred from the claim text.