片上系統(tǒng)中斷機(jī)制的可靠性設(shè)計(jì)中斷可靠性SoC_第1頁
片上系統(tǒng)中斷機(jī)制的可靠性設(shè)計(jì)中斷可靠性SoC_第2頁
片上系統(tǒng)中斷機(jī)制的可靠性設(shè)計(jì)中斷可靠性SoC_第3頁
片上系統(tǒng)中斷機(jī)制的可靠性設(shè)計(jì)中斷可靠性SoC_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、片上系統(tǒng)中斷機(jī)制的可靠性設(shè)計(jì),中斷,可靠性,SoC    1引言在嵌入式系統(tǒng)應(yīng)用中,異步實(shí)時(shí)交互系統(tǒng)占了很大部分,這就要求系統(tǒng)對數(shù)據(jù)或者控制信號(hào)的輸入具有較高的響應(yīng)速度。相對查詢方式而言,中斷方式具有響應(yīng)速度快、效率高等特點(diǎn),因而在嵌入式系統(tǒng)中廣泛采用。隨著VLSI進(jìn)入深亞微米時(shí)代,嵌入式系統(tǒng)趨向于片上系統(tǒng)(SoC),中斷控制部分不再由獨(dú)立的通用中斷控制芯片構(gòu)成,而是由系統(tǒng)開發(fā)者根據(jù)特定的中斷類型設(shè)計(jì)專用的中斷控制邏輯。目前,對于中斷控制器的設(shè)計(jì)方法以及中斷的快速1 引言在嵌入式系統(tǒng)應(yīng)用中,異步實(shí)時(shí)交互系統(tǒng)占了很大部分,這就要求系統(tǒng)對數(shù)據(jù)或者控制信號(hào)的輸

2、入具有較高的響應(yīng)速度。相對查詢方式而言,中斷方式具有響應(yīng)速度快、效率高等特點(diǎn),因而在嵌入式系統(tǒng)中廣泛采用。隨著VLSI進(jìn)入深亞微米時(shí)代,嵌入式系統(tǒng)趨向于片上系統(tǒng)(SoC),中斷控制部分不再由獨(dú)立的通用中斷控制芯片構(gòu)成,而是由系統(tǒng)開發(fā)者根據(jù)特定的中斷類型設(shè)計(jì)專用的中斷控制邏輯。目前,對于中斷控制器的設(shè)計(jì)方法以及中斷的快速轉(zhuǎn)移等已經(jīng)有大量的研究,但是對于中斷機(jī)制的可靠性問題研究較少。事實(shí)上,中斷機(jī)制的可靠性問題是不可忽視的,因?yàn)閃indows、Unix和Linux等操作系統(tǒng)中,中斷的發(fā)生可以導(dǎo)致系統(tǒng)由用戶態(tài)進(jìn)入核心態(tài),如果中斷機(jī)制存在問題,在嚴(yán)重情況下可能導(dǎo)致安全漏洞和系統(tǒng)隱患。因而中斷機(jī)制的可靠

3、性問題對于高可靠性系統(tǒng)來說是一個(gè)重要問題。本文嘗試對中斷機(jī)制的可靠性問題進(jìn)行了一些探討,從中斷檢測、中斷轉(zhuǎn)移和中斷處理三個(gè)角度提出了安全性原則和相關(guān)的解決方法,并針對這些問題提出了一種安全的中斷機(jī)制的實(shí)現(xiàn)。2 中斷機(jī)制可靠性的探討2.1 概述中斷是一種控制轉(zhuǎn)移機(jī)制,它引起處理器暫停當(dāng)前程序的執(zhí)行,并將控制轉(zhuǎn)移給中斷處理程序(Interrupt Service Routine),當(dāng)中斷處理完成之后恢復(fù)原來程序的執(zhí)行。中斷的處理通常是對當(dāng)前正在執(zhí)行的程序透明的,并且保留處理器發(fā)生中斷時(shí)的狀態(tài)。按照中斷的起源,可以分為以下三種情況:第一種情況,一個(gè)中斷可能是源于外部事件,一般稱之為外部中斷。大多數(shù)處

4、理器(如x86微處理器和Alpha微處理器)都采用如下類似的方式實(shí)現(xiàn):處理器的一些物理引腳被設(shè)計(jì)成可以改變電壓(如從+5V變成-5V),從而引起CPU停止當(dāng)前工作并開始執(zhí)行處理中斷的特殊代碼中斷處理程序。依據(jù)它們?nèi)绾伟l(fā)送給處理器的方法而進(jìn)一步分為可屏蔽中斷(INTR)和不可屏蔽中斷(NMI)。第二種情況,一個(gè)中斷可能是源于處理器內(nèi)部,一般稱之為異常。這種中斷一般對應(yīng)于一條指令執(zhí)行過程中檢測到的某種狀態(tài)。第三種情況,一個(gè)中斷可能是源于處理器指令的,一般稱之為軟件中斷,如x86微處理器中的INT指令。軟件中斷是一個(gè)指令執(zhí)行的直接結(jié)果。在本文中,將以上三種中斷統(tǒng)稱為中斷。一般來說,一次中斷從發(fā)生到處

5、理結(jié)束可以分為中斷檢測、中斷轉(zhuǎn)移和中斷處理三個(gè)階段,以下依次討論其中的可靠性問題。2.2 中斷檢測中的可靠性問題對于中斷檢測的基本要求是準(zhǔn)確及時(shí)檢測所發(fā)生的中斷,并將檢測到的中斷遞交中斷轉(zhuǎn)移單元。這里所涉及的安全問題主要是不會(huì)遺漏發(fā)生的中斷,不因干擾而誤報(bào)錯(cuò)誤的中斷。對于前者,要求中斷檢測單元具有一定的檢測速度,并且在遞交中斷時(shí)如果中斷轉(zhuǎn)移單元處于忙碌狀態(tài),需要中斷檢測單元具有保存所發(fā)生的中斷并可延遲提交的能力。對于后者,一般外部中斷管腳在噪音干擾下可能有短時(shí)間的跳變,如果采用簡單的電平檢測或者邊沿檢測就會(huì)產(chǎn)生誤報(bào)中斷的情況。一種解決的方法是采用邊沿檢測,但是要求邊沿兩側(cè)的低電平和高電平持續(xù)若

6、干周期。另一種解決的方法是采用電平檢測,如低電平有效,但是要求該電平必須持續(xù)若干周期。這樣,通過加寬檢測范圍的方法,就可以濾除部分噪聲干擾的影響,減少誤報(bào)中斷的幾率,維持系統(tǒng)正常的運(yùn)行。2.3 中斷轉(zhuǎn)移中的可靠性問題中斷發(fā)生之后,中斷檢測單元會(huì)觸發(fā)中斷轉(zhuǎn)移單元,中斷轉(zhuǎn)移單元應(yīng)該中斷當(dāng)前任務(wù)的運(yùn)行,轉(zhuǎn)向中斷處理程序。對于簡單的中斷機(jī)制而言,中斷轉(zhuǎn)移過程可能只有一個(gè)周期或者幾個(gè)周期;但是,對于復(fù)雜的中斷機(jī)制而言,中斷轉(zhuǎn)移過程可能需要上百個(gè)周期,如x86微處理器中的某些中斷轉(zhuǎn)移即是如此。所以,中斷轉(zhuǎn)移中的安全問題主要是必須保證中斷轉(zhuǎn)移的完整性,或者中斷轉(zhuǎn)移的不可中斷性,否則,系統(tǒng)狀態(tài)將進(jìn)入一種未知的

7、狀態(tài)。一種解決方法是在中斷轉(zhuǎn)移的過程中將中斷轉(zhuǎn)移單元置于忙碌狀態(tài),中斷檢測單元應(yīng)停止中斷的提交。2.4 中斷處理中的可靠性問題中斷處理中面臨的安全問題主要是正確的維護(hù)系統(tǒng)狀態(tài),包括處理器狀態(tài)(如寄存器等)和系統(tǒng)表狀態(tài)等。中斷處理可以使用兩種方式,一種是發(fā)生中斷的任務(wù)中的某段程序來進(jìn)行處理,另一種是采用另外一個(gè)獨(dú)立的任務(wù)來進(jìn)行處理。前者只需要在同一任務(wù)內(nèi)進(jìn)行控制轉(zhuǎn)移,只需保存中斷處理程序使用的部分寄存器,比較簡單,轉(zhuǎn)移過程也比較好;后者需要發(fā)生任務(wù)切換,可以保存處理器的全部寄存器狀態(tài),對中斷具有較好的隔離性,但是需要花費(fèi)的時(shí)鐘周期數(shù)目較多。為了兼顧轉(zhuǎn)移的效率和處理的安全程度,有必要對全部中斷進(jìn)行

8、合理的分類,對于非嚴(yán)重的中斷采用當(dāng)前任務(wù)處理,對于嚴(yán)重的中斷必須采用獨(dú)立的任務(wù)進(jìn)行處理。如果對于系統(tǒng)的性能要求較高,可以為中斷處理程序?qū)iT保留一些寄存器使用,這些保留的寄存器在非中斷處理程序中是不可見的。中斷處理時(shí)另外一個(gè)安全問題和中斷轉(zhuǎn)移類似,即正在執(zhí)行中斷處理程序又發(fā)生了另外的中斷,中斷處理程序應(yīng)該繼續(xù)執(zhí)行還是響應(yīng)新的中斷。如果肓目的忽略中斷繼續(xù)執(zhí)行,可能錯(cuò)過對某些中斷的處理時(shí)機(jī);如果及時(shí)響應(yīng)新發(fā)生的中斷,多次中斷嵌套可能導(dǎo)致堆棧溢出等問題。一種解決方法是對中斷分級(jí),高優(yōu)先級(jí)中斷可以中斷低優(yōu)先級(jí)的中斷處理程序,但是低優(yōu)先級(jí)中斷不可中斷高優(yōu)先級(jí)的中斷處理程序;同時(shí),對中斷分類,限制某些嚴(yán)重中斷嵌套的層數(shù),而不限制非嚴(yán)重中斷的嵌套層數(shù)。3 “龍騰S1”片上系統(tǒng)中的中斷機(jī)制可靠性設(shè)計(jì)在西北工業(yè)大學(xué)最近實(shí)現(xiàn)的一種面向工業(yè)控制的SoC芯片“龍騰S1”中,所實(shí)現(xiàn)的中斷機(jī)制嚴(yán)格的考慮了安全性問題?!褒堯vSl”片卜系統(tǒng)應(yīng)用于工業(yè)控制的嵌入式應(yīng)用中,內(nèi)含32位嵌入式微處理器、PC104總線控制器、SDRAM控制、電子盤控制器和串并口控制器等,是PC104系統(tǒng)的高度集成?!褒堯vS1”支持256個(gè)硬件中斷和軟件中斷,中斷的整體分布和主要屬性如表1所示。由表1可以看到,除NMI之外,中斷分為三種類型:故障、陷阱和中止。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論