在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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>

            新聞中心

            ARM中斷VIC/GIC

            作者: 時間:2016-11-10 來源:網絡 收藏
            1. CPSR定義

            31 30 29 28 27 7 6 5 4 3 2 1 0

            本文引用地址:http://www.biyoush.com/article/201611/317193.htm

            N Z C V Q I F T M4 M3 M2 M1 M0

            N:當前指令運算結果的31位數(shù)值,當有符號數(shù)運算時候,N=1表示結果為負數(shù),N=0表示為零或者正數(shù);

            Z:Z=1表示運算結果為0;cmp指令執(zhí)行的時候,Z=1表示比較的兩個數(shù)相等;

            C:溢出指示……

            I:I=1 禁止IRQ中斷;

            F:F=1 禁止FIQ中斷;

            T:T=1 thumb;指示正在執(zhí)行的是arm or thumb

            M4-M0:控制處理區(qū)所處的模式,七種模式之一

            =============================
            VIC : Vectored Interrupt Controller
            1. ARM Core有2個中斷輸入: IRQ / FIQ
            VIC負責管理外設部件的中斷信號,是外設中斷源和ARM CPU之間的Bridge.

            VIC具有32個中斷請求輸入,可將其編程分為3類:

            (1) FIQ,

            FIQ(fast interrpt request)快速中斷請求要求具有最高優(yōu)先級。如果分配給FIQ的請求多于一個,VIC將中斷請求相或后向ARM處

            理器產生FIQ信號。當只有一個中斷被分配為FIQ時可實現(xiàn)最短的FIQ等待,但如果分配給IFIQ級的中斷多于1個,F(xiàn)IQ服務程序需

            要讀取FIQ狀態(tài)寄存器來識別產生中斷請求的FIQ中斷源!

            (2) 向量IRQ

            向量IRQ具有中等優(yōu)先級。該級別可分別32個請求中斷的16個。32個請求種的任意一個都可分配到16個向量IRQ slot中的任意一

            個,其中slot0具有最高優(yōu)先級

            (3) 非向量IRQ。
            非向量IRQ的優(yōu)先級最低

            2. 向量中斷、非向量中斷

            (1) 向量中斷就是不同的中斷有不同的入口地址,

            向量中斷實時性好,非向量中斷簡單。向量者,矢量也,即指方向,門路。
            向量中斷------由硬件提供中斷服務程序入口地址;

            VIC的vecaddr中存放的就是真正的中斷服務程序的地址,直接取出來跳過去執(zhí)行就可以了。所以向量中斷較快。

            向量中斷模式用于RESET、NMI、異常處理。

            當向量中斷產生時,控制器直接將PC賦值,如跳劌x0000000d處,而在0x0000000d地址處通常放置

            ISR服務程序地址LDR PC, =ISR_HANDLER


            (2) 非向量中斷就只有一個入口地址,進去了在判斷中斷標志來識別具體是哪個中斷。

            非向量中斷------由軟件件提供中斷服務程序入口地址


            非向量中斷發(fā)生后,VIC中的vecaddr中會存放一個默認中斷服務程序的地址,這個程序是被所有的非向量中斷公用的,

            他執(zhí)行的作用就是判斷究竟是發(fā)生了那個非向量中斷,然后再轉向真正要被執(zhí)行的中斷服務程序。

            其實,所有的非向量中斷可以看成是一個向量中斷。

            非向量中斷模式,有一個寄存器標識位,跳轉到統(tǒng)一的函數(shù)地址,此函數(shù)通過判別寄存器標識位和優(yōu)

            先級關系進行中斷處理
            快速中斷FIQ也可以看作是一個向量中斷,只不過不需要從VIC的vecaddr中取地址,而是直接跳到相應地址執(zhí)行,

            可以看作是一個指定了向量地址的中斷。

            非向量中斷模式處理方式是一種傳統(tǒng)的中斷處理方法,當系統(tǒng)產生中斷的時候,系統(tǒng)將INTPND寄存器

            中對應標志位置位,然后跳轉到位于x18處的統(tǒng)一中斷函數(shù)中;該函數(shù)通過讀取INTPND寄存器中對應

            標志位來判斷中斷源,并根據(jù)優(yōu)先級關系再跳到對應中斷源的處理代碼中處理中斷


            3. 為什么會有向量IRQ和非向量IRQ?

            44B0X 是基于ARM7TDMI的芯片。ARM系列內核對于IRQ中斷的處理就是通過查詢中斷標志寄存器來確

            定中斷源,并執(zhí)行對應的中斷服務程序,這也就是非向量中斷處理方法了?

            4B0X的廠家三星為了加快IRQ中斷的響應速度,在此基礎上添加了另外一種方法,其實也就是單片機

            都采用的固定中斷向量地址的辦法,很明顯這種方法減少了中斷響應的時間?

            向量中斷模式是當CPU讀取位于0x18處的IRQ中斷指令的時候,系統(tǒng)自動讀取對應于該中斷源確定地址上的指令取代0x18處的指令,通過跳轉令系統(tǒng)直接跳轉到對應地址函數(shù)中,節(jié)省了中斷處理時間提高了中斷處理速度。



            關鍵詞: ARM中斷VICGI

            評論


            技術專區(qū)

            關閉