[發(fā)明專(zhuān)利]中斷處理方法、裝置及中斷控制器有效
| 申請(qǐng)?zhí)枺?/td> | 201210305534.6 | 申請(qǐng)日: | 2012-08-24 |
| 公開(kāi)(公告)號(hào): | CN103631649B | 公開(kāi)(公告)日: | 2018-08-28 |
| 發(fā)明(設(shè)計(jì))人: | 劉琳童;甘焱林 | 申請(qǐng)(專(zhuān)利權(quán))人: | 深圳市中興微電子技術(shù)有限公司 |
| 主分類(lèi)號(hào): | G06F9/48 | 分類(lèi)號(hào): | G06F9/48 |
| 代理公司: | 北京安信方達(dá)知識(shí)產(chǎn)權(quán)代理有限公司 11262 | 代理人: | 田紅娟;龍洪 |
| 地址: | 518083 廣*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 中斷 處理 方法 裝置 控制器 | ||
本發(fā)明提供了一種中斷處理方法、裝置及中斷控制器。其中,該方法包括:CPU接收中斷控制器發(fā)送的中斷請(qǐng)求,執(zhí)行上述中斷請(qǐng)求對(duì)應(yīng)的中斷,并向上述中斷控制器寫(xiě)入第一值,其中,該第一值用于表示上述CPU接收到上述中斷請(qǐng)求;上述CPU執(zhí)行完成上述中斷后,向上述中斷控制器寫(xiě)入第二值,其中,該第二值用于表示上述CPU執(zhí)行完成上述中斷。通過(guò)本發(fā)明,解決了相關(guān)技術(shù)中中斷控制器采用邏輯較多,占用面積較大的問(wèn)題,采用異步采樣,避免了中斷信號(hào)的丟失,簡(jiǎn)化了軟件流程,進(jìn)而達(dá)到了減少中斷控制器的邏輯數(shù)量,節(jié)約面積的效果。
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種中斷處理方法、裝置及中斷控制器。
背景技術(shù)
在相關(guān)技術(shù)中,中斷控制器進(jìn)行采樣的方法多采用輸入中斷源經(jīng)過(guò)三級(jí)寄存器采樣,根據(jù)采樣的結(jié)果和預(yù)先配置好的中斷采樣模式,來(lái)判斷是否有有效的中斷到來(lái)。該方法要求輸入的異步中斷信號(hào)至少要保持一個(gè)時(shí)鐘周期有效,否則有可能導(dǎo)致中斷丟失。并且,該方法實(shí)現(xiàn)起來(lái)較為復(fù)雜,如果例化的采樣模塊過(guò)多會(huì)大大增加中斷控制器的面積。
圖1是根據(jù)相關(guān)技術(shù)的中斷控制器的處理流程圖,如圖1所示,該流程包括以下步驟(步驟S102-步驟S112):
步驟S102,開(kāi)始中斷進(jìn)程(start interrupt process)。當(dāng)CPU接收到中斷后會(huì)通過(guò)flag信號(hào)通知中斷控制器它接收到了中斷。
步驟S104,CPU讀取中斷現(xiàn)場(chǎng)寄存器,并將中斷現(xiàn)場(chǎng)(int_cur_reg)壓入軟件的堆棧(stack)里。
步驟S106,獲取矢量地址(vector addr)。
步驟S108,判斷是否有最高優(yōu)先級(jí)的終端,或者是否有新的中斷進(jìn)入,如果有,則執(zhí)行步驟S102,如果沒(méi)有,則執(zhí)行步驟S110。
步驟S110,判斷是否所有的中斷進(jìn)程都已結(jié)束(all interrupt process done),如果是,則執(zhí)行步驟S112,如果否,則執(zhí)行步驟S108。
步驟S112,CPU處理完中斷后會(huì)從軟件的堆棧里壓出一個(gè)中斷現(xiàn)場(chǎng)的值,回寫(xiě)到中斷控制器里面,同時(shí)會(huì)通過(guò)flag信號(hào)通知中斷控制器該中斷已經(jīng)處理結(jié)束。
目前的矢量中斷控制器的握手方式大致為,CPU接收到中斷后,將中斷現(xiàn)場(chǎng)(中斷號(hào)和優(yōu)先級(jí))保存在軟件的堆棧中,然后通過(guò)flag信號(hào)通知中斷控制器,CPU執(zhí)行完中斷后,再通過(guò)flag信號(hào)通知中斷控制器已經(jīng)執(zhí)行完畢,同時(shí)從軟件的堆棧中取出上一個(gè)矢量中斷的中斷現(xiàn)場(chǎng)發(fā)送給中斷控制器,用來(lái)更新中斷控制器中的中斷現(xiàn)場(chǎng)寄存器。如果在進(jìn)入本次中斷前是在main函數(shù)中,則上一個(gè)矢量中斷的中斷號(hào)可以發(fā)送任意值。
上述中斷控制器的處理流程采用同步采樣,圖2是根據(jù)相關(guān)技術(shù)的中斷控制器實(shí)現(xiàn)同步采樣方式的結(jié)構(gòu)示意圖,如圖2所示,圖2的左側(cè)是三個(gè)輸入信號(hào)的產(chǎn)生結(jié)構(gòu)圖,左側(cè)最上方結(jié)構(gòu)采用上升沿采樣,其中三個(gè)寄存器的復(fù)位值都為0;左側(cè)中間結(jié)構(gòu)采用下降沿采樣,其中三個(gè)寄存器的復(fù)位值都為1;左側(cè)最下方結(jié)構(gòu)采用高低電平采樣。目前的中斷控制器的握手方式的握手信號(hào)較多,用軟件來(lái)保存中斷現(xiàn)場(chǎng)的實(shí)現(xiàn)較為復(fù)雜,并且,實(shí)現(xiàn)上述流程的中斷控制器采用邏輯較多,占用面積較大。
針對(duì)相關(guān)技術(shù)中中斷控制器采用邏輯較多,占用面積較大的問(wèn)題,目前尚未提出有效的解決方案。
發(fā)明內(nèi)容
針對(duì)相關(guān)技術(shù)中中斷控制器采用邏輯較多,占用面積較大的問(wèn)題,本發(fā)明提供了一種中斷處理方法、裝置及中斷控制器,以至少解決上述問(wèn)題。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種中斷處理方法,該方法包括:CPU接收中斷控制器發(fā)送的中斷請(qǐng)求,執(zhí)行上述中斷請(qǐng)求對(duì)應(yīng)的中斷,并向上述中斷控制器寫(xiě)入第一值,其中,上述第一值用于表示上述CPU接收到上述中斷請(qǐng)求;上述CPU執(zhí)行完成上述中斷后,向上述中斷控制器寫(xiě)入第二值,其中,上述第二值用于表示上述CPU執(zhí)行完成上述中斷。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于深圳市中興微電子技術(shù)有限公司,未經(jīng)深圳市中興微電子技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210305534.6/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





