[發明專利]一種基于JIT仿真器的中斷檢測方法及系統有效
| 申請號: | 201310687864.0 | 申請日: | 2013-12-13 |
| 公開(公告)號: | CN103699427B | 公開(公告)日: | 2018-01-16 |
| 發明(設計)人: | 羅晴;肖春鵬;李書旭 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 深圳市深佳知識產權代理事務所(普通合伙)44285 | 代理人: | 王仲凱 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 jit 仿真器 中斷 檢測 方法 系統 | ||
技術領域
本發明涉及仿真技術領域,具體涉及一種基于JIT仿真器的中斷檢測方法及系統。
背景技術
即時(Just In Time,簡稱JIT)仿真器是仿真技術中常見的一種高速仿真器,其運行分為兩個階段:翻譯階段和執行階段,其中,翻譯階段將指令翻譯成host機的可執行指令,由多條可執行指令組成一個指令塊;在執行階段由仿真平臺調度以指令塊為單元執行。
目前,JIT仿真器在翻譯指令塊時,中央處理單元(Central Processing Unit,CPU)無法檢測是否有中斷,因此,在翻譯指令塊之前加入中斷檢測,當檢測到中斷發生時,則中斷當前指令塊的翻譯執行中斷,在中斷執行完之后再回來繼續翻譯之前未被翻譯的指令塊。
上述方案中,中斷的執行是在兩個指令塊之間進行,可能導致本來應該在指令塊的某個指令執行結束后就應該觸發的中斷被延遲到整個指令塊結束后再去執行,導致中斷不精確,從而影響仿真結果的準確性。
發明內容
針對上述缺陷,本發明實施例提供了一種基于JIT仿真器的中斷檢測方法及系統,可以精確響應中斷,提高JIT仿真器仿真結果的準確性。
本發明實施例第一方面提供了一種基于JIT仿真器的中斷檢測方法,包括:
在執行指令塊每一條指令前,判斷當前系統是否滿足所述指令所攜帶的中斷觸發條件;若系統滿足所述指令所攜帶的中斷觸發條件,則跳出并執行所述中斷觸發條件對應的中斷。
結合第一方面,在第一種可能的實現方式中,所述中斷觸發條件包含中斷觸發時間,進而所述判斷當前系統是否滿足所述指令所攜帶的中斷觸發條件,包括:判斷當前系統時間是否與所述指令所攜帶的中斷觸發條件中的中斷觸發時間相同。
結合第一方面,在第二種可能的實現方式中,所述中斷觸發條件包含中斷觸發指令判斷條件,所述中斷觸發指令判斷條件具體用于指示指令塊中的第N條指令,所述N為正整數,且小于或等于所述指令塊的指令總數目;進而所述判斷當前系統是否滿足所述指令所攜帶的中斷觸發條件,包括:判斷當前系統是否執行完所述指令所攜帶的中斷觸發條件中的中斷觸發指令判斷條件所指示的第N條指令。
結合第一方面,或第一方面的第一種可能的實現方式,或第一方面的第二種可能的實現方式,在第三種可能的實現方式中,所述在執行指令塊的指令之前還包括:翻譯指令塊中的指令,其中,翻譯后的每一條指令前均攜帶所述中斷觸發條件。
結合第一方面的第三種可能的實現方式,在第四種可能的實現方式中,在所述翻譯指令塊中的指令時,所述中斷檢測方法還包括:當檢測到有中斷注冊,從中斷注冊隊列中獲取所述中斷觸發條件。
結合第一方面的第四種可能的實現方式,在第五種可能的實現方式中,所述中斷觸發條件還包含中斷處理函數;進而在所述從中斷注冊隊列中獲取所述中斷觸發條件之后,還包括:將所述中斷觸發條件中的中斷處理函數翻譯成可執行的中斷處理函數,并將翻譯后的中斷處理函數保存在緩沖區。
結合第一方面的第五種可能的實現方式,在第六種可能的實現方式中,所述中斷觸發條件還包含中斷處理類型;進而所述跳出并執行所述中斷觸發條件對應的中斷包括:根據所述中斷觸發條件中的中斷處理類型從緩沖區讀取翻譯后的中斷處理函數,執行中斷。
結合第一方面或上述第一方面的六種可能的實現方式中的任意一種,在第七種可能的實現方式中,在所述跳出并執行所述中斷觸發條件對應的中斷之后,包括:回到被中斷的所述指令塊,從所述指令塊中被中斷的指令開始執行指令。
本發明實施第二方面提供了一種基于JIT仿真器的中斷檢測系統,包括:
中斷判斷單元,用于在執行指令塊每一條指令前,判斷當前系統是否滿足所述指令所攜帶的中斷觸發條件;
中斷執行單元,用于若系統滿足所述指令所攜帶的中斷觸發條件,則跳出并執行所述中斷觸發條件對應的中斷。
結合第二方面,在第一種可能的實現方式中,所述中斷觸發條件包含中斷觸發時間;進而所述中斷判斷單元包括:中斷時間判斷單元,用于在執行指令塊每一條指令前,判斷當前系統時間是否與所述指令所攜帶的中斷觸發條件中的中斷觸發時間相同。
結合第二方面,在第二種可能的實現方式中,所述中斷觸發條件包含中斷觸發指令判斷條件,所述中斷觸發指令判斷條件具體用于指示指令塊中的第N條指令,所述N為大于或等于0的正整數,且小于或等于所述指令塊的指令總數目;進而所述中斷判斷單元包括:中斷指令判斷單元,用于在執行指令塊的每一條指令前,判斷當前系統是否執行完所述指令所攜帶的中斷觸發條件中的中斷觸發指令判斷條件所指示的第N條指令。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310687864.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種安裝方便的電纜橋架
- 下一篇:一種汽車減震器主托架





