中斷在TMS320C54x系列DSP中的應(yīng)用
中斷在TMS320C54x系列DSP中的應(yīng)用
南京東南大學(xué)信息處理與應(yīng)用工程研究中心(210096) 朱繼紅 于東海 鄒采榮
摘 要:詳細(xì)分析了TMS320C54x系列DSP的中斷機制,以及在擴(kuò)展地址模式下中斷控制所具有的一些特點,并給出了DSP/BIOS下中斷的管理。
關(guān)鍵詞:中斷 中斷向量表 TMS320C54x DSP/BIOS DSP
中斷是嵌入式芯片的靈魂,這是因為多數(shù)嵌入式系統(tǒng)對實時性都有很高的要求,即對出現(xiàn)事件的響應(yīng)要極為迅速。中斷與軟件查詢方式相比有著更高的執(zhí)行效率。在TI公司的TMS320C54x系列(以下簡稱C54x系列)DSP中,同樣也提供了很好的中斷機制。
1 C54x中的中斷機制
中斷信號實質(zhì)上是由硬件或者是軟件驅(qū)動的信號,它能使DSP暫停正在執(zhí)行的程序并進(jìn)入中斷服務(wù)程序(ISR)。在最典型的DSP系統(tǒng)中,如果A/D轉(zhuǎn)換器需要送數(shù)據(jù)到DSP中,或者D/A轉(zhuǎn)換器需要從DSP中取走數(shù)據(jù),都是通過硬件中斷向DSP發(fā)出請求的。
C54x系列DSP支持軟件中斷和硬件中斷。軟件中斷是由指令(INTR、TRAP、RESET)觸發(fā)的,硬件中斷是由外圍器件觸發(fā)的。硬件中斷實際上又分為兩類:一類是由DSP的片外外設(shè)(如A/D轉(zhuǎn)換器)觸發(fā)的,另外一類是由DSP的片內(nèi)外設(shè)(如定時器中斷)觸發(fā)的。硬件中斷又有優(yōu)先級的區(qū)分,這是為了處理同一時刻有多個硬件中斷源觸發(fā)中斷的情況。硬件中斷的種類和優(yōu)先級請參看具體使用的芯片資料。
如果按照可屏蔽情況分類,中斷又可分為可屏蔽中斷(C54x至多支持16個)和不可屏蔽中斷??善帘沃袛嗍躍T1寄存器中的INTM位和IMR寄存器中相應(yīng)位的影響。當(dāng)INTM=0時,IMR中某位為1,則開放相應(yīng)的中斷。其實,在C54x中硬件中斷并不一定要由外圍器件觸發(fā),它同樣可以由指令I(lǐng)NTR、TRAP觸發(fā),并且不受INTM的限制。有一點需要引起注意的是:指令RESET復(fù)位和硬件RS復(fù)位對IPTR和外圍電路初始化是不相同的。硬件復(fù)位時IPTR總是被置為0x1FF,軟件復(fù)位時則不會修改當(dāng)前IPTR的值。C54x的中斷處理過程分為三個階段:
?、僦袛嗾埱???梢杂糜布骷蛘哕浖噶钫埱笾袛唷H绻埱蟮闹袛嗍强善帘沃袛?,則IFR寄存器中相應(yīng)的位被置為1,而不管中斷是否會被響應(yīng)。
?、谥袛囗憫?yīng)。對于軟件中斷和不可屏蔽中斷,CPU是立即響應(yīng)的。對于可屏蔽中斷,要滿足下列條件才能響應(yīng):
評論