下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、片上系統(tǒng)中斷機制的可靠性設(shè)計在系統(tǒng)應(yīng)用中,異步實時交互系統(tǒng)占了很大部分,這就要求系統(tǒng)對數(shù)據(jù)或者控制信號的輸入具有較高的響應(yīng)速度。相對查詢方式而言,中斷方式具有響應(yīng)速度快、效率高等特點,因而在嵌入式系統(tǒng)中廣泛采納。隨著vlsi進入深亞微米時代,嵌入式系統(tǒng)趨向于片上系統(tǒng)(soc),中斷控制部分不再由自立的通用中斷控制芯片構(gòu)成,而是由系統(tǒng)開發(fā)者按照特定的中斷類型設(shè)計專用的中斷控制規(guī)律。目前,對于中斷控制器的設(shè)計辦法以及中斷的迅速轉(zhuǎn)移等已經(jīng)有大量的討論,但是對于中斷機制的牢靠性問題討論較少。實際上,中斷機制的牢靠性問題是不行忽略的,由于windows、unix和等操作系統(tǒng)中,中斷的發(fā)生可以導(dǎo)致系統(tǒng)由用
2、戶態(tài)進入核心態(tài),假如中斷機制存在問題,在嚴峻狀況下可能導(dǎo)致平安漏洞和系統(tǒng)隱患。因而中斷機制的牢靠性問題對于高牢靠性系統(tǒng)來說是一個重要問題。本文嘗試對中斷機制的牢靠性問題舉行了一些探討,從中斷檢測、中斷轉(zhuǎn)移和中斷處理三個角度提出了平安性原則和相關(guān)的解決辦法,并針對這些問題提出了一種平安的中斷機制的實現(xiàn)。2 中斷機制牢靠性的探討2.1 概述中斷是一種控制轉(zhuǎn)移機制,它引起處理器暫停當(dāng)前程序的執(zhí)行,并將控制轉(zhuǎn)移給中斷處理程序(interrupt service routine),當(dāng)中斷處理完成之后復(fù)原本來程序的執(zhí)行。中斷的處理通常是對當(dāng)前正在執(zhí)行的程序透亮的,并且保留處理器發(fā)生中斷時的狀態(tài)。根據(jù)中斷的
3、起源,可以分為以下三種狀況:第一種狀況,一個中斷可能是源于外部大事,普通稱之為外部中斷。大多數(shù)處理器(如x86微處理器和alpha微處理器)都采納如下類似的方式實現(xiàn):處理器的一些物理引腳被設(shè)計成可以轉(zhuǎn)變(如從+5v變成-5v),從而引起cpu停止當(dāng)前工作并開頭執(zhí)行處理中斷的特別代碼中斷處理程序。依據(jù)它們?nèi)绾伟l(fā)送給處理器的辦法而進一步分為可屏蔽中斷(intr)和不行屏蔽中斷(nmi)。其次種狀況,一個中斷可能是源于處理器內(nèi)部,普通稱之為異樣。這種中斷普通對應(yīng)于一條命令執(zhí)行過程中檢測到的某種狀態(tài)。第三種狀況,一個中斷可能是源于處理器命令的,普通稱之為軟件中斷,如x86微處理器中的int命令。軟件中
4、斷是一個命令執(zhí)行的挺直結(jié)果。在本文中,將以上三種中斷統(tǒng)稱為中斷。普通來說,一次中斷從發(fā)生處處理結(jié)束可以分為中斷檢測、中斷轉(zhuǎn)移和中斷處理三個階段,以下依次研究其中的牢靠性問題。2.2 中斷檢測中的牢靠性問題對于中斷檢測的基本要求是精確準(zhǔn)時檢測所發(fā)生的中斷,并將檢測到的中斷遞交中斷轉(zhuǎn)移單元。這里所涉及的平安問題主要是不會遺漏發(fā)生的中斷,不因干擾而誤報錯誤的中斷。對于前者,要求中斷檢測單元具有一定的檢測速度,并且在遞交中斷時假如中斷轉(zhuǎn)移單元處于勞碌狀態(tài),需要中斷檢測單元具有保存所發(fā)生的中斷并可延遲提交的能力。對于后者,普通外部中斷管腳在噪音干擾下可能有短時光的跳變,假如采納容易的電平檢測或者邊沿檢測
5、就會產(chǎn)生誤報中斷的狀況。一種解決的辦法是采納邊沿檢測,但是要求邊沿兩側(cè)的低電平和高電平持續(xù)若干周期。另一種解決的辦法是采納電平檢測,如低電平有效,但是要求該電平必需持續(xù)若干周期。這樣,通過加寬檢測范圍的辦法,就可以濾除部分噪聲干擾的影響,削減誤報中斷的幾率,維持系統(tǒng)正常的運行。2.3 中斷轉(zhuǎn)移中的牢靠性問題中斷發(fā)生之后,中斷檢測單元會觸發(fā)中斷轉(zhuǎn)移單元,中斷轉(zhuǎn)移單元應(yīng)當(dāng)中斷當(dāng)前任務(wù)的運行,轉(zhuǎn)向中斷處理程序。對于容易的中斷機制而言,中斷轉(zhuǎn)移過程可能惟獨一個周期或者幾個周期;但是,對于復(fù)雜的中斷機制而言,中斷轉(zhuǎn)移過程可能需要上百個周期,如x86微處理器中的某些中斷轉(zhuǎn)移即是如此。所以,中斷轉(zhuǎn)移中的平安
6、問題主要是必需保證中斷轉(zhuǎn)移的完整性,或者中斷轉(zhuǎn)移的不行中斷性,否則,系統(tǒng)狀態(tài)將進入一種未知的狀態(tài)。一種解決辦法是在中斷轉(zhuǎn)移的過程中將中斷轉(zhuǎn)移單元置于勞碌狀態(tài),中斷檢測單元應(yīng)停止中斷的提交。2.4 中斷處理中的牢靠性問題中斷處理中瀕臨的平安問題主要是正確的維護系統(tǒng)狀態(tài),包括處理器狀態(tài)(如寄存器等)和系統(tǒng)表狀態(tài)等。中斷處理可以用法兩種方式,一種是發(fā)生中斷的任務(wù)中的某段程序來舉行處理,另一種是采納另外一個自立的任務(wù)來舉行處理。前者只需要在同一任務(wù)內(nèi)舉行控制轉(zhuǎn)移,只需保存中斷處理程序用法的部分寄存器,比較容易,轉(zhuǎn)移過程也比較好;后者需要發(fā)生任務(wù)切換,可以保存處理器的所有寄存器狀態(tài),對中斷具有較好的隔離
7、性,但是需要花費的時鐘周期數(shù)目較多。為了兼顧轉(zhuǎn)移的效率和處理的平安程度,有須要對所有中斷舉行合理的分類,對于非嚴峻的中斷采納當(dāng)前任務(wù)處理,對于嚴峻的中斷必需采納自立的任務(wù)舉行處理。假如對于系統(tǒng)的性能要求較高,可以為中斷處理程序特地保留一些寄存器用法,這些保留的寄存器在非中斷處理程序中是不行見的。中斷處理時另外一個平安問題和中斷轉(zhuǎn)移類似,即正在執(zhí)行中斷處理程序又發(fā)生了另外的中斷,中斷處理程序應(yīng)當(dāng)繼續(xù)執(zhí)行還是響應(yīng)新的中斷。假如肓目的忽視中斷繼續(xù)執(zhí)行,可能錯過對某些中斷的處理時機;假如準(zhǔn)時響應(yīng)新發(fā)生的中斷,多次中斷嵌套可能導(dǎo)致堆棧溢出等問題。一種解決辦法是對中斷分級,高優(yōu)先級中斷可以中斷低優(yōu)先級的中
8、斷處理程序,但是低優(yōu)先級中斷不行中斷高優(yōu)先級的中斷處理程序;同時,對中斷分類,限制某些嚴峻中斷嵌套的層數(shù),而不限制非嚴峻中斷的嵌套層數(shù)。3 “龍騰s1”片上系統(tǒng)中的中斷機制牢靠性設(shè)計在西北工業(yè)高校最近實現(xiàn)的一種面對工業(yè)控制的soc芯片“龍騰s1”中,所實現(xiàn)的中斷機制嚴格的考慮了平安性問題。“龍騰sl”片卜系統(tǒng)應(yīng)用于工業(yè)控制的嵌入式應(yīng)用中,內(nèi)含32位嵌入式微處理器、pc104控制器、sdram控制、盤控制器和串并口控制器等,是pc104系統(tǒng)的高度集成。“龍騰s1”支持256個硬件中斷和軟件中斷,中斷的整體分布和主要屬性如表所示。可以看到,除nmi之外,中斷分為三種類型:故障、陷阱和中止。故障主要
9、用于命令執(zhí)行之前的中斷檢測,故障處理完畢之后,故障命令可以重新執(zhí)行;陷阱主要用于命令執(zhí)行結(jié)束之后的巾斷通知,陷阱處理完畢之后,系統(tǒng)將繼續(xù)執(zhí)行下一條應(yīng)當(dāng)執(zhí)行的命令;中止用來匯報系統(tǒng)的嚴峻錯誤,系統(tǒng)接收到中止異樣之后,處理程序需要重建各種系統(tǒng)表,并可能需要重新啟動操作系統(tǒng)。3.1 中斷檢測中的牢靠性考慮對于外部中斷的檢測,實行了升高沿的檢測辦法,要求低電平和高電平各持續(xù)8個周期以上。對于中斷提交的時機,命令內(nèi)部中斷可在中斷轉(zhuǎn)移單元空閑的任何時光提交,以便盡快的中斷轉(zhuǎn)移并進人中斷處理程序;而對于外部中斷則需要在命令窗口之間提交(即上一條命令執(zhí)行結(jié)束和下一條命令即將開頭之時),以便保持命令執(zhí)行的完整性
10、。3.2 中斷轉(zhuǎn)移中的牢靠性考慮因為中斷轉(zhuǎn)移周期較長,所以中斷轉(zhuǎn)移是依賴處理器固化的微程序?qū)崿F(xiàn)的。為了防止中斷轉(zhuǎn)移被新的中斷所打斷,中斷轉(zhuǎn)移微程序首先設(shè)置中斷中的狀態(tài)標(biāo)記字為勞碌狀態(tài),這樣可以避開中斷檢測電路再次提交新的中斷,從而保證中斷轉(zhuǎn)移的完整性。在中斷轉(zhuǎn)移完畢后,中斷轉(zhuǎn)移微程序設(shè)置中斷電路的狀態(tài)標(biāo)記字為空閑狀態(tài)。3.3 中斷處理中的牢靠性考慮“龍騰s1”為中斷的處理提供了兩種方式:中斷陷阱門和任務(wù)門。前者無需任務(wù)切換,而后者實施任務(wù)切換。如前所述,對于嚴峻錯誤,如無效tss(任務(wù)狀態(tài)段)、雙故障等,必需用法任務(wù)門舉行中斷處理,這樣可以保證處理程序在一個有效的任務(wù)環(huán)境之中。其他中斷通??稍?/p>
11、當(dāng)前任務(wù)環(huán)境中舉行處理。中斷門和陷阱門的唯一區(qū)分是中斷門屏蔽可屏蔽中斷,而陷阱門不屏蔽可屏蔽中斷,用戶可以按照需要舉行挑選?!褒堯vs1”為了保證中斷處理過程中的堆棧平安,為不同特權(quán)級設(shè)置了不同的堆棧?!褒堯vs1”支持四種特權(quán)級,普通操作系統(tǒng)運行在最高特權(quán)級0,用戶程序運行在最低特權(quán)級3。當(dāng)用戶程序發(fā)生中斷時,無論是通過中斷陷阱門處理還是任務(wù)門處理,假如處理器由最低特權(quán)級轉(zhuǎn)換到最高特權(quán)級,堆棧也會隨之轉(zhuǎn)變。通過這種機制,可以保證中斷處理程序具有自己的堆棧,從而可以保證有足夠的空間來保存處理器狀態(tài)和任務(wù)上下文等。有關(guān)四種特權(quán)級下的堆棧指針信息所有保存在任務(wù)的任務(wù)狀態(tài)段(task state seg
12、ment)中,堆棧切換時新的堆棧將從任務(wù)狀態(tài)段中讀取?!褒堯vs1”中為中斷定義的優(yōu)先級如上表所示,普通在處理低優(yōu)先級中斷時又發(fā)生高優(yōu)先級中斷可以串行處理。但是,發(fā)生某些嚴峻問題時,系統(tǒng)將不再發(fā)生新產(chǎn)生的中斷,而是匯報雙故障中斷。根據(jù)各種中斷的嚴峻程序,從輕到重將中斷分為良性、配合、頁故障和中止,如上表所示。至于哪些中斷的延續(xù)發(fā)生會導(dǎo)致雙故障,需要根據(jù)中斷性質(zhì)舉行考慮,如表2所示。表2中第一行所列為正在處理的中斷性質(zhì),第一列為又發(fā)生的中斷性質(zhì),表格內(nèi)容中所實行的策略:串行處理,雙故障、頁故障和中止??煽吹窖永m(xù)發(fā)生良性異樣,因為中斷嚴峻程序較低,系統(tǒng)策略為串行處理;而對于最為嚴峻的中止,發(fā)生任何中斷都會導(dǎo)致系統(tǒng)進入停機狀態(tài),即惟獨通過nmi信號輸入或者系統(tǒng)復(fù)位才干使處理器重新啟動。最后,我們給出“龍騰s1”中的中斷檢測電路(圖1)和中斷轉(zhuǎn)移流程(圖2)。4 小結(jié)中斷機制為處理外部哀求(如外設(shè)哀求)和命令執(zhí)行過程中的一些異樣狀況和大事提供了有力的支持。中斷的處理將會導(dǎo)致控制的轉(zhuǎn)移從應(yīng)用程序轉(zhuǎn)移到系統(tǒng)的中斷處理程序。本文重點研究了這一過程中中斷檢測、中斷轉(zhuǎn)移和
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 九年級歷史下冊單元評價檢測課件
- 《證劵基礎(chǔ)知識最終》課件
- 《激光切割工藝》課件
- 荒山綠化項目可行性研究報告
- 《人力資源管理奧秘》課件
- 股份解禁協(xié)議三篇
- 專業(yè)畢業(yè)實習(xí)報告4篇
- 2023年-2024年企業(yè)主要負責(zé)人安全教育培訓(xùn)試題及答案(易錯題)
- 2024員工三級安全培訓(xùn)考試題帶解析答案可打印
- 2023年-2024年項目部安全管理人員安全培訓(xùn)考試題附答案【培優(yōu)A卷】
- 幼兒教育-個別幼兒教育記錄表.文檔
- (高清版)DZT 0338.4-2020 固體礦產(chǎn)資源量估算規(guī)程 第4部分 SD法
- 婦產(chǎn)科學(xué) (安康職業(yè)技術(shù)學(xué)院)智慧樹知到期末考試答案2024年
- 供電所營銷安全管理措施
- 水閘閘門運行方案
- 消費型股東招募計劃書
- 2022-2023學(xué)年江蘇省連云港市九年級(上)期末數(shù)學(xué)試卷(含詳細答案解析)
- 會計事務(wù)所述職報告
- 2022年江蘇普通高中學(xué)業(yè)水平選擇性考試政治真題及答案
- 玻璃工業(yè)的節(jié)能減排與綠色制造
- 防止交叉感染的護理措施和策略
評論
0/150
提交評論