[發(fā)明專利]一種面向安全防護(hù)的分支指令執(zhí)行方法和電子裝置在審
| 申請(qǐng)?zhí)枺?/td> | 202110443662.6 | 申請(qǐng)日: | 2021-04-23 |
| 公開(kāi)(公告)號(hào): | CN113076136A | 公開(kāi)(公告)日: | 2021-07-06 |
| 發(fā)明(設(shè)計(jì))人: | 黃立波;童敢;郭輝;鄭重;鄧全;倪曉強(qiáng);郭維;雷國(guó)慶;王俊輝;隋兵才;孫彩霞;王永文 | 申請(qǐng)(專利權(quán))人: | 中國(guó)人民解放軍國(guó)防科技大學(xué) |
| 主分類號(hào): | G06F9/30 | 分類號(hào): | G06F9/30;G06F9/32;G06F9/38 |
| 代理公司: | 湖南兆弘專利事務(wù)所(普通合伙) 43008 | 代理人: | 譚武藝 |
| 地址: | 410073 湖南*** | 國(guó)省代碼: | 湖南;43 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 面向 安全 防護(hù) 分支 指令 執(zhí)行 方法 電子 裝置 | ||
1.一種面向安全防護(hù)的分支指令執(zhí)行方法,其特征在于,包括:
1)在取指階段對(duì)取得的指令進(jìn)行預(yù)譯碼確定指令的類型,若指令為非條件分支指令,則跳轉(zhuǎn)執(zhí)行下一步;
2)在取指階段提前取出非條件分支指令的操作數(shù)并計(jì)算出非條件分支指令目標(biāo)地址,并將非條件分支指令目標(biāo)地址作為新的程序計(jì)數(shù)器值;
3)在下一個(gè)周期的取指階段直接使用所述新的程序計(jì)數(shù)器值取值。
2.根據(jù)權(quán)利要求1所述的面向安全防護(hù)的分支指令執(zhí)行方法,其特征在于,步驟1)中在取指階段對(duì)取得的指令進(jìn)行預(yù)譯碼確定指令的類型包括:
1.1)在取指階段根據(jù)程序計(jì)數(shù)器值從指令緩存中取指令;
1.2)對(duì)取得的指令進(jìn)行預(yù)譯碼;
1.3)判斷取得的指令是否為分支指令,若取得的指令為分支指令則跳轉(zhuǎn)執(zhí)行下一步;
1.4)判斷取得的指令是否為分支指令中的非條件分支指令,若取得的指令為非條件分支指令則跳轉(zhuǎn)執(zhí)行步驟2)。
3.根據(jù)權(quán)利要求2所述的面向安全防護(hù)的分支指令執(zhí)行方法,其特征在于,步驟1.3)中還包括若取得的指令不是分支指令時(shí),直接將新的程序計(jì)數(shù)器值賦值為下一條指令的地址,并跳轉(zhuǎn)執(zhí)行步驟3)的步驟。
4.根據(jù)權(quán)利要求2所述的面向安全防護(hù)的分支指令執(zhí)行方法,其特征在于,步驟1.3)中還包括若取得的指令為條件分支指令時(shí),還包括針對(duì)條件分支指令采用指定的分支預(yù)測(cè)防御措施的步驟。
5.根據(jù)權(quán)利要求4所述的面向安全防護(hù)的分支指令執(zhí)行方法,其特征在于,所述指定的分支預(yù)測(cè)防御措施包括:暫停流水線或插入fence指令,等待確定分支結(jié)果和條件分支指令目標(biāo)地址;在確定分支結(jié)果和條件分支指令目標(biāo)地址后,將條件分支指令目標(biāo)地址作為新的程序計(jì)數(shù)器值,將流水線恢復(fù),并跳轉(zhuǎn)執(zhí)行步驟3)。
6.根據(jù)權(quán)利要求2所述的面向安全防護(hù)的分支指令執(zhí)行方法,其特征在于,步驟1.2)中對(duì)取得的指令進(jìn)行預(yù)譯碼具體是指根據(jù)取得的指令中指定位置的編碼與預(yù)設(shè)的編碼規(guī)則表進(jìn)行匹配以確定取得的指令的類型信息。
7.根據(jù)權(quán)利要求6所述的面向安全防護(hù)的分支指令執(zhí)行方法,其特征在于,所述根據(jù)取得的指令中指定位置的編碼與預(yù)設(shè)的編碼規(guī)則表進(jìn)行匹配以確定取得的指令的類型信息時(shí),若取得的指令為分支指令、且指令編碼符合非條件分支指令編碼規(guī)范,則判定取得的指令為非條件分支指令;若取得的指令為分支指令、且指令編碼符合條件分支指令編碼規(guī)范,則判定取得的指令為條件分支指令;否則判定取得的指令不是分支指令;步驟2)中在取指階段提前取出非條件分支指令的操作數(shù)并計(jì)算出分支目標(biāo)地址具體是指針對(duì)非條件分支指令的操作數(shù)中的立即數(shù)字段通過(guò)位組合得到立即數(shù),對(duì)該立即數(shù)與當(dāng)前的程序計(jì)數(shù)器值做特定于平臺(tái)的運(yùn)算后作為出分支目標(biāo)地址。
8.一種面向安全防護(hù)的分支指令執(zhí)行裝置,其特征在于,包括:
指令緩存,用于緩存取得的指令;
預(yù)譯碼器,用于在取指階段對(duì)取得的指令進(jìn)行預(yù)譯碼確定指令的類型;
目標(biāo)地址計(jì)算模塊,用于在預(yù)譯碼器確定指令為非條件分支指令時(shí)在取指階段提前取出非條件分支指令的操作數(shù)并計(jì)算出分支目標(biāo)地址,并將分支目標(biāo)地址作為新的程序計(jì)數(shù)器值;
控制模塊,用于在預(yù)譯碼器確定指令為條件分支指令時(shí)暫停流水線或插入fence指令,等待確定分支結(jié)果和分支目標(biāo),在確定分支結(jié)果和分支目標(biāo)后,將下一條指令地址或跳轉(zhuǎn)地址作為新的程序計(jì)數(shù)器值;
程序計(jì)數(shù)器選擇裝置,用于根據(jù)當(dāng)前指令及其相應(yīng)的跳轉(zhuǎn)地址選擇生成下一條指令的地址:當(dāng)預(yù)譯碼器確定指令為非條件分支指令時(shí),程序計(jì)數(shù)器選擇裝置將新的程序計(jì)數(shù)器值取值賦值為目標(biāo)地址計(jì)算模塊輸出的非條件分支指令目標(biāo)地址;當(dāng)預(yù)譯碼器確定指令為條件分支指令時(shí),程序計(jì)數(shù)器選擇裝置將新的程序計(jì)數(shù)器值取值賦值為控制模塊輸出的條件分支指令目標(biāo)地址;當(dāng)預(yù)譯碼器確定指令為非分支指令時(shí),程序計(jì)數(shù)器選擇裝置直接將新的程序計(jì)數(shù)器值賦值為下一條指令的地址。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)人民解放軍國(guó)防科技大學(xué),未經(jīng)中國(guó)人民解放軍國(guó)防科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110443662.6/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 防護(hù)裝置和防護(hù)方法
- 防護(hù)材料與防護(hù)結(jié)構(gòu)與防護(hù)方法
- 一種用于評(píng)估防護(hù)工程綜合防護(hù)效能的數(shù)學(xué)計(jì)算模型
- 平面防護(hù)板、拐角防護(hù)板及防護(hù)裝置
- 平面防護(hù)板、拐角防護(hù)板及防護(hù)裝置
- 防護(hù)裝置及防護(hù)系統(tǒng)
- 防護(hù)蓋(接頭防護(hù)蓋)
- 巖爆防護(hù)臺(tái)車防護(hù)網(wǎng)以及防護(hù)臺(tái)車防護(hù)架
- 巖爆防護(hù)臺(tái)車防護(hù)網(wǎng)以及防護(hù)臺(tái)車防護(hù)架
- 防護(hù)罩、防護(hù)服及防護(hù)系統(tǒng)





