經(jīng)驗(yàn)積累:ARM處理器中如何判別IRQ與FIQ中斷?
發(fā)布時(shí)間:2015-05-18 責(zé)任編輯:sherry
【導(dǎo)讀】本篇文章主要對(duì)ARM中IRQ和FIQ進(jìn)行了簡(jiǎn)單的介紹,而后對(duì)這兩者的區(qū)別進(jìn)行了相近的分析。希望大家在閱讀過(guò)本篇文章之后能夠?qū)RM處理器中的中斷知識(shí)有進(jìn)一步的了解。
ARM可以說(shuō)是歷史上最成功的處理器之一,其之所以能夠暢銷,主要原因是其比其他同類32位代碼能夠節(jié)省將近35%的電能,但卻能保留住所有的優(yōu)勢(shì)。得益于ARM的廣泛應(yīng)用,針對(duì)其研發(fā)的技術(shù)與設(shè)計(jì)不在少數(shù)。ARM當(dāng)中有兩種終端技術(shù),F(xiàn)IQ與IRQ。這兩種中斷技術(shù)均是ARM能夠支持的類型,并且提供對(duì)應(yīng)的叫做FIQ和IRQ處理器模式(ARM有7種處理模式)。
通常來(lái)說(shuō),在芯片的中斷控制器當(dāng)中,設(shè)計(jì)者能夠自行決定與控制器相連的中斷輸入是FIQ還是IRQ。所以一個(gè)中斷是可以指定為FIQ或者IRQ的,為了達(dá)到合理的效果,以及要求系統(tǒng)更快響應(yīng),自身處理所耗時(shí)間也很短的中斷設(shè)置為FIQ,否則就設(shè)置了IRQ。
如果該中斷設(shè)置為了IRQ,那么當(dāng)該中斷產(chǎn)生的時(shí)候,中斷處理器通過(guò)IRQ請(qǐng)求線告訴ARM,ARM得知IRQ中斷的存在,然后ARM切換到IRQ模式運(yùn)行。類似的如果該中斷設(shè)置為FIQ,那么當(dāng)該中斷產(chǎn)生的時(shí)候,中斷處理器通過(guò)FIQ請(qǐng)求線告訴ARM,ARM就知道有個(gè)FIQ中斷,然后切換到FIQ模式運(yùn)行。
通過(guò)實(shí)際操作,能夠發(fā)現(xiàn)FIQ比IRQ快,這是為什么呢?原因主要有四點(diǎn)。
ARM的FIQ模式提供了更多的banked寄存器,r8到r14還有SPSR,而IRQ模式就沒(méi)有那么多,R8、R9,R10、R11、R12對(duì)應(yīng)的banked的寄存器就沒(méi)有,這就意味著在ARM的IRQ模式下,中斷處理程序自己要保存R8到R12這幾個(gè)寄存器,然后退出中斷處理時(shí)程序要恢復(fù)這幾個(gè)寄存器,而FIQ模式由于這幾個(gè)寄存器都有banked寄存器,模式切換時(shí)CPU自動(dòng)保存這些值到banked寄存器,退出FIQ模式時(shí)自動(dòng)恢復(fù),所以這個(gè)過(guò)程FIQ比IRQ快。
FIQ比IRQ有更高優(yōu)先級(jí),如果FIQ和IRQ同時(shí)產(chǎn)生,那么FIQ先處理。
FIQ的中斷向量地址在0x0000001C,而IRQ的在0x00000018。(也有的在FFFF001C以及FFFF0018),寫(xiě)過(guò)完整匯編系統(tǒng)的都比較明白這點(diǎn)的差別,18只能放一條指令,為了不與1C處的FIQ沖突,這個(gè)地方只能跳轉(zhuǎn),而FIQ不一樣,1C以后沒(méi)有任何中斷向量表了,這樣可以直接在1C處放FIQ的中斷處理程序,由于跳轉(zhuǎn)的范圍限制,至少少了一條跳轉(zhuǎn)指令。
IRQ和FIQ的響應(yīng)延遲有區(qū)別。
IRQ的響應(yīng)并不及時(shí),從Verilog仿真來(lái)看,IRQ會(huì)延遲幾個(gè)指令周期才跳轉(zhuǎn)到中斷向量處,看起來(lái)像是在等預(yù)取的指令執(zhí)行完。FIQ的響應(yīng)不清楚,也許比IRQ快。
中斷延遲:從外部中斷請(qǐng)求信號(hào)發(fā)出到執(zhí)行對(duì)應(yīng)的中斷服務(wù)程序ISR的第一條指令所需要的時(shí)間。通過(guò)軟件程序設(shè)計(jì)來(lái)縮短中斷延遲的方法有:中斷優(yōu)先級(jí)和中斷嵌套。
特別推薦
- 5mW待機(jī)功耗突圍戰(zhàn)!AC-DC電源待機(jī)功耗逼近物理極限
- 華為、地平線、大眾等企業(yè)引領(lǐng)汽車技術(shù)變革,來(lái)AMTS 2025了解更多汽車行業(yè)發(fā)展前景
- 關(guān)稅風(fēng)暴下車企們的生存法則:漲價(jià)+清庫(kù)+轉(zhuǎn)產(chǎn)三軸突圍
- 從智能座艙到駕控大腦:AMTS帶你暢游上海車展黑科技海洋
- 智能無(wú)線工業(yè)傳感器設(shè)計(jì)完全指南
- 硅光技術(shù)新突破:意法半導(dǎo)體PIC100開(kāi)啟數(shù)據(jù)中心高能效時(shí)代
- 新唐科技以AI、新能源、汽車電子新品引領(lǐng)行業(yè)未來(lái),巡回發(fā)布會(huì)完美收官!
技術(shù)文章更多>>
- 新唐科技以AI、新能源、汽車電子新品引領(lǐng)行業(yè)未來(lái),巡回發(fā)布會(huì)完美收官!
- 硅光技術(shù)新突破:意法半導(dǎo)體PIC100開(kāi)啟數(shù)據(jù)中心高能效時(shí)代
- 從智能座艙到駕控大腦:AMTS帶你暢游上海車展黑科技海洋
- 關(guān)稅風(fēng)暴下車企們的生存法則:漲價(jià)+清庫(kù)+轉(zhuǎn)產(chǎn)三軸突圍
- 華為、地平線、大眾等企業(yè)引領(lǐng)汽車技術(shù)變革,來(lái)AMTS 2025了解更多汽車行業(yè)發(fā)展前景
技術(shù)白皮書(shū)下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門(mén)搜索
汽車連接器
墻壁開(kāi)關(guān)
翹板開(kāi)關(guān)
驅(qū)動(dòng)模塊
燃料電池
繞線電感
繞線設(shè)備
熱繼電器
熱敏電阻
熔斷器
融斷電阻
柔性PCB
銳迪科
瑞薩
賽普拉斯
三端穩(wěn)壓管
三極管
色環(huán)電感
上海豐寶
攝像頭
生產(chǎn)測(cè)試
聲表諧振器
聲傳感器
濕度傳感器
石英機(jī)械表
石英石危害
時(shí)間繼電器
時(shí)鐘IC
世強(qiáng)電訊
示波器