新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM 中斷處理的安全性與高效性研究

ARM 中斷處理的安全性與高效性研究

作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò) 收藏


為了減少上述高優(yōu)先級(jí)中斷的延遲,特別引入了基于優(yōu)先級(jí)的可重人性中斷。它的原則是:在中斷服務(wù)程序中只允許高于本中斷的其他中斷源予以請(qǐng)求中斷,因此一個(gè)高優(yōu)先級(jí)的中斷將比一個(gè)低優(yōu)先級(jí)的中斷優(yōu)先得到服務(wù),這是大多數(shù)嵌入式系統(tǒng)中所必需的。采取的方法是,當(dāng)某優(yōu)先級(jí)中斷發(fā)生時(shí),在其中斷處理程序中可以使用屏蔽位將低于或等于該優(yōu)先級(jí)的中斷予以屏蔽。特別需要注意的是,在退出本中斷時(shí)要恢復(fù)原中斷寄存器的值。在此假設(shè)有這樣幾個(gè)中斷寄存器(其實(shí)ARM的很多處理器都有此類的中斷控制寄存器):IRQMask,中斷源屏蔽寄存器;IRQStatus,中斷標(biāo)志寄存器;IRQClear,清除中斷標(biāo)志寄存器。同時(shí)假設(shè)中斷的優(yōu)先級(jí)是從高位(bit31)到低位(bitO)遞減的,那么首先可以預(yù)定義如下的屏蔽變量值:




本程序的上下文保存與可重人中斷處理基本相同。增加的部分在于中斷屏蔽碼的查詢與設(shè)置,相應(yīng)的處理步驟可以參考圖4。

結(jié)語(yǔ)

本文重點(diǎn)研究了ARM處理器在多種中斷處理中上下文保存的安全與高效性,結(jié)合處理器結(jié)構(gòu)圖和程序代碼分析了各種中斷的處理方案。對(duì)ARM處理器具有通用價(jià)值而不受不同廠商硬件的局限。

文中涉及的程序源代碼都在ADSl.2開發(fā)環(huán)境和SEP4020開發(fā)評(píng)估板上測(cè)試過(guò)。實(shí)驗(yàn)證明此中斷處理技術(shù)是安全高效的。

參考文獻(xiàn)

1. Andrew N Sloss.Dominic Symes.Chris Wright.沈建華 ARM 嵌入式系統(tǒng)開發(fā)--軟件設(shè)計(jì)與優(yōu)化 2005
2. ARM公司 ARM Developer Guide
3. 文全剛 匯編語(yǔ)言程序設(shè)計(jì)--基于ARM體系結(jié)構(gòu) 2007
4. Labrosse Jean J.邵貝貝 嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II 2003

上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: ARM中斷處理安全性高效

評(píng)論


技術(shù)專區(qū)

關(guān)閉