[發明專利]流水線微處理器的中斷響應確定方法、裝置及微處理器核無效
| 申請號: | 201010103742.9 | 申請日: | 2010-01-29 |
| 公開(公告)號: | CN101826000A | 公開(公告)日: | 2010-09-08 |
| 發明(設計)人: | 李祖松;汪文祥;郝守青;徐翠萍 | 申請(專利權)人: | 北京龍芯中科技術服務中心有限公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38;G06F9/46 |
| 代理公司: | 北京市隆安律師事務所 11323 | 代理人: | 史霞 |
| 地址: | 100080 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 流水線 微處理器 中斷 響應 確定 方法 裝置 | ||
技術領域
本發明涉及微處理器體系結構,更具體地說涉及用于流水線微處理器的中斷響應確定方法及裝置,屬于計算機技術領域。
背景技術
現代計算機系統中,作為系統控制中心的微處理器,需要對計算機系統中的眾多硬件設備進行管理,所以,它們之間必須維持一套通信機制。眾所周知,微處理器的速度跟外部設備的速度往往不在一個數量級上,因此讓微處理器采用輪詢的方式去管理外部設備顯然是低效的。因而,在現有的計算機系統中,外部設備主要通過中斷機制通知微處理器。微處理器在接收到中斷信號之后,將會停止當前的工作進入中斷處理。
在具體實現時,微處理器內部通常又將中斷和例外合并起來,利用一套統一的機制進行處理。例外是程序指令執行的異常造成的,在產生的時候它們是與微處理器時鐘同步,且例外總是確切的產生在某條指令上,因而對于微處理器而言,例外是一個同步信號。但是中斷是由外部設備發出的,其相對于微處理器是一個異步信號,為了利用與例外處理相同的一套機制進行處理,必須要將外部設備的中斷信號同步到微處理器時鐘上,并最終綁定到某一條指令上。當完成這些處理之后,被綁定的指令就可以觸發一種特殊的例外一中斷,處理器內部接收到該中斷信號后即進入相應的中斷處理模式。
在上述的實現方式中,從來自外部設備的中斷信號到達微處理器開始,到最終微處理器進入例外處理模式,兩個事件之間的時間間隔稱為處理器的中斷響應延遲。在對于外部設備響應延遲有嚴格要求的應用領域(例如,工業控制、航空航天),一個計算機系統進行設計時必須明確各類請求的響應延遲是否在任何情況下都滿足設計需要,即:需要明確在最壞的情況下,響應延遲是否滿足延遲要求指標。為達到該設計目標,通常需要軟硬件的協同設計考慮。
作為一個計算機系統中的控制核心,微處理器中斷響應延遲大小的確定性是尤為重要的。然而,當前微處理器多采用流水線結構,因此當進行中斷綁定時,微處理器流水線可能同時存在多條指令,選擇哪一條指令,或者進一步說選擇位于流水線哪一級的指令進行綁定將直接影響到中斷延遲。最直接的考慮可以將中斷綁定在流水線中第一條即將提交的指令上,這樣處理器的響應延遲最小。但是處理器實現精確例外的要求會大大增加此處設計考慮的復雜度。
精確例外是處理例外的一種方法,具體是指,在處理例外的時候,例外之前的指令已經全部完成,例外之后的指令可以重新執行,且重新執行不影響原來指令流的正確執行。在亂序執行的情況下,需要保證一條指令發生例外時的現場與其在順序執行環境下發生例外的現場一樣,這里所指的現場包括寄存器現場和存儲器現場。當前主流高性能微處理器都實現了精確例外。
為了滿足精確例外的要求,一種實現方式是將對微處理器現場的修改都推遲到確定例外不會產生之后進行,在亂序流水線微處理器中,通常是延遲到指令提交階段完成。但是這樣需要利用大量的存儲資源暫存所有指令的操作結果直至指令提交,特別是對于訪存指令,需要保存更多的相關內容。這種實現方式下,外部中斷可以直接綁定到等待提交的第一條指令上,但是這需要一種很高硬件開銷的流水線結構。而且進一步地說,即使利用該方式實現外部中斷,也無法滿足處理器中斷響應延遲的確定性。因為,在特定情況下,外部中斷到來時,流水線中沒有指令,取指部件在高速緩存中不命中,去外部存儲中取指。在這種情況下,中斷響應延遲將受到外部存儲訪存延遲的影響,從而引入不確定性。
綜上所述,現有技術的不足需要一種開銷低、效率高的設計,以滿足用于流水線微處理器的中斷響應延遲要求。
發明內容
本發明要解決的技術問題是提供一種流水線微處理器的中斷響應確定方法、裝置及微處理器核,使得利用較小的開銷就能以滿足用于流水線微處理器的中斷響應延遲要求。
為了實現上述目的,本發明提供一種流水線微處理器的中斷響應延遲確定方法,所述流水線包括:取指級、譯碼級和指令發射級,該方法包括:
當所述微處理器接收到外部中斷信號時,阻止新指令的發射,且對處于流水線中的第一條待執行指令標記中斷標識;
當檢測到流水線中的指令存在中斷標識時,清空處理器流水線且觸發處理器內部的中斷響應。
進一步地,該方法還包括:設置存儲待發射和執行指令的重定序排列,此時,所述的流水線中第一條待執行指令具體是:
當重定序排列中存在指令時,第一條尚未發射的指令、或已經發射但尚未執行并將改變微處理器狀態的指令;
當重定序排列中不存在指令、但譯碼或者取指流水級存在指令時,沿著流水線從譯碼或者取指流水級中進入重定序狀態的第一條指令;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京龍芯中科技術服務中心有限公司,未經北京龍芯中科技術服務中心有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010103742.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種可視電話及其實現方法
- 下一篇:工業計算機之機殼散熱結構及其制作方法





