US2005210201A1PendingUtilityA1

System and method for controlling prefetching

43
Assignee: SO KIMMINGPriority: Sep 9, 2002Filed: May 20, 2005Published: Sep 22, 2005
Est. expirySep 9, 2022(expired)· nominal 20-yr term from priority
G06F 2212/6022G06F 12/0862
43
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Systems and methods that control prefetching are provided. In one embodiment, a system may include, for example, a prefetch buffer system coupled to a processing unit and to a memory. The prefetch buffer system may include, for example, a prefetch controller that is adapted to be programmable such that prefetch control features can be selected.

Claims

exact text as granted — not AI-modified
1 - 29 . (canceled)  
   
   
       30 . A system for controlling prefetching, comprising: 
 a prefetch buffer system adapted to be communicatively coupled to a processing unit and to a memory, wherein the prefetch buffer system comprises a prefetch controller that is adapted to be programmable such that prefetch control features may be independently specified without specifying other prefetch control features.    
   
   
       31 . The system of  claim 30 , wherein: 
 the prefetch controller comprises a plurality of prefetch control registers (PCRs);    the PCRs are adapted to be programmed with values relating to prefetch control features; and    there is a one-to-one correspondence between the PCR, or portion thereof, and a prefetch control feature.    
   
   
       32 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to operate in a disabled state.  
   
   
       33 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to operate in a no-prefetch state.  
   
   
       34 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to operate in an active prefetch state.  
   
   
       35 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to operate in accordance with a sequential prefetch scheme.  
   
   
       36 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to operate in accordance with a striding prefetch scheme.  
   
   
       37 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to operate in accordance with a backward prefetch scheme.  
   
   
       38 . The system of  claim 31 , wherein: 
 the prefetch buffer system comprises a prefetch buffer, and    a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to manipulate contents stored in the prefetch buffer.    
   
   
       39 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to narrow a scope of a programmed prefetch scheme.  
   
   
       40 . The system of  claim 31 , wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to invalidate information stored in a prefetch buffer in response to a write command from the processing unit.  
   
   
       41 . The system of  claim 30 , wherein the prefetch controller is programmed by the processing unit as a function of prefetching effectiveness monitored during run-time.  
   
   
       42 . The system of  claim 30 , wherein the prefetch controller is adapted to switch between predefined selectable prefetch schemes in accordance with programming of the prefetch controller.  
   
   
       43 . A method for controlling a prefetch buffer system, comprising: 
 programming a particular value into a particular register of the prefetch buffer system, wherein there is a one-to-one mapping between the particular register, or a portion thereof, and a prefetch control feature;    selecting a particular prefetch scheme feature based upon the programmed particular value in the particular register; and    performing a particular prefetch scheme characterized, at least in part, by the selected particular prefetch scheme feature.    
   
   
       44 . The method of  claim 43 , further comprising manipulating contents of a prefetch buffer of the prefetch buffer system in a predetermined manner associated with the programmed particular value and the particular register.  
   
   
       45 . The method of  claim 44 , wherein manipulating contents of a prefetch buffer of the prefetch buffer system in a predetermined manner associated with the programmed particular value and the particular register comprises invalidating one or more blocks stored in the prefetch buffer system based, at least in part, upon the programmed particular value and the particular register.  
   
   
       46 . The method of  claim 43 , wherein programming a particular value into a particular register comprises programming the particular value into the particular register in response to prefetching effectiveness monitored during run-time.  
   
   
       47 . A prefetch buffer system comprising: 
 a prefetch buffer; and    a prefetch controller comprising prefetch control registers (PCRs), wherein a particular one of the PCRs, or a portion thereof, may be programmed with a particular value, thereby causing the prefetch buffer system to manipulate contents stored in the prefetch buffer in a predetermined manner associated with the particular value.    
   
   
       48 . The prefetch buffer system of  claim 47 , wherein the PCRs are adapted to be programmable such that the prefetch control features can be independently specified without specifying other prefetch control features.  
   
   
       49 . A method for controlling prefetching, the method comprising: 
 programming a particular value into a particular register of a prefetch buffer system; and    manipulating contents of a prefetch buffer of the prefetch buffer system in a predetermined manner associated with the programmed particular value and the particular register.    
   
   
       50 . The method of  claim 49 , wherein there is a one-to-one mapping between the particular register, or a portion thereof, and a prefetch control feature, and further comprising selecting a particular prefetch feature based, at least in part, upon the programmed particular value in the particular register.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.