[發明專利]指令處理方法及設備有效
| 申請號: | 201310011219.7 | 申請日: | 2013-01-11 |
| 公開(公告)號: | CN103116484A | 公開(公告)日: | 2013-05-22 |
| 發明(設計)人: | 惠衛鋒;朱小剛 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38 |
| 代理公司: | 北京三高永信知識產權代理有限責任公司 11138 | 代理人: | 黃厚剛 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 指令 處理 方法 設備 | ||
技術領域
本發明涉及計算機技術領域,特別涉及一種指令處理方法及設備。
背景技術
通常,CPU(Central?Processing?Unit,中央處理單元)通過指令流水線處理指令,即將CPU中實現不同處理功能的電路單元組成一條指令流水線,并將指令分成多個步驟處理。進一步地,可以將處理指令的一個步驟的時間定義為一個CPU周期,則在一個CPU周期內,多個電路單元可以并行地對多條指令的不同步驟進行處理。比如,CPU中的指令流水線為三級指令流水線,且指令的處理依次包括取指、譯碼和執行這三個步驟。請參考圖1,其示出了三級指令流水線的應用示意圖。圖1中,在CPU周期1內,CPU中的取指單元對指令1進行取指處理;在CPU周期2內,CPU中的取指單元對指令2進行取指處理、譯碼單元對指令1進行譯碼處理;在CPU周期3內,CPU中的取指單元對指令3進行取指處理、譯碼單元對指令2進行譯碼處理、執行單元對指令1進行執行處理等,依此類推,直至處理完每一條指令。
CPU中的取指單元從緩存器中的緩存行(Cache?Line)中讀取指令。緩存行是緩存器中的一個訪問單元,可以存儲至少一條指令,其包括標簽(Tag)、控制標識和數據位等。其中,標簽用來標識該緩存行的數據在內存中的地址、控制標識用來標識該緩存行是否允許被訪問、數據位用來存儲指令。具體地,當緩存器中沒有CPU當前讀取的指令時,緩存器以緩存行為單位讀取內存中的指令,并將該指令發送給CPU,以便CPU對該指令進行處理。
進一步地,緩存器通常由SRAM(Static?Random?Access?Memory,靜態隨機存儲器)實現。其中,SRAM是RAM(Random?Access?Memory,隨機存儲器)的一種。由于RAM在應用過程中會出錯,即發生RAM失效事件,則根據RAM的特性,可以將RAM失效事件分為硬失效事件、偽硬失效事件和軟失效事件。其中,硬失效事件是指器件內部發生不可恢復性的物理失效,必須更換器件單元來消除故障的事件;偽硬失效事件是指器件單元發生邏輯性死鎖,必須通過上下電等操作來消除故障的事件;軟失效事件是指高能亞原子粒子穿越RAM中的硅時產生自由電荷,這些自由電荷導致RAM中存儲數據的改變的事件。隨著器件工藝尺寸不斷縮小,RAM的集成度越來越高,軟失效事件的發生概率也在不斷增加,影響了RAM的可靠性,尤其對SRAM的可靠性造成了較大的影響。
由于指令出錯只可能出現在取指階段,因此,為了避免SRAM失效引起的指令出錯,在CPU中的取指單元取指后,會通過硬件單元的檢錯技術檢測當前讀取的指令是否出錯,若檢測到當前讀取的指令出錯,則向CPU發送中斷請求,并修改狀態寄存器中與緩存器對應的標志位的數值。其中,中斷請求用來通知CPU處理指令出錯事件,以消除錯誤數據對處理過程的影響;狀態寄存器用來標識觸發中斷請求的中斷源。
現有技術中,CPU接收到中斷請求后,清除CPU的流水線和緩存器中的指令,并重新從該指令所屬的指令集的第一條指令處進行指令處理。
現有的指令處理方法中,CPU接收到中斷請求后,重新從該指令所屬的指令集的第一條指令處進行指令處理,使得CPU重復處理之前已經處理過的指令,導致指令恢復的時間較長,降低了CPU的處理效率。
發明內容
為了解決CPU接收到中斷請求后,重新從該指令所屬的指令集的第一條指令處進行指令處理,使得CPU重復處理之前已經處理過的指令,導致指令恢復的時間較長的問題,本發明實施例提供了一種指令處理方法及設備。所述技術方案如下:
第一方面,提供了一種指令處理方法,所述方法包括:
在接收到中斷請求后,記錄當前流水線中正在執行的第一指令的地址;
設置緩存器的控制信息,以便所述緩存器根據所述控制信息對所述流水線中正在取指的第二指令進行恢復,所述第一指令和第二指令存儲在所述緩存器中且所述第二指令的取指時刻為所述第一指令的執行時刻;
根據所述第一指令的地址從所述第一指令之后的指令處進行指令處理,所述第一指令之后的指令包括恢復后的所述第二指令。
在第一方面的第一種可能的實現方式中,所述設置緩存器的控制信息之前,還包括:
檢測所述中斷請求是否是所述緩存器出錯而觸發的;
若檢測到是所述緩存器出錯而觸發的,則確定執行設置緩存器的控制信息的步驟。
結合第一方面的第一種可能的實現方式,在第一方面的第二種可能的實現方式中,所述檢測所述中斷請求是否是所述緩存器出錯而觸發的,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310011219.7/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:空氣濾清器
- 下一篇:終端界面的展示方法和裝置





