專利名稱:浮點(diǎn)狀態(tài)與控制寄存器指令的單周期直接執(zhí)行方法與系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于執(zhí)行浮點(diǎn)狀態(tài)與控制寄存器(“FPSCR”)指令的方法與系統(tǒng),更具體地涉及以較少延遲執(zhí)行FPSCR指令及允許對(duì)稱浮點(diǎn)執(zhí)行流水線的直接執(zhí)行FPSCR指令的方法與系統(tǒng)。
諸如ANSI/IEEE標(biāo)準(zhǔn)754-1985二進(jìn)制浮點(diǎn)算術(shù)運(yùn)算IEEE標(biāo)準(zhǔn)(“IEEE標(biāo)準(zhǔn)”)等傳統(tǒng)浮點(diǎn)標(biāo)準(zhǔn)要求為各種可能出現(xiàn)的異常提供狀態(tài)標(biāo)志。例如,必須為數(shù)據(jù)溢出提供狀態(tài)標(biāo)志。在置位時(shí),該狀態(tài)標(biāo)志指示已出現(xiàn)了指定的異常。
諸如IEEE標(biāo)準(zhǔn)等一些傳統(tǒng)的標(biāo)準(zhǔn)還規(guī)定用戶應(yīng)能單個(gè)地測(cè)試及改變狀態(tài)標(biāo)志。此外,IEEE標(biāo)準(zhǔn)規(guī)定用戶應(yīng)能一次性保存與恢復(fù)所有狀態(tài)標(biāo)志。
一些傳統(tǒng)的系統(tǒng)利用浮點(diǎn)狀態(tài)與控制寄存器(“FPSCR”)來(lái)存儲(chǔ)狀態(tài)標(biāo)志。FPSCR是受FPSCR指令控制的。FPSCR讀指令允許系統(tǒng)從FPSCR讀取或傳送數(shù)據(jù)。類似地,F(xiàn)PSCR寫(xiě)指令允許系統(tǒng)向FPSCR傳送數(shù)據(jù)。例如,F(xiàn)PSCR可用一組6條FPSCR指令控制。這些指令中的四條向FPSCR寫(xiě)入或傳送數(shù)據(jù)。其余兩條FPSCR指令從FPSCR讀取或傳送數(shù)據(jù)。
傳統(tǒng)浮點(diǎn)系統(tǒng)通過(guò)將FPSCR指令整個(gè)放在浮點(diǎn)執(zhí)行單元流水線上來(lái)實(shí)現(xiàn)FPSCR指令。然而,F(xiàn)PSCR指令通常是由與流水線串行設(shè)置的FPSCR執(zhí)行邏輯執(zhí)行的。換言之,F(xiàn)PSCR執(zhí)行邏輯通常設(shè)置在浮點(diǎn)執(zhí)行邏輯后面。然而,附加的專用FPSCR邏輯必須設(shè)置在流水線中以允許FPSCR指令通過(guò)流水線。
如果傳統(tǒng)的系統(tǒng)是對(duì)稱的,便將用于傳遞FPSCR指令通過(guò)流水線的專用FPSCR邏輯設(shè)置在兩條流水線中。由于流水線是簡(jiǎn)單地復(fù)制的,具有對(duì)稱流水線的系統(tǒng)設(shè)計(jì)較簡(jiǎn)單。然而,由于FPSDR指令比浮點(diǎn)指令的出現(xiàn)較少,流水線中的專用FPSCR邏輯將是較大地不使用的。此外,由于FPSCR指令仍需要串行化,附加的專用FPSCR邏輯提供很小的性能提高。
在采用對(duì)稱流水線時(shí),各對(duì)稱流水線可具有設(shè)置在流水線的浮點(diǎn)執(zhí)行邏輯后面的其本身的FPSCR執(zhí)行邏輯。然而,流水線也可共用設(shè)置在兩個(gè)浮點(diǎn)執(zhí)行單元后面的FPSCR執(zhí)行邏輯。使對(duì)稱浮點(diǎn)執(zhí)行單元只帶一個(gè)與兩條流水線串行的FPSCR執(zhí)行邏輯存在著缺點(diǎn)。這便是,由于FPSCR指令能從任何一條流水線輸入到FPSCR執(zhí)行邏輯而使FPSCR執(zhí)行邏輯更復(fù)雜。因而,F(xiàn)PSCR執(zhí)行邏輯必須能確定哪一條流水線提供FPSCR指令并計(jì)算任何定時(shí)差別。
其它傳統(tǒng)系統(tǒng)采用不對(duì)稱浮點(diǎn)流水線。在這種系統(tǒng)中,F(xiàn)PSCR指令只發(fā)布給一定的流水線。從而,只有這些流水線包含通過(guò)流水線傳遞FPSCR指令的專用FPSCR邏輯。因?yàn)樗蠪PSCR指令是通過(guò)單一流水線傳遞的,該流水線中的專用FPSCR邏輯比各對(duì)稱流水線中的專用FPSCR邏輯使用得更頻繁。此外,因?yàn)橹挥杏邢迶?shù)目的流水線,諸如單一流水線,將FPSCR指令提供給FPSCR執(zhí)行邏輯,F(xiàn)PSCR執(zhí)行邏輯較不復(fù)雜。然而,如上所述,因?yàn)椴荒芎?jiǎn)單地通過(guò)復(fù)制單一執(zhí)行流水線來(lái)設(shè)置系統(tǒng),不對(duì)稱流水線在設(shè)計(jì)上增加了復(fù)雜性。
不論系統(tǒng)中的浮點(diǎn)執(zhí)行單元流水線是否對(duì)稱,F(xiàn)PSCR指令執(zhí)行可導(dǎo)致多周期延遲。這是因?yàn)镕PSCR指令為串行化指令。為了正確地運(yùn)行,串行化指令必須使流水線的至少一部分是空閑的。FPSCR指令后面通常跟隨一系統(tǒng)浮點(diǎn)指令。FPSCR指令是串行化的因?yàn)樗赡芨淖兒竺娴母↑c(diǎn)指令所依賴的FPSCR中的設(shè)置。結(jié)果,F(xiàn)PSCR指令要求FPSCR指令后面的一部分流水線在執(zhí)行期間是空閑的。如果這部分流水線不空閑,后面的指令有可能訪問(wèn)FPSCR中的不正確的設(shè)置。
由于在FPSCR指令的執(zhí)行期間流水線中的各級(jí)必須保持開(kāi)放且浮點(diǎn)流水線通常是深的,每一條FPSCR指令會(huì)引入多周期延遲。從而,雖然FPSCR執(zhí)行邏輯能相對(duì)快地執(zhí)行FPSR指令,當(dāng)FPSCR指令通過(guò)流水線時(shí)還是引入了延遲。對(duì)于具有許多級(jí)的傳統(tǒng)浮點(diǎn)流水線,這一延遲是較大的。
從而,所需要的是具有減少延遲的執(zhí)行FPSCR指令的系統(tǒng)與方法。如果該方法允許對(duì)稱浮點(diǎn)執(zhí)行流水線而使流水線設(shè)計(jì)更簡(jiǎn)單,這也是有利的。本發(fā)明致力于解決這一需求。
本發(fā)明提供用于在處理器中提供串行化指令的直接執(zhí)行的方法與系統(tǒng)。該處理器具有串行化指令及非串行化指令。該處理器包含具有用于執(zhí)行非串行化指令的流水線的執(zhí)行邏輯。該處理器還包含與執(zhí)行邏輯分開(kāi)的執(zhí)行串行化指令的邏輯。該方法與系統(tǒng)包括識(shí)別串行化指令,識(shí)別非串行化指令,將非串行化指令提供給執(zhí)行邏輯及將串行化指令提供給分開(kāi)的邏輯。執(zhí)行串行化指令而不將串行化指令提供給流水線。
按照這里公開(kāi)的系統(tǒng)與方法,本發(fā)明提供FPSCR指令的直接與更快速執(zhí)行。減小了FPSCR指令引起的延遲,從而提高了總體系統(tǒng)性能。此外,對(duì)稱浮點(diǎn)流水線是可能的,使系統(tǒng)設(shè)計(jì)更簡(jiǎn)單。
圖1為包含浮點(diǎn)單元的處理器的高層框圖。
圖2為按照本方法與系統(tǒng)的浮點(diǎn)單元的高層框圖。
圖3為描述按照本方法與系統(tǒng)的執(zhí)行FPSCR指令的系統(tǒng)的實(shí)施例的框圖。
本發(fā)明涉及浮點(diǎn)狀態(tài)與控制寄存器(“FPSCR”)指令的執(zhí)行中的改進(jìn)。以下的描述是為了使本技術(shù)中的普通技術(shù)人員能作出與利用本發(fā)明而提出的,并且是在專利申請(qǐng)及要求的上下文中提供的。對(duì)于熟悉本技術(shù)的人員對(duì)較佳實(shí)施例的各種修改將是顯而易見(jiàn)的,并且這里的通用原理可應(yīng)用在其它實(shí)施例上。從而本發(fā)明的意圖不限于所示的實(shí)施例而是與這里描述的原理與特征相容的最廣范圍一致的。
圖1為用于按照本發(fā)明處理信息的處理器系統(tǒng)10的一些相關(guān)部件的框圖。在較佳實(shí)施例中,處理器10為一個(gè)集成電路超標(biāo)量微處理器。從而,如下面進(jìn)一步討論的,處理器10包括各種單元、寄存器、緩沖器、存儲(chǔ)器及其它部件,它們都是用集成電路構(gòu)成的。如圖1中所示,處理器10包括多個(gè)執(zhí)行部件,其中包含浮點(diǎn)單元14及整數(shù)單元16。
圖2更詳細(xì)地描述浮點(diǎn)單元14。浮點(diǎn)單元14包含各具有一個(gè)浮點(diǎn)執(zhí)行流水線的兩個(gè)浮點(diǎn)執(zhí)行單元FPUA38與FPUB40。此外,浮點(diǎn)單元14具有包含狀態(tài)標(biāo)志的FPSCR37。
通過(guò)指令取出/調(diào)度單元30將要執(zhí)行的指令提供給浮點(diǎn)單元14。指令取出/調(diào)度單元30將指令放置在浮點(diǎn)隊(duì)列(“FPQ”)34中。在較佳實(shí)施例中,F(xiàn)PQ34為推測(cè)的無(wú)次序隊(duì)列。浮點(diǎn)運(yùn)算指令與浮點(diǎn)狀態(tài)與控制寄存器指令都放在FPQ34中。FPSCR指令控制FPSCR37。
將FPQ34中的FPSCR指令分派給FPUA38與FPUB40供對(duì)應(yīng)的FPUA38或FPUB40的浮點(diǎn)執(zhí)行單元流水線處理。FPSCR指令通過(guò)的浮點(diǎn)執(zhí)行單元流水線必須包含將FPSCR指令傳遞通過(guò)流水線的專用邏輯。如果,例如將專用的FPSCR指令邏輯設(shè)置在FPUA38與FPUB40兩者上,則對(duì)稱流水線將設(shè)置有攜帶FPSCR指令的各流水線。如果只在FPUA38與FPUB40之一中設(shè)置專用邏輯,則流水線是不對(duì)稱的且只有單一流水線攜帶FPSCR指令。
一旦專用邏輯將FPSCR指令傳遞通過(guò)了FPUA38或FPUB40的流水線,便能由與FPUA38或FPUB40串行設(shè)置的FPSCR執(zhí)行邏輯執(zhí)行該FRSCR指令。如果FPUA38與FPUB40的流水線是對(duì)稱的,則FPUA38與FPUB40可以具有設(shè)置在其每一個(gè)后面的FPSCR執(zhí)行邏輯或者FPUA38與FPUB40能共用一個(gè)FPSCR執(zhí)行邏輯。如果FPUA38與FPUB40的流水線是不對(duì)稱的,則只能在FPUA38或FPUB40之一后面設(shè)置FPSCR執(zhí)行邏輯。
FPSCR指令是串行化的,要求FPSCR指令后面的一部分浮點(diǎn)執(zhí)行單元流水線必須為要執(zhí)行的FPSCR指令開(kāi)放。此外,F(xiàn)PSCR指令通常是一系列指令的第一條指令。通常,在這一系列指令之前流水線的級(jí)是開(kāi)放的。結(jié)果,在FPSCR指令之前流水線通常是開(kāi)放的。
雖然通過(guò)將FPSCR指令傳遞通過(guò)浮點(diǎn)執(zhí)行單元流水線能執(zhí)行FPSCR指令,本技術(shù)的普通技術(shù)人員會(huì)理解以這一方式執(zhí)行FPSCR指令會(huì)導(dǎo)致多周期延遲。因?yàn)镕PSCR指令是串行化的,在FPSCR指令的執(zhí)行期間該FPSCR指令后面的一部分流水線必須保持開(kāi)放。在FPSCR指令完成之前不能開(kāi)始執(zhí)行后面的浮點(diǎn)指令,從而導(dǎo)致延遲。通常,浮點(diǎn)執(zhí)行單元流水線是相對(duì)地深的,導(dǎo)致這些延遲為若干周期。
如果提供了對(duì)稱流水線,F(xiàn)PSCR可通過(guò)任一流水線,并只是偶而將專用FPSCR邏輯用于將FPSCR指令傳遞通過(guò)該流水線。這便是,由于各流水線只接收FPSCR指令總量的一部分,而只將傳遞FPSCR指令通過(guò)流水線的專用FPSCR邏輯用于發(fā)布的FPSCR指令的一部分。由于FPSCR執(zhí)行邏輯可能需要判定哪一流水線正在提供FPSCR指令而也要將FPSCR執(zhí)行邏輯制造得更復(fù)雜。如果提供了不對(duì)稱流水線,專用FPSCR邏輯的利用率較高,但流水線的設(shè)計(jì)變得更復(fù)雜。對(duì)稱與不對(duì)稱流水線都遭受FPSCR指令導(dǎo)致的延遲。
本發(fā)明提供在處理器中直接執(zhí)行FPSCR指令的方法與系統(tǒng)。該處理器具有串行化指令與非串行化指令。該處理器包含具有用于執(zhí)行非串行化指令的流水線的執(zhí)行邏輯。該處理器還包含與該執(zhí)行邏輯分開(kāi)的用于執(zhí)行串行化指令的邏輯。該方法與系統(tǒng)包括識(shí)別串行化指令,識(shí)別非串行化指令,將非串行化指令提供給執(zhí)行邏輯,及將串行化指令提供給該分開(kāi)的邏輯。執(zhí)行串行化指令而不將該串行化指令提供給流水線。
下面對(duì)擁有兩條執(zhí)行流水線的浮點(diǎn)單元描述本發(fā)明。然而,本技術(shù)中的普通技術(shù)人員容易理解本方法與系統(tǒng)對(duì)其它類型的串行化指令以及擁有其它數(shù)目流水線的浮點(diǎn)單元也能高效的操作。此外,較佳實(shí)施例包含雙執(zhí)行單元及各兩級(jí)深的兩條流水線。但并不阻止使用其它數(shù)目的執(zhí)行單元或流水線,或其它深度的流水線。
為了更具體地說(shuō)明按照本發(fā)明的方法與系統(tǒng),參見(jiàn)圖3,其中描繪了這一系統(tǒng)的實(shí)施例100的框圖。圖2中已描繪了系統(tǒng)100的許多部件。這些部件與圖2中的對(duì)應(yīng)部件是類似地加以標(biāo)記的。例如,在圖2與圖3中都將FPQ標(biāo)記為FPQ34。
FPQ34中包含F(xiàn)PSCR與浮點(diǎn)指令兩者。與傳統(tǒng)的系統(tǒng)不同,F(xiàn)PQ34并不提供FPSCR指令給FPUA38或APUB40之一的流水線。FPUA38與FPUB40都不包含用于將FPSCR指令傳遞通過(guò)流水線的專用FPSCR邏輯。結(jié)果,F(xiàn)PUA38與FPUB40的流水線是對(duì)稱的,至少相對(duì)于它們都沒(méi)有用于將FPSCR指令傳遞通過(guò)流水線這一點(diǎn)而言。
不是將FPSCR指令傳遞通過(guò)浮點(diǎn)流水線之一,F(xiàn)PQ34將FPSCR指令直接提供給分開(kāi)的FPSCR執(zhí)行邏輯110。結(jié)果,系統(tǒng)100直接執(zhí)行FPSCR指令。此外,如上所述,F(xiàn)PSCR執(zhí)行邏輯110在流水線FPUA38或FPUB40之一中并不需要用于將FPSCR指令傳遞通過(guò)流水線的專用邏輯。
FPSCR執(zhí)行邏輯110執(zhí)行FPSCR指令,根據(jù)該FPSCR指令更新FPSCR20、FPR陣列44或控制寄存器120之一。FPSCR執(zhí)行邏輯110能在單個(gè)周期中執(zhí)行FPSCR指令而不需要該FPSCR指令后面的一部分流水線開(kāi)放。從而,減少了由傳遞FPSCR指令通過(guò)浮點(diǎn)執(zhí)行流水線引起的延遲。
為了確保所有指令的正確執(zhí)行,F(xiàn)PQ34仍將FPSCR指令作為串行化指令對(duì)待。換言之,F(xiàn)PSCR指令仍不得改變前面分派的浮點(diǎn)指令可能使用的FPSCR37中的設(shè)置值。從而,在較佳實(shí)施例中,在前面分派的浮點(diǎn)指令完成執(zhí)行并在結(jié)構(gòu)上交付之前,F(xiàn)PQ34并不發(fā)布FPSCR指令。如果PFQ34并不將FPSCR指令作為串行化的對(duì)待,F(xiàn)PSCR指令有可能改變前面的浮點(diǎn)指令所依賴的設(shè)置值。這便是,在發(fā)布該FPSCR指令之前,如果前面的浮點(diǎn)指令沒(méi)有結(jié)構(gòu)上交付,則前面的浮點(diǎn)指令有可能使用不正確的數(shù)據(jù)。從而,較佳實(shí)施例只在已經(jīng)執(zhí)行了并且結(jié)構(gòu)上交付了前面分派的浮點(diǎn)指令之后才發(fā)布FPSCR指令。因?yàn)镕PSCR指令前面通常沒(méi)有浮點(diǎn)指令,而是后面跟隨一系列浮點(diǎn)指令,本較佳實(shí)施例的這一特性通常并不影響系統(tǒng)100性能。
所提供的FPSCR指令傳送數(shù)據(jù)到FPSCR執(zhí)行邏輯110中的浮點(diǎn)狀態(tài)與控制寄存器(“MTFPSCR”)邏輯114。FPSCR指令的源數(shù)據(jù)由FPR陣列44提供。MTFPSCR邏輯114將用戶提供的源或數(shù)據(jù)(稱作立即數(shù)據(jù))與適當(dāng)?shù)腇PSCR值合并。
MTFPSCR邏輯114將合并的結(jié)果提供給選擇器116。在較佳實(shí)施例中,選擇器116為一個(gè)多路復(fù)用器。當(dāng)有效的FPSCR指令引發(fā)MTFPSRC邏輯114提供合并的結(jié)果時(shí),選擇器116選擇來(lái)自MTFPSCR邏輯114的輸出以便寫(xiě)入FPSCR20中。如果系統(tǒng)由于有效的浮點(diǎn)運(yùn)算指令而訪問(wèn)FPSCR20,則選擇器116選擇來(lái)自執(zhí)行單元狀態(tài)標(biāo)志合并邏輯112的輸出。FPQ34與FPSCR執(zhí)行邏輯110之間的這一協(xié)作使FPSGR指令能在單個(gè)周期中執(zhí)行。
在較佳實(shí)施例中,F(xiàn)PSCR執(zhí)行邏輯110還執(zhí)行將數(shù)據(jù)從FPSCR20傳送到諸如控制寄存器120或FPR陣列44的FPSCR指令。當(dāng)將數(shù)據(jù)從FPSCR20傳送到控制寄存器120時(shí),F(xiàn)PSCR執(zhí)行邏輯從FPSGR20中讀取數(shù)據(jù),將數(shù)據(jù)傳送到控制寄存器120,并將數(shù)據(jù)重寫(xiě)到FPSCR20中。MTFPSCR邏輯114提供FPSCR20的復(fù)位,并將適當(dāng)?shù)臄?shù)據(jù)從FPSCR20提供給控制寄存器120,結(jié)果,F(xiàn)PSCR執(zhí)行邏輯110能用來(lái)在單一周期中執(zhí)行所有的FPSCR指令,而沒(méi)有由將FPSCR指令傳遞通過(guò)浮點(diǎn)執(zhí)行單元流水線引起的延遲。
已公開(kāi)了用于直接執(zhí)行FPSCR指令的方法與系統(tǒng)。由于本系統(tǒng)與方法采用分開(kāi)的FPSCR執(zhí)行邏輯110來(lái)執(zhí)行FPSCR指令,F(xiàn)PSCR指令是在單一周期中執(zhí)行的。通過(guò)繞過(guò)執(zhí)行單元流水線,本方法與系統(tǒng)在執(zhí)行FPSCR指令所需的周期數(shù)上提供了顯著的改進(jìn)。例如,在具有雙重兩深度的浮點(diǎn)執(zhí)行流水線的較佳實(shí)施例中,對(duì)于FPSCR指令傳統(tǒng)的方法會(huì)有兩個(gè)周期的執(zhí)行等待時(shí)間。反之,本方法與系統(tǒng)達(dá)到一個(gè)周期的執(zhí)行等待時(shí)間。如果將本方法與系統(tǒng)用在具有更深的流水線的處理器上,便能達(dá)到延遲的更大減少。此外,本方法與系統(tǒng)允許處理器具有對(duì)稱的流水線而沒(méi)有專用的FPSCR邏輯將FPSCR指令傳遞通過(guò)流水線。從而,簡(jiǎn)化了多浮點(diǎn)執(zhí)行流水線的設(shè)計(jì)。
雖然已按照所示的實(shí)施例描述了本發(fā)明,本技術(shù)中的普通技術(shù)人員將容易理解可以對(duì)實(shí)施例進(jìn)行改變,這些改變是在本發(fā)明的精神與范圍內(nèi)的。從而,本技術(shù)中的普通技術(shù)人員可作出許多修改而不脫離所附權(quán)利要求書(shū)的精神與范圍。
權(quán)利要求
1.一種提供在處理器中直接執(zhí)行串行化指令的系統(tǒng),該處理器包含具有執(zhí)行非串行化指令的流水線的執(zhí)行邏輯,該系統(tǒng)的特征在于包括與執(zhí)行邏輯分開(kāi)的用于執(zhí)行串行化指令的邏輯;以及耦合在該分開(kāi)的邏輯與執(zhí)行邏輯上的指令隊(duì)列,用于存儲(chǔ)串行化與非串行化指令,將非串行化指令提供給執(zhí)行邏輯,及將串行化指令提供給分開(kāi)的邏輯,從而串行化指令是不提供給流水線而執(zhí)行的。
2.權(quán)利要求1的系統(tǒng),其特征在于對(duì)于將串行化指令提供給分開(kāi)的邏輯以前提供給執(zhí)行邏輯的非串行化指令,指令隊(duì)列在執(zhí)行邏輯完成了非串行化指令的執(zhí)行之后才提供串行化指令給分開(kāi)的邏輯。
3.權(quán)利要求2的系統(tǒng),其特征在于還包括浮點(diǎn)狀態(tài)與控制寄存器(“FPSCR”);以及該串行化指令為FPSCR指令而非串行化指令為浮點(diǎn)指令。
4.權(quán)利要求3的系統(tǒng),其特征在于分開(kāi)的邏輯包括用于提供第一結(jié)果的傳送邏輯,如果串行指令寫(xiě)到FPSCR則將第一結(jié)果提供給FPSCR。
5.權(quán)利要求4的系統(tǒng),其特征在于FPSCR包含多個(gè)狀態(tài)標(biāo)志;以及該分開(kāi)的邏輯包括耦合在執(zhí)行邏輯上的用于在出現(xiàn)異常時(shí)提供第二結(jié)果的狀態(tài)標(biāo)志邏輯;耦合在傳送邏輯、狀態(tài)標(biāo)志邏輯與FPSCR上的選擇器裝置,如果寫(xiě)入到FPSCR的串行化指令是有效的,選擇器裝置用于提供第一結(jié)果,如果串行化指令無(wú)效,選擇器裝置用于提供第二結(jié)果。
6.權(quán)利要求5的系統(tǒng),其特征在于該選擇器裝置為多路復(fù)用器。
7.權(quán)利要求6的系統(tǒng),其特征在于該執(zhí)行邏輯包括多個(gè)執(zhí)行單元,各執(zhí)行單元具有一條執(zhí)行單元流水線。
8.權(quán)利要求7的系統(tǒng),其特征在于該處理器包含時(shí)鐘;以及該分開(kāi)的邏輯在該時(shí)鐘的單個(gè)周期中執(zhí)行串行化指令。
9.一種用于提供在處理器中直接執(zhí)行串行化指令的方法,該處理器包含具有用于執(zhí)行非串行化指令的執(zhí)行邏輯,及與執(zhí)行邏輯分開(kāi)的用于執(zhí)行串行化指令的邏輯,該方法的特征在于包括下述步驟a)識(shí)別串行化指令;b)識(shí)別非串行化指令;c)將非串行化指令提供給執(zhí)行邏輯;及d)將串行化指令提供給分開(kāi)的邏輯,從而該串行化指令是不提供給流水線而執(zhí)行的。
10.權(quán)利要求9的方法,其特征在于當(dāng)步驟c)在步驟d)前面時(shí),步驟d)包括d1)在將串行化指令提供給分開(kāi)的邏輯之前等待直到完成了非串行化指令的執(zhí)行為止。
11.權(quán)利要求10的方法,其特征在于該處理器還包括浮點(diǎn)狀態(tài)與控制寄存器(“FPSCR”);該串行化指令為FPSCR指令;及該非串行化指令為浮點(diǎn)指令。
12.權(quán)利要求11的方法,其特征在于該處理器包含時(shí)鐘,以及該方法還包括在該時(shí)鐘的單個(gè)周期中執(zhí)行串行化指令的步驟。
全文摘要
公開(kāi)了一種提供在處理器中直接執(zhí)行串行化指令的方法與系統(tǒng)。該處理器具有串行化指令及非串行化指令。該處理器包含具有用于執(zhí)行非串行化指令的流水線的執(zhí)行邏輯。該處理器也包含與執(zhí)行邏輯分開(kāi)的用于執(zhí)行串行化指令的邏輯。該方法與系統(tǒng)包括識(shí)別串行化指令,識(shí)別非串行化指令,將非串行化指令提供給執(zhí)行邏輯,及將串行化指令提供給分開(kāi)的邏輯,執(zhí)行串行化指令而不將串行化指令提供給流水線。
文檔編號(hào)G06F9/32GK1225470SQ98125969
公開(kāi)日1999年8月11日 申請(qǐng)日期1998年12月31日 優(yōu)先權(quán)日1998年2月2日
發(fā)明者C·H·奧爾森, J·S·布魯克斯 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司