<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 外部中斷處理和內(nèi)部中斷處理的差異性

          外部中斷處理和內(nèi)部中斷處理的差異性

          作者: 時(shí)間:2013-08-29 來源:網(wǎng)絡(luò) 收藏

          mtsr $r0, $IVB !write $IVB

          INTC相關(guān)程序片斷:

          INTC通常支持不同的中斷觸發(fā)方式,包含Interrupt Masking、Interrupt Trigger Mode、Interrupt Trigger Level …等。在開始使用每個(gè)中斷來源之前,這些控制選項(xiàng)都必須在INTC上設(shè)定正確。

          3. 模擬結(jié)果

          將上述的Reference Design整合完成后,搭配測(cè)試程序進(jìn)行仿真,并藉由波形圖來觀察不同中斷模式下,相關(guān)中斷訊號(hào)線的變化。

          3.1 IVIC模擬結(jié)果

          在IVIC仿真環(huán)境中,主要測(cè)試程序如下:

          l 由GPIO觸發(fā)一中斷,并將中斷傳遞給CPU

          l CPU接收到中斷后,執(zhí)行相對(duì)應(yīng)的中斷處理程序

          仿真結(jié)果如圖表11所示,當(dāng)GPIO觸發(fā)中斷后,將中斷直接傳遞給CPU,在CPU端的int_req訊號(hào)線會(huì)觸發(fā),表示有中斷發(fā)生。當(dāng)CPU收到中斷訊號(hào)后,接著會(huì)處理相對(duì)應(yīng)的中斷處理程序。

          QQ截圖20130808131850.jpg

          3.2 EVIC模擬結(jié)果

          在EVIC仿真環(huán)境中,主要測(cè)試程序如下:

          l 由GPIO觸發(fā)一中斷

          l 此時(shí)INTC設(shè)罝為EVIC模式,并將中斷訊號(hào)和相關(guān)溝通訊號(hào)傳遞給CPU

          l CPU接收到中斷后,會(huì)將響應(yīng)訊號(hào)拉起,告知INTC收到該中斷,并執(zhí)行相對(duì)應(yīng)的中斷處理程序

          仿真結(jié)果如圖表12所示,當(dāng)GPIO觸發(fā)中斷后,INTC將中斷和相關(guān)溝通訊號(hào)(ireqval)傳遞給CPU,在CPU端的int_req訊號(hào)線和evic_ireqval訊號(hào)線會(huì)觸發(fā),表示有中斷發(fā)生。當(dāng)CPU收到中斷訊號(hào)后,會(huì)將evic_ireqack訊號(hào)線拉起,告知INTC收到中斷。仿真結(jié)果如同章節(jié)1.2和圖表5所論述。

          外部中斷處理和內(nèi)部中斷處理的差異性

          結(jié)語

          在AndesCore? N968A-S 所提供的兩種中斷模式里,其中的IVIC模式使用CPU內(nèi)的中斷控制器來處理中斷,此模式對(duì)用戶來說,只要將中斷來源和CPU端的中斷訊號(hào)連接即可,相當(dāng)容易整合。若用戶所設(shè)計(jì)的系統(tǒng)里,中斷來源數(shù)目超過IVIC模式所支持,或者系統(tǒng)需要更復(fù)雜的優(yōu)先權(quán)選擇時(shí),則可選用EVIC模式。在EVIC模式下,用戶需額外設(shè)計(jì)外部中斷控制器,并整合相關(guān)溝通訊號(hào)。因此,用戶可根據(jù)本身系統(tǒng)的復(fù)雜度和整合的難易度,來選擇適合的中斷處理模式。


          上一頁 1 2 3 下一頁

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();