US2009043965A1PendingUtilityA1

Early data return indication mechanism

53
Assignee: KUTTANNA BELLIAPPAPriority: Sep 30, 2003Filed: Oct 10, 2008Published: Feb 12, 2009
Est. expirySep 30, 2023(expired)· nominal 20-yr term from priority
G06F 12/0859G06F 9/383
53
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

One embodiment of a method is disclosed. The method generates requests waiting for data to be loaded into a data cache including a first level cache (FLC). The method further receives the requests from instruction sources, schedules the requests, and then passes the requests on to an execution unit having the data cache. Further, the method checks contents of the data cache, replays to the requests if the data is not located in the data cache, and stores the requests that are replay safe. The method further detects the readiness of the data of bus clocks prior to the data being ready to be transmitted to a processor, and transmits an early data ready indication to the processor to drain the requests from a resource scheduler.

Claims

exact text as granted — not AI-modified
1 . A method comprising:
 generating one or more requests waiting for data to be loaded into a data cache including a first level cache (FLC);   receiving the one or more requests from one or more instruction sources;   scheduling the one or more requests;   passing the one or more requests on to an execution unit having the data cache;   checking contents of the data cache;   replaying to the one or more requests if the data is not located in the data cache;   storing the one or more requests that are replay safe;   detecting readiness of the data one or more bus clocks prior to the data being ready to be transmitted to a processor; and   transmitting an early data ready indication to the processor to drain the one or more requests from a resource scheduler.   
   
   
       2 . The method of  claim 1 , further comprising:
 receiving the transmitted early data ready indication from a memory controller; and   transmitting the early data ready indication to the resource scheduler having a rescheduled request queue (RRQ).   
   
   
       3 . The method of  claim 1 , wherein the data cache further comprises a second level cache (SLC). 
   
   
       4 . The method of  claim 1 , further comprising:
 receiving a data ready indication; and   filling the data cache with the data.   
   
   
       5 . The method of  claim 1 , further comprising replaying the one or more requests to continue to snoop the data cache for the data, the replaying comprising repeating the one or more requests through the data cache for a predetermined number of times. 
   
   
       6 . The method of  claim 1 , wherein the one or more requests comprises at least one of an instruction and a load micro-operation. 
   
   
       7 . A machine-readable medium having stored thereon data representing sets of instructions which, when executed by a machine, cause the machine to:
 generate one or more requests waiting for data to be loaded into a data cache including a first level cache (FLC);   receive the one or more requests from one or more instruction sources;   schedule the one or more requests;   pass the one or more requests on to an execution unit having the data cache;   check contents of the data cache;   replay to the one or more requests if the data is not located in the data cache;   store the one or more requests that are replay safe;   detect readiness of the data of one or more bus clocks prior to the data being ready to be transmitted to a processor; and   transmit an early data ready indication to the processor to drain the one or more requests from a resource scheduler.   
   
   
       8 . The machine-readable medium of  claim 7 , wherein the sets of instructions, when executed by the machine, further cause the machine to:
 receive the transmitted early data ready indication from a memory controller; and   transmit the early data ready indication to the resource scheduler having a rescheduled request queue (RRQ).   
   
   
       9 . The machine-readable medium of  claim 7 , wherein the data cache further comprises a second level cache (SLC). 
   
   
       10 . The machine-readable medium of  claim 7 , wherein the sets of instructions, when executed by the machine, further cause the machine to:
 receive a data ready indication; and   fill the data cache with the data.   
   
   
       11 . The machine-readable medium of  claim 7 , wherein the sets of instructions, when executed by the machine, further cause the machine to:
 replay the one or more requests to continue to snoop the data cache for the data, the replaying comprising repeating the one or more requests through the data cache for a predetermined number of times.   
   
   
       12 . A method comprising:
 accessing data cache for data in response to a request for the data, the request received from an instruction source;   waiting for the data to be retrieved from memory if the data is not located in the data cache; and   receiving an early data ready indication at a resource scheduler, the early data ready indication being received one or more bus clocks prior to receiving a data ready indication referring to the data being ready to be retrieved from the memory; and   draining one or more requests from the resource scheduler in response to the early data ready indication.   
   
   
       13 . The method of  claim 12 , further comprising:
 receiving the data ready indication; and   filling the data cache with the data.   
   
   
       14 . The method of  claim 12 , wherein the waiting for the data comprises:
 inserting the request into the resource scheduler if the data is not located in the data cache; and   saving the request in the resource scheduler to wait for the data to be retrieved from the memory.   
   
   
       15 . The method of  claim 13 , further comprising:
 accessing the data cache with the request while the data cache is being filled with the data; and   meeting the request with the data from the data cache.   
   
   
       16 . The method of  claim 12 , further comprising replaying the request to continue to snoop the data cache for the data, the replaying comprising repeating the request through the data cache for a predetermined number of times. 
   
   
       17 . The method of  claim 12 , wherein the request comprises at least one of an instruction and a load micro-operation. 
   
   
       18 . The method of  claim 12 , wherein the data cache is coupled with an execution unit, the data cache comprising a first level cache (FLC) and a second level cache (SLC). 
   
   
       19 . The method of  claim 12 , wherein the resource scheduler is coupled with a bus interface unit to receive the early data ready indication from a memory controller, the resource scheduler comprises a rescheduled request queue (RRQ). 
   
   
       20 . The method of  claim 12 , wherein the memory controller is coupled with the bus interface unit via a front side bus.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.