[發(fā)明專利]一種嵌入式處理器中斷偏移方法、裝置、存儲(chǔ)介質(zhì)及電子設(shè)備在審
| 申請(qǐng)?zhí)枺?/td> | 202110592612.4 | 申請(qǐng)日: | 2021-05-28 |
| 公開(kāi)(公告)號(hào): | CN113176939A | 公開(kāi)(公告)日: | 2021-07-27 |
| 發(fā)明(設(shè)計(jì))人: | 劉亞奇;江建明;李高志;張睿軼;朱建軍 | 申請(qǐng)(專利權(quán))人: | 上海矽印科技有限公司 |
| 主分類號(hào): | G06F9/48 | 分類號(hào): | G06F9/48 |
| 代理公司: | 北京品源專利代理有限公司 11332 | 代理人: | 孟金喆 |
| 地址: | 201306 上海市浦東新區(qū)中國(guó)(上*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 嵌入式 處理器 中斷 偏移 方法 裝置 存儲(chǔ) 介質(zhì) 電子設(shè)備 | ||
本申請(qǐng)實(shí)施例公開(kāi)了一種嵌入式處理器中斷偏移方法、裝置、存儲(chǔ)介質(zhì)及電子設(shè)備。該方法包括:在嵌入式處理器的程序運(yùn)行過(guò)程中檢測(cè)中斷服務(wù)請(qǐng)求,若檢測(cè)到中斷服務(wù)請(qǐng)求,則獲取偏移變量的數(shù)值;其中,所述偏移變量是預(yù)先定義在Bootloader和APP的程序存儲(chǔ)空間的變量;若所述數(shù)值符合預(yù)設(shè)中斷偏移執(zhí)行條件,則根據(jù)偏移位置跳轉(zhuǎn)至APP程序中執(zhí)行APP中斷服務(wù)函數(shù);其中,所述偏移位置是根據(jù)所述偏移變量和Bootloader中斷向量表的存儲(chǔ)地址確定的。本技術(shù)方案,可以通過(guò)設(shè)定偏移變量,根據(jù)偏移變量和Bootloader中斷向量表的存儲(chǔ)地址確定偏移位置,實(shí)現(xiàn)APP程序的中斷服務(wù)。APP程序可以存儲(chǔ)在SRAM區(qū)域的任意位置,保證了任意位置中斷程序的準(zhǔn)確返回。
技術(shù)領(lǐng)域
本申請(qǐng)實(shí)施例涉及嵌入式系統(tǒng)技術(shù)領(lǐng)域,尤其涉及一種嵌入式處理器中斷偏移方法、裝置、存儲(chǔ)介質(zhì)及電子設(shè)備。
背景技術(shù)
嵌入式處理器是嵌入式系統(tǒng)的核心,是控制、輔助系統(tǒng)運(yùn)行的硬件單元。Bootloader是嵌入式系統(tǒng)在加電后執(zhí)行的第一段代碼,在它完成CPU和相關(guān)硬件的初始化之后,再將操作系統(tǒng)映像或固化的嵌入式APP程序裝在到內(nèi)存中然后跳轉(zhuǎn)到操作系統(tǒng)所在的空間,啟動(dòng)操作系統(tǒng)運(yùn)行。
處理器運(yùn)行的時(shí)候所需的APP程序在SRAM區(qū)域執(zhí)行的時(shí)候,SRAM區(qū)域的APP程序有獨(dú)立的一套中斷向量表和中斷服務(wù)函數(shù),而Flash區(qū)域的Bootloader也有獨(dú)立的一套中斷向量表和中斷服務(wù)函數(shù)。處理器在發(fā)生中斷的時(shí)候首先先去Bootloader的程序中的中斷向量表中查詢中斷,跳轉(zhuǎn)到Bootloader的中斷服務(wù)函數(shù)中執(zhí)行中斷服務(wù)函數(shù)。現(xiàn)有技術(shù)中,為了跳進(jìn)SRAM區(qū)域的APP中斷中執(zhí)行中斷服務(wù)函數(shù),設(shè)置判斷量,判斷量的數(shù)值為0或1,通過(guò)判斷量的數(shù)值可以判斷中斷發(fā)生在APP運(yùn)行時(shí)還是Bootloader運(yùn)行時(shí),并基于具體中斷位置實(shí)現(xiàn)中斷偏移。
現(xiàn)有技術(shù)中,判斷量的設(shè)定值是固定的,SRAM區(qū)域的APP只能存放在固定位置。
發(fā)明內(nèi)容
本申請(qǐng)實(shí)施例提供一種嵌入式處理器中斷偏移方法、裝置、存儲(chǔ)介質(zhì)及電子設(shè)備,通過(guò)設(shè)定偏移變量,根據(jù)偏移變量和Bootloader中斷向量表的存儲(chǔ)地址確定偏移位置,實(shí)現(xiàn)APP程序的中斷服務(wù)。APP程序可以存儲(chǔ)在SRAM區(qū)域的任意位置,保證了任意位置中斷程序的準(zhǔn)確返回。
第一方面,本申請(qǐng)實(shí)施例提供了一種嵌入式處理器中斷偏移方法,該方法包括:
在嵌入式處理器的程序運(yùn)行過(guò)程中檢測(cè)中斷服務(wù)請(qǐng)求,若檢測(cè)到中斷服務(wù)請(qǐng)求,則獲取偏移變量的數(shù)值;其中,所述偏移變量是預(yù)先定義在Bootloader和APP的程序存儲(chǔ)空間的變量;
若所述數(shù)值符合預(yù)設(shè)中斷偏移執(zhí)行條件,則根據(jù)偏移位置跳轉(zhuǎn)至APP程序中執(zhí)行APP中斷服務(wù)函數(shù);其中,所述偏移位置是根據(jù)所述偏移變量和Bootloader中斷向量表的存儲(chǔ)地址確定的。
第二方面,本申請(qǐng)實(shí)施例提供了一種嵌入式處理器中斷偏移裝置,該裝置包括:
偏移變量數(shù)值獲取模塊,用于在嵌入式處理器的程序運(yùn)行過(guò)程中檢測(cè)中斷服務(wù)請(qǐng)求,若檢測(cè)到中斷服務(wù)請(qǐng)求,則獲取偏移變量的數(shù)值;其中,所述偏移變量是預(yù)先定義在Bootloader和APP的程序存儲(chǔ)空間的變量;
APP中斷服務(wù)函數(shù)執(zhí)行模塊,用于若所述數(shù)值符合預(yù)設(shè)中斷偏移執(zhí)行條件,則根據(jù)偏移位置跳轉(zhuǎn)至APP程序中執(zhí)行APP中斷服務(wù)函數(shù);其中,所述偏移位置是根據(jù)所述偏移變量和Bootloader中斷向量表的存儲(chǔ)地址確定的。
第三方面,本申請(qǐng)實(shí)施例提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如本申請(qǐng)實(shí)施例所述的嵌入式處理器中斷偏移方法。
第四方面,本申請(qǐng)實(shí)施例提供了一種電子設(shè)備,包括存儲(chǔ)器,處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如本申請(qǐng)實(shí)施例所述的嵌入式處理器中斷偏移方法。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海矽印科技有限公司,未經(jīng)上海矽印科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110592612.4/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。





