


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 片上系統中斷機制的可靠性設計1引言在嵌入式系統應用中,異步實時交互系統占了很大部分,這就要求系統對數據或者控制信號的輸入具有較高的響應速度。相對查詢方式而言,中斷方式具有響應速度快、效率高等特點,因而在嵌入式系統中廣泛采用。隨著VLSI進入深亞微米時代,嵌入式系統趨向于片上系統(SoC),中斷控制部分不再由獨立的通用中斷控制芯片構成,而是由系統開發者根據特定的中斷類型設計專用的中斷控制邏輯。目前,對于中斷控制器的設計方法以及中斷的快速1 引言在嵌入式系統應用中,異步實時交互系統占了很大部分,這就要求系統對數據或者控制信號的輸入具有較高的響應速度。
2、相對查詢方式而言,中斷方式具有響應速度快、效率高等特點,因而在嵌入式系統中廣泛采用。隨著VLSI進入深亞微米時代,嵌入式系統趨向于片上系統(SoC),中斷控制部分不再由獨立的通用中斷控制芯片構成,而是由系統開發者根據特定的中斷類型設計專用的中斷控制邏輯。目前,對于中斷控制器的設計方法以及中斷的快速轉移等已經有大量的研究,但是對于中斷機制的可靠性問題研究較少。事實上,中斷機制的可靠性問題是不可忽視的,因為Windows、Unix和Linux等操作系統中,中斷的發生可以導致系統由用戶態進入核心態,如果中斷機制存在問題,在嚴重情況下可能導致安全漏洞和系統隱患。因而中斷機制的可靠性問題對于高可靠性系統
3、來說是一個重要問題。本文嘗試對中斷機制的可靠性問題進行了一些探討,從中斷檢測、中斷轉移和中斷處理三個角度提出了安全性原則和相關的解決方法,并針對這些問題提出了一種安全的中斷機制的實現。2 中斷機制可靠性的探討2.1 概述中斷是一種控制轉移機制,它引起處理器暫停當前程序的執行,并將控制轉移給中斷處理程序(Interrupt Service Routine),當中斷處理完成之后恢復原來程序的執行。中斷的處理通常是對當前正在執行的程序透明的,并且保留處理器發生中斷時的狀態。按照中斷的起源,可以分為以下三種情況:第一種情況,一個中斷可能是源于外部事件,一般稱之為外部中斷。大多數處理器(如x86微處理器
4、和Alpha微處理器)都采用如下類似的方式實現:處理器的一些物理引腳被設計成可以改變電壓(如從+5V變成-5V),從而引起CPU停止當前工作并開始執行處理中斷的特殊代碼中斷處理程序。依據它們如何發送給處理器的方法而進一步分為可屏蔽中斷(INTR)和不可屏蔽中斷(NMI)。第二種情況,一個中斷可能是源于處理器內部,一般稱之為異常。這種中斷一般對應于一條指令執行過程中檢測到的某種狀態。第三種情況,一個中斷可能是源于處理器指令的,一般稱之為軟件中斷,如x86微處理器中的INT指令。軟件中斷是一個指令執行的直接結果。在本文中,將以上三種中斷統稱為中斷。一般來說,一次中斷從發生到處理結束可以分為中斷檢測
5、、中斷轉移和中斷處理三個階段,以下依次討論其中的可靠性問題。2.2 中斷檢測中的可靠性問題對于中斷檢測的基本要求是準確及時檢測所發生的中斷,并將檢測到的中斷遞交中斷轉移單元。這里所涉及的安全問題主要是不會遺漏發生的中斷,不因干擾而誤報錯誤的中斷。對于前者,要求中斷檢測單元具有一定的檢測速度,并且在遞交中斷時如果中斷轉移單元處于忙碌狀態,需要中斷檢測單元具有保存所發生的中斷并可延遲提交的能力。對于后者,一般外部中斷管腳在噪音干擾下可能有短時間的跳變,如果采用簡單的電平檢測或者邊沿檢測就會產生誤報中斷的情況。一種解決的方法是采用邊沿檢測,但是要求邊沿兩側的低電平和高電平持續若干周期。另一種解決的方
6、法是采用電平檢測,如低電平有效,但是要求該電平必須持續若干周期。這樣,通過加寬檢測范圍的方法,就可以濾除部分噪聲干擾的影響,減少誤報中斷的幾率,維持系統正常的運行。2.3 中斷轉移中的可靠性問題中斷發生之后,中斷檢測單元會觸發中斷轉移單元,中斷轉移單元應該中斷當前任務的運行,轉向中斷處理程序。對于簡單的中斷機制而言,中斷轉移過程可能只有一個周期或者幾個周期;但是,對于復雜的中斷機制而言,中斷轉移過程可能需要上百個周期,如x86微處理器中的某些中斷轉移即是如此。所以,中斷轉移中的安全問題主要是必須保證中斷轉移的完整性,或者中斷轉移的不可中斷性,否則,系統狀態將進入一種未知的狀態。一種解決方法是在
7、中斷轉移的過程中將中斷轉移單元置于忙碌狀態,中斷檢測單元應停止中斷的提交。2.4 中斷處理中的可靠性問題中斷處理中面臨的安全問題主要是正確的維護系統狀態,包括處理器狀態(如寄存器等)和系統表狀態等。中斷處理可以使用兩種方式,一種是發生中斷的任務中的某段程序來進行處理,另一種是采用另外一個獨立的任務來進行處理。前者只需要在同一任務內進行控制轉移,只需保存中斷處理程序使用的部分寄存器,比較簡單,轉移過程也比較好;后者需要發生任務切換,可以保存處理器的全部寄存器狀態,對中斷具有較好的隔離性,但是需要花費的時鐘周期數目較多。為了兼顧轉移的效率和處理的安全程度,有必要對全部中斷進行合理的分類,對于非嚴重
8、的中斷采用當前任務處理,對于嚴重的中斷必須采用獨立的任務進行處理。如果對于系統的性能要求較高,可以為中斷處理程序專門保留一些寄存器使用,這些保留的寄存器在非中斷處理程序中是不可見的。中斷處理時另外一個安全問題和中斷轉移類似,即正在執行中斷處理程序又發生了另外的中斷,中斷處理程序應該繼續執行還是響應新的中斷。如果肓目的忽略中斷繼續執行,可能錯過對某些中斷的處理時機;如果及時響應新發生的中斷,多次中斷嵌套可能導致堆棧溢出等問題。一種解決方法是對中斷分級,高優先級中斷可以中斷低優先級的中斷處理程序,但是低優先級中斷不可中斷高優先級的中斷處理程序;同時,對中斷分類,限制某些嚴重中斷嵌套的層數,而不限制非嚴重中斷的嵌套層數。3 “龍騰S1”片上系統中的中斷機制可靠性設計在西北工業大學最近實現的一種面向工業控制的SoC芯片“龍騰S1”中,所實現的中斷機制嚴格的考慮了安全性問題?!褒堯vSl”片卜系統應用于工業控制的嵌入式應用中,內含32位嵌入式微處理器、PC104總線控制器、SDRAM控制、電子盤控制器和串并口控制器等,是PC104系統的高度集成?!褒堯vS1”支持256個硬件中斷和軟件中斷,中斷的整體分布和主要屬性如表1所示。由表1可以看到,除NMI之外,中斷分為三種類型:故障、陷阱和中止。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版五年級上冊數學3除數是整數的小數除法課件
- Unit 3 Teenage problems reading課件 牛津譯林版九年級上冊
- 2025年大健康產業發展顧問職業資格考試試卷及答案
- 2025年電子商務專業知識考試卷及答案
- 2025遂寧中考數學真題試卷
- 肺氣腫的常規護理
- 2025年石嘴山道路運輸從業資格證
- 2025年云南貨運從業資格證模擬試題題庫
- 假期旅游與工作雙重認證函(6篇)
- 質量培訓匯報
- 2025年中國直接結合鎂鉻磚數據監測研究報告
- 會議流程規劃能力試題及答案
- 中藥硬膏熱貼敷操作流程
- 西安歷年美術中考題及答案
- 國家開放大學《管理學基礎》形考任務1-4答案
- 眩暈中醫臨床路徑解讀
- 2025年山東省威海市市屬事業單位招聘(綜合類)考試筆試高頻重點模擬試卷提升(共500題附帶答案詳解)
- 2020年預防艾滋病、梅毒和乙肝(三病)母嬰傳播培訓
- 中國音樂學院《藥學分子生物學》2023-2024學年第二學期期末試卷
- 化工廠安全隱患排查培訓
- 《室上性心動過速》課件
評論
0/150
提交評論