[發明專利]預測棧的錯誤恢復方法、裝置及存儲介質有效
| 申請號: | 201711405263.0 | 申請日: | 2017-12-22 |
| 公開(公告)號: | CN109960607B | 公開(公告)日: | 2021-04-20 |
| 發明(設計)人: | 李策;吳瑞陽 | 申請(專利權)人: | 龍芯中科技術股份有限公司 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14 |
| 代理公司: | 北京同立鈞成知識產權代理有限公司 11205 | 代理人: | 楊澤;劉芳 |
| 地址: | 100095 北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 預測 錯誤 恢復 方法 裝置 存儲 介質 | ||
1.一種預測棧的錯誤恢復方法,其特征在于,配置有對預測棧中的地址信息進行備份的至少一個恢復棧,所述至少一個恢復棧中的每個恢復棧有相應的恢復棧編號;該方法包括:
在根據待執行分支指令的類型讀寫預測棧后,將所述預測棧中已有的分支指令的地址信息復制到其中一個恢復棧;
若所述待執行分支指令根據所述預測棧中的地址信息發生預測錯誤,則根據所述恢復棧中的地址信息校正所述預測棧中的地址信息;
獲取預測錯誤信息;所述預測錯誤信息包括所述待執行分支指令對應的所述預測棧的棧頂指針和所述對應的恢復棧的恢復棧編號;
根據所述恢復棧編號對應的所述恢復棧中的地址信息校正所述棧頂指針對應的預測棧中的地址信息。
2.根據權利要求1所述的方法,其特征在于,
所述在根據待執行分支指令的類型讀寫預測棧后,將所述預測棧中已有的分支指令的地址信息復制到所述恢復棧,包括:
在所述待執行分支指令的類型為函數調用類分支指令時,在所述預測棧的棧頂指針中寫入所述待執行分支指令的地址信息;將所述預測棧中已有的分支指令的地址信息復制到對應的恢復棧,所述待執行分支指令攜帶所述預測棧的棧頂指針和所述對應的恢復棧的恢復棧編號;
在所述待執行分支指令的類型為函數返回類分支指令時,將所述預測棧的棧頂指針的地址信息確定為所述待執行分支指令的預測地址信息,并將所述棧頂指針中的地址信息從所述預測棧中讀出;將所述預測棧中已有的分支指令的地址信息復制到對應的恢復棧,所述待執行分支指令攜帶所述預測棧的棧頂指針和所述對應的恢復棧的恢復棧編號;
在所述待執行分支指令的類型為其他類分支指令時,確定所述待執行分支指令的前一條分支指令對應的恢復棧;將所述前一條分支指令對應的恢復棧確定為所述待執行分支指令對應的恢復棧,所述待執行分支指令攜帶所述預測棧的棧頂指針和所述對應的恢復棧的恢復棧編號。
3.根據權利要求1所述的方法,其特征在于,還包括:
在新的待執行分支指令讀寫預測棧時,根據預設規則將所述恢復棧中的地址信息清空,得到新的恢復棧;
將所述預測棧中已有的分支指令的地址信息復制到所述新的恢復棧。
4.根據權利要求3所述的方法,其特征在于,所述在新的待執行分支指令讀寫預測棧時,根據預設規則將所述恢復棧中的地址信息清空,得到新的恢復棧,包括:
當待執行分支指令的數量大于預設閾值時,在新的待執行分支指令讀寫預測棧時,根據所述恢復棧的編號將所述恢復棧中的地址信息清空,得到所述新的恢復棧。
5.一種預測棧的錯誤恢復裝置,其特征在于,配置有對預測棧中的地址信息進行備份的至少一個恢復棧,所述至少一個恢復棧中的每個恢復棧有相應的恢復棧編號;該裝置包括:
復制單元,用于在根據待執行分支指令的類型讀寫預測棧后,將所述預測棧中已有的分支指令的地址信息復制到其中一個恢復棧;
校正單元,用于若所述待執行分支指令根據所述預測棧中的地址信息發生預測錯誤,則根據所述恢復棧中的地址信息校正所述預測棧中的地址信息;
所述校正單元,具體用于獲取預測錯誤信息;所述預測錯誤信息包括所述待執行分支指令對應的所述預測棧的棧頂指針和所述對應的恢復棧的恢復棧編號;并根據所述恢復棧編號對應的所述恢復棧中的地址信息校正所述棧頂指針對應的預測棧中的地址信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于龍芯中科技術股份有限公司,未經龍芯中科技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711405263.0/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種軟件備份、還原方法及終端
- 下一篇:office文檔的處理方法和處理系統





