頁籤選單縮合
題名 | Return Target Address Prediction=返回指令的目的位址預測 |
---|---|
作者 | 黃樹林; | 書刊名 | 明志技術學院學報 |
卷期 | 33 2001.06[民90.06] |
頁次 | 頁41-48 |
分類號 | 448.6 |
關鍵詞 | 返回指令的目的位址; 返回堆疊; 環狀佇列; Return target address; Return stack; Circular queue; |
語文 | 英文(English) |
中文摘要 | 分支指令可被分成許多種類,如無條件分支指令(unconditional branch),條件分支指令(onditional branch),返回指令(RET)等。它們有著不同的行為及各自適合的預測演算法。返回指令是屬於具有動態目的位址的分支指令,傳統上需借助返回堆疊來執行目的位址的預測。在本篇論文中,我們描述如何使用環狀佇列(Circular Queue)來處理返回指令的目的位址預測(Return Target Address Prediction)。環狀佇列是個較好的選擇,當在環狀佇列每個位置加上一個計數器時的新架構有最好的預測準確率。根據實驗,最符合成本效益的是具有 8 位置的環狀佇列加計數器的新架構。它的效率更高過 30 位置的返回堆疊。 而此架構的預測失誤率是比返回堆疊要好 38%。我們也為每一個呼叫╱返回指令,於目的位址緩衝器(Target Address Buffer)中額外加上一個標籤(LEVEL),來指示預測階層。這個機制將是簡單又經濟有效的,且能修補由呼叫╱返回指令錯誤的預測執行所引起的環狀佇列中的錯亂。 |
英文摘要 | There are different kinds of branch, such as unconditional branch, conditional branch, return instruction and so on. They have different behaviors and each kind has its own suitable prediction algorithm. Return (RET) instructions are branch instructions with dynamic target addresses and the return target address prediction is fulfilled with a return stack traditionally. In this paper, we present the circular queue for dealing with the target address prediction of return instruction. The circular queue is a better choice for the target address prediction of return instruction. In addition, when we equip the entries of the circular queue with counters, the architecture has better prediction accuracy for the SPECint95. From the simulation result, the cost-effective configuration is the 8-entry “circular queue with counter” whose performance outperforms the 30-entry “return stack”. Also, its misprediction rate is about 38% better than the “return stack” scheme. We append a tag (LEVEL) to the TAB (Target Address Buffer) for each CALL/RET instruction to indicate the prediction level. This mechanism is easy and cost effective to repair the mis-speculation of the CALL/RET execution. |
本系統之摘要資訊系依該期刊論文摘要之資訊為主。