91精品一区二区三区久久久久久_欧美一级特黄大片色_欧美一区二区人人喊爽_精品一区二区三区av

位置:51電子網 » 技術資料 » 其它綜合

ARM內核的中斷技術

發布時間:2007/8/29 0:00:00 訪問次數:908

    摘要:以ARM7TDMI處理器為例,詳細介紹ARM內核的三種中斷:常規中斷、快中斷和軟件中斷;結合應用,給出優化的中斷處理程序的ARM指令代碼,對電子設計人員有效大的參考價值。

    關鍵詞:ARM 中斷 快速 精簡指令系統

1 ARM7TDMI簡介

ARM7TDMI是一款經典的通用32位微處理器,采用精簡指令系統(RISC)和流水線結構。典型應用如GPS、PDA、雙向尋呼機、移動電話、板卡間高速通信等。

ARM7TDMI定義有7種工作模式,本文涉及到的有:用戶模式,程序正常運行時的模式;快中斷模式,處理器響應快中斷而進入的模式;中斷模式,處理響應常規中斷而進入的模式;監督模式,操作系統的保護模式。處理器響應軟件中斷時即進入監督模式。下面重點介紹ARM7TDMI的中斷特性。主要特性如表1所列。

表1 中斷特性表

向量地址 中斷類型 工作模式 優先級 返回地址
0x8 軟件中斷 SWI模式 6 pc-4
0x18 常規則中斷 IRQ模式 4 pc-8
0x1C 快中斷 FIQ模式 3 pc-8

ARM7TDMI具有常規中斷(IRQ)、快中斷(FIQ)和軟件中斷(SoftWare Interrupt)三種中方式。常規中斷和快中斷都是硬件中斷。

快中斷是為支持數據傳輸或快速數據通道而設計的,為快速處理快中斷。①快中斷被設為最高中斷優先級;②在快中斷模式增設了7個私有工作寄存器,從而避免了由于主工作寄存器數據的保存和恢復而帶來了額外開銷;③快中斷處理程序處于異常向量表的最后位置,因此可緊接異常向量表書寫快中斷處理程序,而不必進行程序跳轉操作,避免了刷新指令流水線和高速緩存。

軟件中斷是一種由用戶設置的同步中斷,由程序指令產生,不像硬件中斷那樣由外部事件觸發。軟件中斷允許運行在用戶模式的程序進入監督模式,并運行監督態下的函數。在ARM7TDMI的硬件調試系統中,應用程序可利用軟件中斷來申請半自主(semihosting)式操作,例如,打開主機中的一個文件、向調試通道發送一個字符等等(這些操作必須依賴主機中C程序庫才能運行,因此被稱為半自主式的)。利用軟件中斷機制,可以直觀和高效地仿真調試應用程序。另外,軟件中斷也可用于一般性的程序控制。

2 響應中斷和中斷返回

    摘要:以ARM7TDMI處理器為例,詳細介紹ARM內核的三種中斷:常規中斷、快中斷和軟件中斷;結合應用,給出優化的中斷處理程序的ARM指令代碼,對電子設計人員有效大的參考價值。

    關鍵詞:ARM 中斷 快速 精簡指令系統

1 ARM7TDMI簡介

ARM7TDMI是一款經典的通用32位微處理器,采用精簡指令系統(RISC)和流水線結構。典型應用如GPS、PDA、雙向尋呼機、移動電話、板卡間高速通信等。

ARM7TDMI定義有7種工作模式,本文涉及到的有:用戶模式,程序正常運行時的模式;快中斷模式,處理器響應快中斷而進入的模式;中斷模式,處理響應常規中斷而進入的模式;監督模式,操作系統的保護模式。處理器響應軟件中斷時即進入監督模式。下面重點介紹ARM7TDMI的中斷特性。主要特性如表1所列。

表1 中斷特性表

向量地址 中斷類型 工作模式 優先級 返回地址
0x8 軟件中斷 SWI模式 6 pc-4
0x18 常規則中斷 IRQ模式 4 pc-8
0x1C 快中斷 FIQ模式 3 pc-8

ARM7TDMI具有常規中斷(IRQ)、快中斷(FIQ)和軟件中斷(SoftWare Interrupt)三種中方式。常規中斷和快中斷都是硬件中斷。

快中斷是為支持數據傳輸或快速數據通道而設計的,為快速處理快中斷。①快中斷被設為最高中斷優先級;②在快中斷模式增設了7個私有工作寄存器,從而避免了由于主工作寄存器數據的保存和恢復而帶來了額外開銷;③快中斷處理程序處于異常向量表的最后位置,因此可緊接異常向量表書寫快中斷處理程序,而不必進行程序跳轉操作,避免了刷新指令流水線和高速緩存。

軟件中斷是一種由用戶設置的同步中斷,由程序指令產生,不像硬件中斷那樣由外部事件觸發。軟件中斷允許運行在用戶模式的程序進入監督模式,并運行監督態下的函數。在ARM7TDMI的硬件調試系統中,應用程序可利用軟件中斷來申請半自主(semihosting)式操作,例如,打開主機中的一個文件、向調試通道發送一個字符等等(這些操作必須依賴主機中C程序庫才能運行,因此被稱為半自主式的)。利用軟件中斷機制,可以直觀和高效地仿真調試應用程序。另外,軟件中斷也可用于一般性的程序控制。

2 響應中斷和中斷返回

-->
相關IC型號

熱門點擊

 

推薦技術資料

羅盤誤差及補償
    造成羅盤誤差的主要因素有傳感器誤差、其他磁材料干擾等。... [詳細]
版權所有:51dzw.COM
深圳服務熱線:13751165337  13692101218
粵ICP備09112631號-6(miitbeian.gov.cn)
公網安備44030402000607
深圳市碧威特網絡技術有限公司
付款方式


 復制成功!
通江县| 偏关县| 沽源县| 夏邑县| 若羌县| 三都| 图片| 肃北| 贵州省| 吉木乃县| 中超| 西宁市| 镇康县| 荥阳市| 台安县| 雅安市| 新昌县| 西宁市| 博兴县| 石景山区| 乐山市| 龙岩市| 博乐市| 建阳市| 荣昌县| 临沧市| 兰州市| 新密市| 夏津县| 平阳县| 禹城市| 长岛县| 苍山县| 龙江县| 陈巴尔虎旗| 页游| 岐山县| 大邑县| 临湘市| 句容市| 孟村|