處理開/關中斷
發布時間:2014/6/8 21:05:55 訪問次數:1536
CPU在響應中斷的過程中,SAF-C517A-LN為了避免有新的中斷請求破壞本次中斷的現場而產生混亂,所以硬件自動關中斷,而進入中斷服務后,可根據具體情況來處理開/關中斷。CPU在中斷服務的過程中應新的中斷源的請求,暫時中斷現行中斷服務,轉去處理新的中斷請求,稱為中斷嵌套或多重中斷。一般來說,在多重中斷系統中,可以在保護現場后就進行開中斷,以利于嵌套的進行,如圖6-5 (a)所示。如果不允許中斷嵌套,即在單重中斷系統中,則必須等到中斷處理完畢,在中斷返回之前才能進行開中斷,以便不會出現嵌套的現象,如圖6-5 (b)所示。
圖6-5多重中斷和單重中斷服務程序流程
I/O服務是中斷服務程序的目的所在,即完成CPU和I/O設備的信息交換。不同的中斷源,其中斷服務操作的內容是不同的,但一般操作比較簡單,往往幾條指令即可完成。
恢復現場
恢復現場是保護現場的逆過程,在中斷返回前一般用出棧指令將保護的數據。恢復給原寄存器。
中斷返回
中斷返回是在中斷服務程序最后,用中斷退回指令來完成。此時,CPU將堆入堆棧中的斷點地址彈出到程序計數器PC。
CPU在響應中斷的過程中,SAF-C517A-LN為了避免有新的中斷請求破壞本次中斷的現場而產生混亂,所以硬件自動關中斷,而進入中斷服務后,可根據具體情況來處理開/關中斷。CPU在中斷服務的過程中應新的中斷源的請求,暫時中斷現行中斷服務,轉去處理新的中斷請求,稱為中斷嵌套或多重中斷。一般來說,在多重中斷系統中,可以在保護現場后就進行開中斷,以利于嵌套的進行,如圖6-5 (a)所示。如果不允許中斷嵌套,即在單重中斷系統中,則必須等到中斷處理完畢,在中斷返回之前才能進行開中斷,以便不會出現嵌套的現象,如圖6-5 (b)所示。
圖6-5多重中斷和單重中斷服務程序流程
I/O服務是中斷服務程序的目的所在,即完成CPU和I/O設備的信息交換。不同的中斷源,其中斷服務操作的內容是不同的,但一般操作比較簡單,往往幾條指令即可完成。
恢復現場
恢復現場是保護現場的逆過程,在中斷返回前一般用出棧指令將保護的數據。恢復給原寄存器。
中斷返回
中斷返回是在中斷服務程序最后,用中斷退回指令來完成。此時,CPU將堆入堆棧中的斷點地址彈出到程序計數器PC。