新聞中心

        ARM中斷處理類型

        作者: 時(shí)間:2012-11-22 來源:網(wǎng)絡(luò) 收藏
          在正常的程序執(zhí)行流程發(fā)生暫時(shí)的停止時(shí),稱為中斷,例如,處理一個(gè)外部的。在處理異常之前,當(dāng)前處理器的狀態(tài)必須保留,這樣當(dāng)異常處理完成之后,當(dāng)前程序可以繼續(xù)執(zhí)行。處理器允許多個(gè)異常同時(shí)發(fā)生,它們將會(huì)按固定的優(yōu)先級(jí)進(jìn)行處理。

          中斷與堆棧設(shè)置和ARM體系結(jié)構(gòu)緊密相關(guān),ARM是一種支持多任務(wù)操作的系統(tǒng)內(nèi)核,內(nèi)部結(jié)構(gòu)完全適應(yīng)多任務(wù)應(yīng)用。ARM內(nèi)核支持7種中斷,不同的中斷處于不同的處理模式(如表1所示),具有不同的優(yōu)先級(jí),而且每個(gè)中斷都有固定的中斷入口地址。當(dāng)一個(gè)中斷發(fā)生時(shí),相應(yīng)的R14(LR)存儲(chǔ)中斷返回地址,SPSR存儲(chǔ)狀態(tài)寄存器CPSR的值。

          由于ARM內(nèi)核支持流水線工作,LR寄存器存儲(chǔ)的地址可能是發(fā)生中斷處后面指令的地址,所以不同的中斷處理完成后,必須將LR寄存器值經(jīng)過處理后再寫入R15(PC)寄存器。

          表1 ARM的7種中斷

          ARM體系結(jié)構(gòu)所支持的異常及具體含義如表2所示。

          表2 ARM所支持的異常及其具體含義

        續(xù)表



        評(píng)論


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

        關(guān)閉
        主站蜘蛛池模板: 丘北县| 四会市| 和硕县| 双桥区| 渭源县| 阳江市| 潜山县| 安仁县| 弥勒县| 离岛区| 沙坪坝区| 高雄县| 卢龙县| 农安县| 清流县| 舞钢市| 常德市| 曲阜市| 巫山县| 新密市| 唐河县| 阿拉善盟| 屏南县| 东山县| 泰来县| 巴楚县| 灵山县| 滦南县| 东平县| 辉南县| 隆子县| 盖州市| 昭平县| 怀柔区| 孝感市| 中超| 舟山市| 始兴县| 榕江县| 肃南| 佛教|