发明名称 Return address prediction in multithreaded processors
摘要 Techniques and structures are disclosed relating to predicting return addresses in multithreaded processors. In one embodiment, a processor is disclosed that includes a return address prediction unit. The return address prediction unit is configured to store return addresses for different ones of a plurality of threads executable on the processor. The return address prediction unit is configured to receive a request for a predicted return address for one of the plurality of threads. The first request includes an identification of the requesting thread. The return address prediction unit is configured to provide the predicted return address to the requesting thread. In some embodiments, the return address prediction unit is configured to store the return addresses in a memory that has a plurality of dedicated portions. In some embodiments, the return address prediction unit is configured to store the return addresses in a memory that has dynamically allocable entries.
申请公布号 US9213551(B2) 申请公布日期 2015.12.15
申请号 US201113046273 申请日期 2011.03.11
申请人 Oracle International Corporation 发明人 Shah Manish K.;Grohoski Gregory F.;Samoail Zeid H.
分类号 G06F9/42;G06F9/38;G06F9/30 主分类号 G06F9/42
代理机构 Meyertons, Hood, Kivlin, Kowert & Goetzel, P.C. 代理人 Meyertons, Hood, Kivlin, Kowert & Goetzel, P.C.
主权项 1. A processor, comprising: a return address prediction circuit configured to: store return addresses for different ones of a plurality of threads executable on the processor, wherein the return address prediction circuit includes a content addressable memory having a plurality of entries, wherein each entry is configured to store a respective one of the return addresses and a thread identifier indicative of one of the plurality of threads, wherein each of the plurality of entries is configured to store a respective age value indicative of an ordering in which return addresses are stored for a respective one of the plurality of threads;store a respective counter value for each thread, wherein each counter value is indicative of a total number of return addresses currently stored for a respective one of the plurality of threads by the return address prediction circuit;receive a first request for a predicted return address for a first thread of the plurality of threads, wherein the first request includes an indication of the first thread; andprovide the predicted return address to the first thread in response to the content addressable memory 1) determining that the indication of the first thread corresponds to a thread identifier in an entry that includes the predicted return address and 2) determining that an age value stored in the entry that contains the predicted return address corresponds to the counter value for the first thread.
地址 Redwood Shores CA US