新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ARM9中斷與PC

        ARM9中斷與PC

        作者: 時間:2016-11-22 來源:網絡 收藏
        1, 假設當前是PC,PC-4,PC-8。當前"取指PC"=當前PC,當前"譯碼PC"=當前PC-4,

        當前"執行PC"=當前PC-8。例如,如下圖所示,當前“取值PC”=16,當前“解碼PC”=12,當前“執行PC”=8。

        本文引用地址:http://www.104case.com/article/201611/320028.htm

        2, 發生IRQ異常,執行保護操作,LR中保存由于FIQ或IRQ占先而沒有被執行完的指令的地址的下一條地址(LR中保存的是當前PC的值,也就是取值的指令地址),即LR指向了指令地址=16的指令,但指令地址=12的指令還沒有執行完,中斷返回后還要繼續執行

        3, 進入中斷服務程序

        4, 中斷返回前,對LR處理,LR=LR-4,指向之前已譯碼但沒被執行的指令的地址(如果返回的時候直接返回PC,那么中間就有一個指令沒有執行)

        5, 返回

        注:ARM9是五級流水,圖中只畫出了三級流水。



        關鍵詞: ARM9中斷P

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 成安县| 达拉特旗| 平南县| 五常市| 望都县| 乳山市| 陕西省| 射洪县| 沾益县| 宾川县| 商都县| 襄垣县| 耒阳市| 永春县| 临安市| 遂平县| 衢州市| 商水县| 崇州市| 将乐县| 庆安县| 伊宁县| 沧州市| 万源市| 霍林郭勒市| 五原县| 米易县| 土默特左旗| 皮山县| 琼海市| 北京市| 滁州市| 安岳县| 综艺| 勃利县| 荣成市| 仪陇县| 渭南市| 微博| 同心县| 尼玛县|