新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ARM的工作模式和狀態

        ARM的工作模式和狀態

        作者: 時間:2016-11-09 來源:網絡 收藏
        ARM的兩種工作狀態:
        ARM狀態: 32位的字對齊,運行ARM指令
        Thumb狀態:16位的半字對齊的Thumb指令
        注:CPU在兩種狀態中切換時并不影響CPU的工作模式和相應的寄存器中的內容。

        ARM的7種工作模式
        3種正常運行態:
        用戶模式(User):大部分任務(比如用戶應用程序)執行在這種模式。
        系統模式(System):運行操作系統的特權任務。
        管理模式(Supervisor):當復位或者軟中斷指令執行時將會進入這種模式。
        2種中斷模式
        快速中斷模式(FIQ--First Interrupt Request):當一個高優先級中斷(FIQ)產生時會進入這種模式。
        外部中斷模式(IRQ--Interrupt Request):當一個低優先級(Normal)中斷產生時進入這種模式。
        注:FIQ和IRQ的區別---FIQ模式必須盡快處理,處理結束后離開這個模式;IRQ模式可以被FIQ模式中斷,但IRQ不能中斷FIQ模式;為使FIQ模式響應更快,FIQ模式具有更多的影子(Shadow)寄存器(硬件自動完成相應寄存器的數據備份)。ARM的FIQ模式提供了更多的banked寄存器,r8到r14還有SPSR,而IRQ模式就沒有那么多,R8,R9,R10,R11,R12對應的banked的寄存器就沒有,這就意味著在ARM的IRQ模式下,中斷處理程序自己要保存R8到R12這幾個寄存器,然后退出中斷處理時程序要恢復這幾個寄存器,而FIQ模式由于這幾個寄存器都有banked寄存器,模式切換時CPU自動保存這些值到banked寄存器,退出FIQ模式時自動恢復,所以這個過程FIQ比IRQ快。
        2種異常模式
        數據訪問終止模式(Abort):當數據或指令預取終止時進入這種模式。
        未定義指令終止模式(Undef):當執行未定義指令時進入這種模式。
        對于Cortex A系列的ARM處理器來說,還有一種特有的Minitor模式:
        1種特有模式:
        Monitor模式:是為了安全而擴展出的用于執行安全監控代碼的模式,也是一種他特權模式。


        關鍵詞: ARM工作模式狀

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 那坡县| 浦城县| 十堰市| 库伦旗| 南丰县| 丹凤县| 长葛市| 息烽县| 光泽县| 盐源县| 康马县| 高清| 林口县| 凤山县| 永福县| 昭觉县| 资兴市| 常德市| 赣州市| 河间市| 通江县| 荔浦县| 郑州市| 邮箱| 鹤峰县| 海门市| 轮台县| 边坝县| 绩溪县| 黄大仙区| 光山县| 房产| 靖江市| 云阳县| 肃南| 大兴区| 中阳县| 颍上县| 岑溪市| 县级市| 青川县|