亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

提高處理器中返回分支指令的執(zhí)行速度的方法

文檔序號(hào):9422684閱讀:906來(lái)源:國(guó)知局
提高處理器中返回分支指令的執(zhí)行速度的方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明的實(shí)施例是針對(duì)微處理器。
【背景技術(shù)】
[0002]調(diào)用分支指令允許程序控制分支到實(shí)施子例程(函數(shù))的一部分代碼。舉例來(lái)說,當(dāng)調(diào)用分支指令執(zhí)行時(shí),程序計(jì)數(shù)器中的地址遞增而且加載到隨后回顧的鏈接寄存器,而且被調(diào)用子例程中的初次代碼行的地址加載到程序計(jì)數(shù)器,這樣使得程序控制分支到表示被調(diào)用子例程的部分代碼。在所述部分代碼末端的返回分支指令使得程序控制以返回到存儲(chǔ)在所述鏈接寄存器中的地址,借此返回到按程序排序的調(diào)用子例程的調(diào)用分支指令之后的下一指令。
[0003]為了執(zhí)行嵌套式或遞歸的子例程(函數(shù)),也就是說,當(dāng)一個(gè)子例程調(diào)用另一個(gè)子例程(可以是自身)時(shí),軟件可利用存儲(chǔ)器中的堆棧。舉例來(lái)說,如果地址由于第一次子例程調(diào)用已經(jīng)加載到鏈接寄存器,而且如果第二次子例程調(diào)用到表示第一子例程的代碼內(nèi),那么當(dāng)?shù)谝蛔永瘫徽{(diào)用時(shí),加載到鏈接寄存器的地址按軟件慣例推送到存儲(chǔ)器中的堆棧頂端之上,而且表示按程序排序在第二分支指令之后的下一指令的地址加載到鏈接寄存器。當(dāng)執(zhí)行用于第二次被調(diào)用的子例程的返回分支指令時(shí),存儲(chǔ)在鏈接寄存器中的地址加載到程序計(jì)數(shù)器,而且在堆棧頂端的地址隨后彈出而且加載到鏈接寄存器,這樣使得程序控制可返回到當(dāng)?shù)谝蛔永掏瓿蓵r(shí)立刻遵循(按程序排序)第一分支指令的指令。

【發(fā)明內(nèi)容】

[0004]本發(fā)明的實(shí)施例是針對(duì)用以減少用于利用鏈接寄存器堆棧執(zhí)行返回分支指令的處理器周期的次數(shù)的系統(tǒng)和方法。
[0005]在一個(gè)實(shí)施例中,方法包含響應(yīng)于處理器解碼除調(diào)用分支指令以外的鏈接寄存器操控指令,設(shè)定狀態(tài)機(jī)到初始狀態(tài);而且自從處理器解碼除調(diào)用分支指令以外的鏈接寄存器操控指令且其中所述處理器尚未解碼相對(duì)應(yīng)的返回分支指令,響應(yīng)于解碼調(diào)用分支指令或返回分支指令,改變狀態(tài)機(jī)到指示由處理器解碼的多個(gè)調(diào)用分支指令的狀態(tài)。假如自從處理器解碼除調(diào)用分支指令以外的鏈接寄存器操控指令,而且其中一個(gè)相對(duì)應(yīng)的返回分支指令尚未解碼,所述狀態(tài)機(jī)的狀態(tài)表明至少一個(gè)調(diào)用分支指令已經(jīng)解碼,所述方法進(jìn)一步包含響應(yīng)于處理器提取并解碼返回分支指令,從鏈接寄存器堆棧取出目標(biāo)地址而且使用所述目標(biāo)地址作為提取下一指令的地址,并且完成所述返回分支指令的執(zhí)行無(wú)需檢查所述目標(biāo)地址的正確性。
[0006]在另一個(gè)實(shí)施例中,一種方法包含響應(yīng)于處理器解碼除調(diào)用分支指令以外的鏈接寄存器操控指令,設(shè)定計(jì)數(shù)器到初始值;響應(yīng)于處理器解碼調(diào)用分支指令,將所述計(jì)數(shù)器遞增第一常數(shù);而且響應(yīng)于處理器解碼返回分支指令,將所述計(jì)數(shù)器遞增第二常數(shù)。所述方法進(jìn)一步包含響應(yīng)于處理器確定所述計(jì)數(shù)器的值不等于初始值并且響應(yīng)于處理器解碼返回分支指令,從鏈接寄存器堆棧取出用于返回分支指令的目標(biāo)地址,并且完成返回分支指令的執(zhí)行,無(wú)需檢查所述目標(biāo)地址的正確性。
[0007]在另一個(gè)實(shí)施例中,設(shè)備包含鏈接寄存器、分支計(jì)數(shù)器及處理器,所述設(shè)備響應(yīng)于解碼除寫入到鏈接寄存器的調(diào)用分支指令以外的指令,用以設(shè)定分支計(jì)數(shù)器到初始值;響應(yīng)于解碼調(diào)用分支指令,將所述分支計(jì)數(shù)器遞增第一常數(shù);并且響應(yīng)于解碼返回分支指令,將所述分支計(jì)數(shù)器遞增第二常數(shù)。所述設(shè)備進(jìn)一步包含鏈接寄存器堆棧,其中響應(yīng)于確定所述計(jì)數(shù)器的值不等于初始值并且響應(yīng)于解碼返回分支指令,處理器從鏈接寄存器堆棧取出用于返回分支指令的目標(biāo)地址,并且完成執(zhí)行以及收回所述返回分支指令,無(wú)需檢查所述目標(biāo)地址的正確性。
[0008]在另一個(gè)實(shí)施例中,處理器包含分支計(jì)數(shù)器、鏈接寄存器堆棧、用于設(shè)定計(jì)數(shù)器的裝置(所述裝置用于響應(yīng)于處理器解碼除調(diào)用分支指令以外的鏈接寄存器操控指令,設(shè)定計(jì)數(shù)器以設(shè)定所述分支計(jì)數(shù)器到初始值)、用于增加計(jì)數(shù)器的裝置(所述裝置用于響應(yīng)于處理器解碼調(diào)用分支指令,增加計(jì)數(shù)器以將所述分支計(jì)數(shù)器遞增第一常數(shù),并且響應(yīng)于處理器解碼返回分支指令,以將所述分支計(jì)數(shù)器遞增第二常數(shù))。所述處理器進(jìn)一步包含用于取出鏈接寄存器堆棧的裝置,所述裝置用于響應(yīng)于所述處理器確定分支計(jì)數(shù)器的值不等于初始值并且響應(yīng)于所述處理器解碼返回分支指令,取出鏈接寄存器堆棧以從所述鏈接寄存器堆棧取出用于返回分支指令的目標(biāo)地址;并且所述處理器為了完成執(zhí)行并收回所述返回分支指令,無(wú)需檢查所述目標(biāo)地址的正確性。
[0009]在另一個(gè)實(shí)施例中,存儲(chǔ)媒體已經(jīng)存儲(chǔ)通過處理器可執(zhí)行的指令,所述處理器為了執(zhí)行指令時(shí)履行一種方法,所述方法包括響應(yīng)于所述處理器解碼除調(diào)用分支指令以外的鏈接寄存器操控指令,設(shè)定計(jì)數(shù)器到初始值;響應(yīng)于所述處理器解碼調(diào)用分支指令,將計(jì)數(shù)器遞增第一常數(shù);并且響應(yīng)于所述處理器解碼返回分支指令,將計(jì)數(shù)器遞增第二常數(shù)。所述方法進(jìn)一步包含響應(yīng)于處理器確定所述計(jì)數(shù)器的值不等于初始值并且響應(yīng)于處理器解碼返回分支指令,從鏈接寄存器堆棧取出用于返回分支指令的目標(biāo)地址,并且完成返回分支指令的執(zhí)行,無(wú)需檢查所述目標(biāo)地址的正確性。
【附圖說明】
[0010]呈現(xiàn)附圖以輔助描述本發(fā)明的實(shí)施例,且提供所述附圖僅用于實(shí)施例的說明且不加限制。
[0011]圖1根據(jù)一個(gè)實(shí)施例概括微處理器。
[0012]圖2根據(jù)一個(gè)實(shí)施例說明指令流程。
[0013]圖3根據(jù)一個(gè)實(shí)施例說明流程圖。
[0014]圖4是包含一個(gè)實(shí)施例的無(wú)線通信系統(tǒng)。
【具體實(shí)施方式】
[0015]在以下針對(duì)本發(fā)明特定實(shí)施例的描述和相關(guān)圖式中揭示本發(fā)明的若干方面??稍诓幻撾x本發(fā)明的范圍的情況下設(shè)計(jì)出替代實(shí)施例。另外,將不會(huì)詳細(xì)描述或?qū)⑹÷员景l(fā)明的眾所周知的元件以免混淆本發(fā)明的相關(guān)細(xì)節(jié)。
[0016]單詞“示例性”在本文中使用意指“充當(dāng)實(shí)例、例子或說明”。在本文中被描述為“示范性”的任何實(shí)施例未必被解釋為比其它實(shí)施例優(yōu)選或有利。同樣,術(shù)語(yǔ)“本發(fā)明的實(shí)施例”并不需要本發(fā)明的所有實(shí)施例包含所論述的特征、優(yōu)點(diǎn)或操作模式。
[0017]本文中所使用的術(shù)語(yǔ)僅僅是為了描述特定實(shí)施例,且并不希望限制本發(fā)明的實(shí)施例。如本文中所使用,除非上下文另作明確指示,否則單數(shù)形式“一”和“所述”也意圖包含復(fù)數(shù)形式。將進(jìn)一步理解,術(shù)語(yǔ)“包括”和/或“包含”在本文中使用時(shí)指定所陳述的特征、整數(shù)、步驟、操作、元件和/或組件的存在,但并不排除一或多種其它特征、整數(shù)、步驟、操作、元件、組件和/或其群組的存在或添加。
[0018]另外,許多實(shí)施例是依據(jù)待由(例如)計(jì)算設(shè)備的元件執(zhí)行的動(dòng)作序列來(lái)描述。將認(rèn)識(shí)到,可由特定電路(例如,專用集成電路(ASIC))、由正由一個(gè)或一個(gè)以上處理器執(zhí)行的程序指令或由兩者的組合來(lái)執(zhí)行本文中所述的各種動(dòng)作。此外,可認(rèn)為本文中所描述的這些動(dòng)作序列完全體現(xiàn)于任何形式的非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體內(nèi),所述非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體已存儲(chǔ)一組對(duì)應(yīng)的計(jì)算機(jī)指令,所述指令在被執(zhí)行時(shí)將致使相關(guān)聯(lián)的處理器執(zhí)行本文中所描述的功能性。因此,本發(fā)明的各種方面可以以許多不同形式來(lái)體現(xiàn),已預(yù)期所有形式在所主張的標(biāo)的物的范圍內(nèi)。另外,對(duì)于本文
當(dāng)前第1頁(yè)1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1