在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > ARM處理器模式介紹和模式切換

            ARM處理器模式介紹和模式切換

            作者: 時間:2016-11-28 來源:網絡 收藏
            ARM體系結構支持7種處理器模式:
            用戶模式:正常程序工作模式,不能直接切換到其它模式。
            快中斷模式:支持高速數據傳輸及通道處理。FIR異常響應時,進入此模式
            中斷模式:通用中斷處理。IRQ異常響應時,進入此模式。
            管理模式:操作系統(tǒng)保護代碼,系統(tǒng)復位和軟件中斷時,進入此模式。
            中止模式:支持虛擬內存,存儲器保護。
            未定義模式:支持硬件協(xié)處理器和軟件仿真。未定義指令異常響應時,進入此模式。
            系統(tǒng)模式:用于支持OS的特權任務。與用戶模式類似,但可以直接切換到其它模式。
            除用戶模式外,其它都為特權模式。某些ARM內部寄存器和一些片內外設在硬件設計上只允許特權模式下訪問。特權模式可以自由切換處理器模式。但用戶模式不能直接切換到別的模式。


            ARM7TDMI內核包含1個CPSR和5個供異常處理程序使用的SPSR.
            ARM7TDMI內核所有處理器狀態(tài)都保存在CPSR中。
            CPSR包含:
            4個條件代碼標志。
            2個中斷禁止位。
            5個隊當前處理器模式進行編碼的位。
            1個用于只是當前執(zhí)行指令(ARM還是Thumb)的位。

            每個異常模式(快中斷模式,中斷模式,管理模式,中止模式,未定義模式)還帶有一個程序狀態(tài)保存寄存器 SPSR。用于保存任務在異常發(fā)生之前的CPSR.

            4個條件代碼標志:
            N:運算結果的B31值。
            Z:指令結果為0時,Z=1(通常表示比較結果相等) . 否則Z=0.
            C: 使用加法運算時,B31位產生進位,C=1.否則C=0. 使用減法運算時,b31借位時,C=0,否則C=1。
            V: 加減運算時,有符號溢出,V=1,否則V=0。

            2個中斷禁止位:
            I: 置位,IRQ 中斷被禁止。
            F:置位,FIQ中斷被禁止。

            1個用于只是當前執(zhí)行指令(ARM還是Thumb)的位:
            置位:表示處理器在Thumb.
            清零:處理器在ARM。

            5個隊當前處理器模式進行編碼的位:
            10000:用戶。
            10001:快中斷。
            10010:中斷
            10011:管理
            10111:中止
            11011:未定義
            11111:系統(tǒng)。
            注意,在不同模式下,可見的寄存器不同。


            使用MRS指令可以讀取狀態(tài)寄存器指令。
            MRS R1, CPSR
            MRS R2,SPSR

            使用MSR指令,可以寫狀態(tài)寄存器。

            例1:使能IRQ中斷:
            MRS R0, CPSR //把cpsr內容放到Ro中
            BIC R0, R0, #0x80 //將I 位清除。IRQ Enable
            MSR CPSR_c ,R0
            MOV PC, LR

            注意:AXD中的Processor Registers項中,CPSR,SPSR顯示模式如下:

            nzCvqIFt_SVC
            nzcv:分別表示4個標志位。小寫字母表示0 , 大寫字母表示1
            IFt分別表示IRQ,FIQ,和執(zhí)行指令標志位。
            SVC表示工作模式為:管理模式。


            評論


            技術專區(qū)

            關閉