專利名稱:使用指令相關(guān)性查看深度來改善處理性能的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于通過提高在處理系統(tǒng)中的相關(guān)性查看電路的深度而改善處理性能的方法和裝置。
背景技術(shù):
近些年來,因為切邊(cutting-edge)計算機(jī)應(yīng)用涉及實時、多媒體功能,因此存在對于更快的計算機(jī)處理數(shù)據(jù)通過量的不能滿足的期望。圖形應(yīng)用是對于處理系統(tǒng)有最高的要求的那些應(yīng)用,因為它們在較短的時間中需要大量的數(shù)據(jù)存取、數(shù)據(jù)計算和數(shù)據(jù)操作,以獲得期望的視覺結(jié)果。這些應(yīng)用需要極快的處理速度,諸如處理每秒成千上萬兆比特的數(shù)據(jù)。雖然一些處理系統(tǒng)使用單個處理器來獲得快的處理速度,但是其他處理系統(tǒng)是使用多處理器架構(gòu)而被實現(xiàn)的。在多處理器系統(tǒng)中,多個子處理器可以并行(或至少協(xié)調(diào)地)工作以獲得期望的處理結(jié)果。
半導(dǎo)體處理技術(shù)以大約每18個月的速度提升,當(dāng)前的處理技術(shù)是90納米(nm)。隨著處理技術(shù)的提高,也帶來了處理頻率的提高和結(jié)果產(chǎn)生功耗的增加。雖然頻率的提高改善了處理性能,但是功耗的增加是不期望的。雖然一些人已經(jīng)提出降低工作電壓以降低功耗,但是則具有不期望有的復(fù)雜性泄露電流增加。
發(fā)明內(nèi)容
本發(fā)明的一個或多個實施例可以用于在不提高操作頻率的情況下改善在新的處理技術(shù)中的處理性能,由此控制功耗。按照本發(fā)明,當(dāng)提高處理流水線的指令相關(guān)性查看級的深度時,操作的頻率降低。相關(guān)性查看深度的提高引起在相關(guān)性查看邏輯的復(fù)雜性上的對應(yīng)提高,雖然這被更新的處理技術(shù)的改善的傳播量度補(bǔ)償。相關(guān)性查看深度的提高降低泡沫(它經(jīng)常對于雙精度浮點指令發(fā)生)和改善處理性能。
按照一個或多個實施例,一種方法和裝置用于使用X納米的制造處理來制造處理器,所述處理是比Y納米處理更先進(jìn)的處理;并且響應(yīng)于所述先進(jìn)制造處理而提高處理器的相關(guān)性查看電路的深度,以改善處理功率,其中,所述相關(guān)性查看電路用于確定是否流水線的輸入指令的操作數(shù)依賴于在流水線中正在被執(zhí)行的任何其他指令的操作數(shù)。所述方法也可以包括以頻率F來操作處理器,雖然X納米處理允許大于F的操作頻率,以便降低功耗。
所述方法也可以包括實現(xiàn)相關(guān)性查看電路,以便所述深度等于或大于執(zhí)行指令集的任何指令所需要的最大數(shù)量的時鐘周期。相關(guān)性查看電路可以用于確定是否指令的操作數(shù)在一個時鐘周期中依賴于在流水線中的任何其他指令的操作數(shù)。
應(yīng)當(dāng)注意,在Y納米處理中的傳播延遲可能未被允許在一個時鐘周期中進(jìn)行確定而不論用于測試的操作數(shù)數(shù)量如何,但是在X納米處理中的改善的傳播延遲允許這樣的確定。
按照一個或多個實施例,處理系統(tǒng)可以包括指令執(zhí)行電路,用于使用一個或多個時鐘周期以流水線方式來執(zhí)行在一個指令集中的指令;相關(guān)性查看電路,用于確定是否指令的操作數(shù)依賴于在流水線中的任何其他指令的操作數(shù),其中,相關(guān)聯(lián)性查看電路具有等于或大于執(zhí)行指令集的任何指令所需要的最大數(shù)量的時鐘周期的深度。使用X納米的制造處理技術(shù)來制造所述指令執(zhí)行電路和相關(guān)性查看電路,所述X納米的制造處理技術(shù)是比Y納米處理技術(shù)先進(jìn)的處理技術(shù)。所述指令執(zhí)行電路和相關(guān)性查看電路被適配來工作在頻率F,雖然它們是使用允許大于F的操作頻率的制造處理而被實現(xiàn)的。
通過結(jié)合附圖來說明本發(fā)明,本領(lǐng)域的技術(shù)人員容易明白其他方面、特征、優(yōu)點等。
為了說明本發(fā)明的各個方面,在附圖中示出了當(dāng)前優(yōu)選的形式,但是應(yīng)當(dāng)明白,本發(fā)明不限于所示出的精密裝置和儀器。
圖1示出了可按照本發(fā)明的一個或多個方面而適配的處理系統(tǒng)的結(jié)構(gòu)的框圖;圖2示出了按照本發(fā)明的一個或多個方面的圖1的系統(tǒng)的特定性能參數(shù)的圖;圖3示出了按照本發(fā)明的一個或多個方面的處理系統(tǒng)的傳播量度的一些屬性的框圖;圖4示出了可按照本發(fā)明的一個或多個方面而執(zhí)行的處理步驟的流程圖;圖5示出了具有可按照本發(fā)明的一個或多個方面而適配的兩個或多個處理器的多處理系統(tǒng)的結(jié)構(gòu)圖;圖6示出了可用于實現(xiàn)的本發(fā)明的一個或多個方面的優(yōu)選的處理器元件(PE)的圖;圖7示出了可按照本發(fā)明的一個或多個方面而適配的圖6的系統(tǒng)的示例性子處理單元(SPU)的結(jié)構(gòu)圖;圖8示出了可按照本發(fā)明的一個或多個方面而適配的圖6的系統(tǒng)的示例性處理單元(PU)的結(jié)構(gòu)的圖。
具體實施例方式
參照附圖,其中相同的附圖標(biāo)號表示相同的元件,在圖1中示出了可被適配來執(zhí)行本發(fā)明的一個或多個特征的處理系統(tǒng)100的至少一部分。為了簡潔和清楚,將在此參照和說明用于圖解裝置100的圖1的框圖,但是應(yīng)當(dāng)明白,所述說明可以容易地以等同的效力而被應(yīng)用到方法的各個方面。
最好是使用處理流水線來實現(xiàn)處理系統(tǒng)100,在所述處理流水線中,以流水線方式來處理邏輯指令。雖然所述流水線可以被劃分為任何數(shù)量的用于處理指令的級,但是所述流水線一般包括獲得一個或多個指令,解碼所述指令,查看在指令之間的相關(guān)性,發(fā)出所述指令,并且執(zhí)行所述指令。在這方面,處理系統(tǒng)100可以包括指令緩沖器(未示出)、指令獲取電路102、指令解碼電路104、相關(guān)性查看電路106、指令發(fā)出電路(未示出)和指令執(zhí)行級108。
所述指令獲取電路最好是可操作使從存儲器向指令緩沖器傳送一個或多個指令變得容易,其中,它們被排隊來進(jìn)入流水線。指令緩沖器可以包括多個寄存器,它們可操作以暫時存儲被獲取的指令。指令解碼電路104被適配來中止指令并且產(chǎn)生用于執(zhí)行對應(yīng)的指令的功能的邏輯微操作。例如,所述邏輯微操作可以指定算術(shù)和邏輯運算,向存儲器安裝和存儲的操作,登記源操作數(shù)和/或立即數(shù)據(jù)操作數(shù)。指令解碼電路104也可以指示指令使用那些資源,諸如目標(biāo)寄存器地址、結(jié)構(gòu)資源、功能單元和/或總線。指令解碼電路104也可以提供用于指示其中需要資源的指令流水線級的信息。
在說明相關(guān)性查看電路106之前,將簡述指令執(zhí)行電路108。指令執(zhí)行電路108最好是包括多個浮點和/或定點執(zhí)行級,用于執(zhí)行算術(shù)指令。根據(jù)所需要的處理功率,可以使用更多或更少數(shù)量的浮點執(zhí)行級和定點執(zhí)行級。最為優(yōu)選的是,指令執(zhí)行電路108(以及處理系統(tǒng)100的其他電路)是超級標(biāo)量體系結(jié)構(gòu)的,因此每個時鐘周期發(fā)出和執(zhí)行多個指令。但是,參照任何給定的指令,指令執(zhí)行電路108以多個級來執(zhí)行所述指令,其中,每級需要一個或多個時鐘周期,通常是一個時鐘周期。
相關(guān)性查看電路106包括多個寄存器,其中,一個或多個寄存器與流水線的每個執(zhí)行級相關(guān)聯(lián)。所述寄存器存儲在流水線中正在被執(zhí)行的指令的操作數(shù)的指示(識別編號、注冊編號等)。以圖1中的深度106A元件來表示這些寄存器(或其他的適當(dāng)存儲機(jī)構(gòu))。相關(guān)性查看電路106還包括數(shù)字邏輯電路,用于執(zhí)行測試以確定是否要輸入到流水線的指令的操作數(shù)依賴于已經(jīng)在流水線中存在的其他指令的操作數(shù)。如果如此的話,則不應(yīng)當(dāng)執(zhí)行給定的指令,直到這樣的其他指令被更新(例如,通過允許其他指令來完成執(zhí)行)。
在一個實施例中,所述邏輯電路可以包括多個異或(XOR)門,用于測試指令操作數(shù)相關(guān)性。具體地說,輸入指令的每個操作數(shù)通過與在寄存器106A中的每一項進(jìn)行異或運算而被比較,以確定是否所述操作數(shù)已經(jīng)存在于流水線中。當(dāng)使用多個流水線(在此優(yōu)選)時,XOR計算的數(shù)量增加。更一般而言,由相關(guān)性查看電路106對于給定指令執(zhí)行的比較(例如異或運算)的次數(shù)是在所述給定指令中的操作數(shù)的數(shù)量乘以可以同時被分派的指令的數(shù)量、再乘以可以在每個流水線中的指令的數(shù)量的函數(shù)。因此,相關(guān)性查看電路106的復(fù)雜性可能變得有問題,具體地說是因為相關(guān)性查看電路106優(yōu)選地確定在一個時鐘周期中的相關(guān)性。
現(xiàn)有技術(shù)通過降低相關(guān)性查看的深度、由此降低完成相關(guān)性查看所需要的比較數(shù)量而解決了所述問題。這在當(dāng)輸入的指令需要大量的級(時鐘周期)來完成相關(guān)性查看的深度時導(dǎo)致在流水線中的不期望的泡沫。但是,按照本發(fā)明,相關(guān)性查看電路106的深度不被復(fù)雜性問題所限,而是被允許匹配需要完成最大(或至少近乎最大)數(shù)量的執(zhí)行級的指令。通過指令執(zhí)行電路108的CYCLE N級——它與相關(guān)性查看電路106的DEPTH N匹配——而說明了最大或最高數(shù)量的執(zhí)行級。需要完成最高數(shù)量的執(zhí)行級的指令的示例是雙精確浮點指令。
現(xiàn)在參見圖2,它是按照本發(fā)明的一個或多個方面的圖1的系統(tǒng)100的特定性能參數(shù)的圖形。雖然本發(fā)明不限于任何操作理論,但是已經(jīng)發(fā)現(xiàn)當(dāng)在系統(tǒng)的開發(fā)的制造、設(shè)計、實現(xiàn)和編程階段考慮到這些性能特性時,可以實現(xiàn)以上說明的系統(tǒng)100的有益操作。圖2的圖示出了沿著橫坐標(biāo)軸的時間和沿著縱坐標(biāo)軸的幅度的相對變化。作為時間的函數(shù)的所繪制的幅度包括用于半導(dǎo)體處理系統(tǒng)的可獲得制造處理、用于所述制造處理的傳播量度、所述處理的操作的可能頻率和工作在這樣的頻率的系統(tǒng)的功耗。
所述半導(dǎo)體制造處理技術(shù)以大約每18個月的速度提升,其中,當(dāng)前的處理是90納米。未來的制造處理將可能是65納米、45納米等。當(dāng)制造處理技術(shù)隨著時間而提升時,使用所述制造處理的處理系統(tǒng)的操作頻率以對應(yīng)的方式提升。操作頻率的提升一般改善了系統(tǒng)的處理性能,但是,這樣的頻率的提升伴隨功耗的提高是不期望的。傳播量度也作為制造處理的進(jìn)步的功能而改善。
參照圖3,在此所關(guān)心的傳播量度是通過按照所述制造處理而制造的一系列邏輯門的理論信號傳播延遲。為了在此討論的目的,將信號傳播延遲與特定的時段——諸如一個時鐘周期——相比較。1F04傳播量度表示通過反相器邏輯門的單個級的傳播延遲需要一個時鐘周期。2F04傳播量度表示通過反相器邏輯門的兩個級的單個傳播延遲需要一個時鐘周期。3F04傳播量度表示通過反相器邏輯門的三個級的單個傳播延遲需要一個周期,等等。因此,在從90納米處理到65納米處理的制造處理上的進(jìn)步導(dǎo)致傳播量度的很大改善,諸如從10F04到15F04或20F04等。
參照圖4,按照本發(fā)明的一個或多個方面,使用與90納米不同的例如65納米的先進(jìn)制造處理來制造處理系統(tǒng)100(步驟300)。但是,與傳統(tǒng)方式相反,處理系統(tǒng)100的操作頻率不被提高到與所述先進(jìn)制造處理相關(guān)聯(lián)的理論水平。而是,以較低的水平來建立操作頻率,所述較低水平諸如與先前的制造處理相關(guān)聯(lián)的水平,例如與90納米的處理相關(guān)聯(lián)的理論最大頻率(步驟302)。為了防止向較低的處理性能發(fā)展的趨勢(由于較低的、或非最大化的操作頻率),相關(guān)性查看電路106的深度被提高(步驟304)。雖然當(dāng)所述深度增加時與執(zhí)行相關(guān)性查看的比較相關(guān)聯(lián)的數(shù)字邏輯電路的復(fù)雜性大大增加,但是,由于改善了傳播量度,可以在所述高級處理中包容這樣的復(fù)雜性。事實上,當(dāng)傳播量度例如從10F04向20F04提高時,可能大大地提高可以在相關(guān)性查看電路106的邏輯電路中使用的邏輯門的數(shù)量,而不會折衷在一個時鐘周期內(nèi)進(jìn)行相關(guān)性查看確定的能力。
在題目為“用于通過控制鎖存器點而改善處理性能的方法和裝置”,律師檔案編號535/21,2005年3月14日提交的美國專利申請第____號中給出了可以用于在降低在處理系統(tǒng)中的功耗的同時改善處理性能的其他特征,其在此作為參考而被全部引用。
圖5圖解了被適配來實現(xiàn)本發(fā)明的一個或多個其他實施例的多處理系統(tǒng)600A。系統(tǒng)600A包括多個處理器602A-D、相關(guān)聯(lián)的邏輯存儲器604A-D和通過總線508而互連的共享存儲器506。共享存儲器606也可以在此被稱為組存儲器或系統(tǒng)存儲器。雖然通過舉例來圖解了四個處理器602,但是可以在不脫離本發(fā)明的精神和范圍的情況下使用任何數(shù)量的處理器。處理器602每個可以具有類似的結(jié)構(gòu)或具有不同的結(jié)構(gòu)。
本地存儲器604最好是位于與它們各自的處理器602相同的芯片(相同的半導(dǎo)體基底)上;但是,本地存儲器604最好不是傳統(tǒng)的硬件高速緩沖存儲器,因為傳統(tǒng)的硬件高速緩沖存儲器芯片上或芯片外沒有硬件高速緩沖存儲器電路、高速緩沖存儲器寄存器、高速緩沖存儲器控制器等來實現(xiàn)硬件高速緩沖存儲器功能。
處理器602最好是提供數(shù)據(jù)訪問請求,用于請求通過總線608從系統(tǒng)存儲器606向它們各自的本地存儲器604復(fù)制數(shù)據(jù)(可以包括程序數(shù)據(jù)),以進(jìn)行程序執(zhí)行和數(shù)據(jù)操作。最好是,使用未示出的直接存儲器訪問控制器(DMAC)來實現(xiàn)用于簡化數(shù)據(jù)訪問的機(jī)構(gòu)。每個處理器的DMAC最好是具有與參照本發(fā)明的其他特征的上面討論的基本上相同的能力。
系統(tǒng)存儲器606最好是通過高帶寬存儲器連接(未示出)而耦接到處理器602的動態(tài)隨機(jī)存取存儲器(DRAM)。雖然系統(tǒng)存儲器606最好是DRAM,但是存儲器606也可以使用其他部件來實現(xiàn),所述其他部件例如靜態(tài)隨機(jī)存取存儲器(SRAM)、磁隨機(jī)存取存儲器(MRAM)、光存儲器、全息存儲器等。
最好使用處理流水線來實現(xiàn)每個處理器602,在所述處理流水線中,以流水線方式來處理邏輯指令。雖然可以將流水線劃分為處理指令的任何數(shù)量的級,但是所述流水線一般包括獲取一個或多個指令,解碼所述指令,查看在所述指令之間的相關(guān)性,發(fā)出所述指令,并且執(zhí)行所述指令。在這個方面,處理器602可以包括指令緩沖器、指令解碼電路、相關(guān)性查看電路、指令發(fā)出電路和執(zhí)行級。
與上述的本發(fā)明的實施例相同,一個或多個處理器602(最好是它們?nèi)?是使用高級制造處理(例如與Y納米不同的X納米)而被制造的,并且被適配工作在頻率F,雖然X納米處理允許大于頻率F的操作頻率。(這導(dǎo)致功耗的降低)。而且,響應(yīng)于所述高級制造處理而提高所述一個或多個處理器602的相關(guān)性查看電路的深度,以改善處理功率。相關(guān)性查看電路可以使用邏輯電路來確定是否處理器602的流水線的輸入指令的操作數(shù)依賴于在流水線中正在被執(zhí)行的任何其他指令的操作數(shù)。X納米制造處理的傳播量度的提高包容了邏輯電路的復(fù)雜性的增加。
在一個或多個實施例中,處理器602和本地存儲器604可以被設(shè)置在公共的半導(dǎo)體基底上。在一個或多個實施例中,共享的存儲器606也可以被設(shè)置在公共半導(dǎo)體基底上,或者可以將其獨立地設(shè)置。
在一個或多個另外的實施例中,一個或多個處理器602可以作為主處理器工作,它與其他處理器602工作耦接,并且能夠通過總線608而耦接到共享存儲器606。主處理器可以通過其他處理器602來調(diào)度和編制數(shù)據(jù)的處理。但是,不像其他的處理器602那樣,主處理器可以耦接到硬件高速緩沖存儲器,它用于高速緩沖從所述共享存儲器606和處理器602的一個或多個本地存儲器504中的至少一個獲得的數(shù)據(jù)。主處理器可以提供數(shù)據(jù)訪問請求,用于請求通過總線608從系統(tǒng)存儲器606向高速緩沖存儲器中復(fù)制數(shù)據(jù)(它可以包括程序數(shù)據(jù)),以使用任何公知的技術(shù)——諸如DMA技術(shù)——來進(jìn)行程序執(zhí)行和數(shù)據(jù)操作。
現(xiàn)在說明適合于執(zhí)行在此說明的一個或多個特征的多處理器系統(tǒng)的優(yōu)選計算機(jī)架構(gòu)。按照一個或多個實施例,所述多處理器系統(tǒng)可以被實現(xiàn)為可用于媒體豐富應(yīng)用的單獨和/或分布處理的單片解決方案,所述媒體豐富應(yīng)用諸如游戲系統(tǒng)、家用終端、PC系統(tǒng)、服務(wù)器系統(tǒng)和工作站。在諸如游戲系統(tǒng)和家用終端之類的一些應(yīng)用中,可能需要實時計算。例如,在實時的分布游戲應(yīng)用中,需要足夠迅速地執(zhí)行一個或多個聯(lián)網(wǎng)圖像解壓縮、3D計算機(jī)圖形、音頻產(chǎn)生、網(wǎng)絡(luò)通信、物理模擬和人工智能處理,以向用戶提供實時體驗的幻覺。因此,在多處理器系統(tǒng)中的每個處理器必須在短的和可預(yù)測的時間中完成任務(wù)。
為此并且按照這種計算機(jī)架構(gòu),從公共計算模塊(或單元)構(gòu)造多處理器計算機(jī)系統(tǒng)的所有處理器。這個公共計算模塊具有相容的結(jié)構(gòu),并且最好使用相同的指令集架構(gòu)。多處理計算機(jī)系統(tǒng)可以由一個或多個客戶機(jī)、服務(wù)器、PC、移動計算機(jī)、游戲機(jī)、PDA、機(jī)頂盒、電器、數(shù)字電視機(jī)和使用計算機(jī)處理器的其他器件形成。
如果期望的話,則多個計算機(jī)系統(tǒng)也可以是網(wǎng)絡(luò)的成員。所述相容部件結(jié)構(gòu)使得多處理計算機(jī)系統(tǒng)進(jìn)行有效地高速處理應(yīng)用和數(shù)據(jù),并且如果使用網(wǎng)絡(luò),則使得能夠迅速通過網(wǎng)絡(luò)來傳輸應(yīng)用和數(shù)據(jù)。這種結(jié)構(gòu)也簡化了建立各種大小和處理功率的網(wǎng)絡(luò)的成員以及通過這些成員處理的應(yīng)用的準(zhǔn)備。
參照圖6,基本處理模塊是處理元件(PE)500。PE 500包括輸入/輸出接口502、處理單元(PU)504和多個子處理單元508,即子處理單元508A、子處理單元508B、子處理單元508C和子處理單元508D。本地(或內(nèi)部)PE總線512在PU 504、子處理單元508和存儲器接口511之間傳輸數(shù)據(jù)和應(yīng)用。本地PE總線512可以具有例如傳統(tǒng)的架構(gòu),或者可以被實現(xiàn)為分組交換的網(wǎng)絡(luò)。如果被實現(xiàn)為分組交換網(wǎng)絡(luò),則在需要更多的硬件的同時提高了可用帶寬。
可以使用用于實現(xiàn)數(shù)字邏輯電路的各種方法來構(gòu)建PE 500。但是,最好將PE 500構(gòu)建為使用在硅基底上的互補(bǔ)金屬氧化物半導(dǎo)體(CMOS)的單片集成電路?;椎奶娲牧习ㄉ榛?、砷化鎵鋁和使用大量摻雜劑的其他所謂III-B化合物。也可以使用超導(dǎo)材料——諸如快速單通量(rapidsingle-flux-quantum)(RSFQ)邏輯——來實現(xiàn)PE 500。
PE 500通過高帶寬存儲器連接516而與共享(主)存儲器514緊密相關(guān)聯(lián)。雖然存儲器514最好是動態(tài)隨機(jī)存取存儲器(DRAM),但是也可以使用其他部件來實現(xiàn)存儲器514,所述其他部件諸如靜態(tài)隨機(jī)存取存儲器(SRAM)、磁隨機(jī)存取存儲器(MRAM)、光存儲器、全息存儲器等。
PE 504和子處理單元508最好每個耦接到包括直接存儲器存取DMA功能的存儲流控制器(MFC),它與存儲器接口511相結(jié)合來簡化在DRAM 514和PE 500的子處理單元508和PU 504之間的數(shù)據(jù)傳送。應(yīng)當(dāng)注意,所述DMAC和/或存儲器接口511可以相對于子處理單元508和PU 504而集成地或分離地設(shè)置。事實上,DMAC功能和/或存儲器接口511功能可以與子處理單元508和PU 504的一個或多個(最好全部)集成。還應(yīng)當(dāng)注意,DRAM 514可以相對于PE 500而集成地或分離地設(shè)置。例如,DRAM 514可以如圖所示被設(shè)置在芯片外,或者,DRAM 514可以以集成的方式而被設(shè)置在芯片上。
PU 504可以是例如能夠單獨處理數(shù)據(jù)和應(yīng)用的標(biāo)準(zhǔn)處理器。在操作中,PU 504最好調(diào)度和編制通過子處理單元的數(shù)據(jù)和應(yīng)用的處理。子處理單元最好是單個指令、多數(shù)據(jù)(SIMD)處理器。在PU 504的控制下,子處理單元以并行和獨立的方式執(zhí)行這些數(shù)據(jù)和應(yīng)用的處理。最好使用PowerPC芯來實現(xiàn)PU504,所述PowerPC芯是使用精簡指令集計算(RISC)技術(shù)的微處理器架構(gòu)。RISC使用簡單指令的組合來執(zhí)行更復(fù)雜的指令。因此,處理器的定時可以基于更簡單和更快的操作,使得微處理器能夠?qū)τ诮o定的時鐘速度執(zhí)行更多的指令。
應(yīng)當(dāng)注意,可以通過作為主處理單元的角色的子處理單元508之一來實現(xiàn)PU 504,所述主處理單元通過子處理單元508調(diào)度和編制數(shù)據(jù)和應(yīng)用的處理。而且,可以有在處理器元件500中實現(xiàn)的多個PU。
按照這種模塊結(jié)構(gòu),由特定計算機(jī)系統(tǒng)使用的PE 500的數(shù)量基于那個系統(tǒng)所需要的處理功率。例如,服務(wù)器可以使用四個PE 500,工作站可以使用兩個PE 500,PDA可以使用一個PE 500。被分配來處理特定軟件單元的PE500的子處理單元的數(shù)量依賴于在所述單元中的程序和數(shù)據(jù)的復(fù)雜性和量值。
圖7示出了子處理單元(SPU)508的優(yōu)選結(jié)構(gòu)和功能。SPU 508架構(gòu)最好填充在通用處理器(被設(shè)計為在一寬的應(yīng)用范圍實現(xiàn)高平均性能)和專用處理器(被設(shè)計為在單個應(yīng)用范圍的獲得高性能)之間的空白。SPU 508被設(shè)計來實現(xiàn)在游戲應(yīng)用、媒體應(yīng)用、寬帶系統(tǒng)等上的高性能,并且向?qū)崟r應(yīng)用的程序員提供高度的控制。SPU 508的一些能力包括圖形幾何流水線、表面細(xì)分、快速傅立葉變換、圖像處理關(guān)鍵字、流處理、MPEG編碼/解碼、加密、解密、器件驅(qū)動器擴(kuò)展、模型化、游戲物理、內(nèi)容建立和音頻合成及處理。
子處理單元508包括兩個基本功能單元,即SPU芯510A和存儲流控制器(MFC)510B。SPU芯510A進(jìn)行程序執(zhí)行、數(shù)據(jù)操作等,而MFC 510B執(zhí)行與在系統(tǒng)的SPU芯510A和DRAM 514之間的數(shù)據(jù)傳送相關(guān)聯(lián)的功能。
SPU芯510A包括本地存儲器550、指令單元(IU)552、寄存器554、一個或多個浮點執(zhí)行級556和一個或多個定點執(zhí)行級558。最好使用諸如SRAM之類的單端口隨機(jī)存取存儲器來實現(xiàn)本地存儲器550。盡管多數(shù)處理器通過使用高速緩沖存儲器而減少對存儲器的等待時間,但是SPU芯510A實現(xiàn)了較小的本地存儲器550而不是一個高速緩沖存儲器。事實上,為了向?qū)崟r應(yīng)用(和在此所述的其他應(yīng)用)的程序員提供相容和可預(yù)測的存儲器訪問等待時間,不優(yōu)選在SPU 508A內(nèi)的高速緩沖存儲器架構(gòu)。高速緩沖存儲器的高速緩沖存儲器選中/丟失特性導(dǎo)致易失性存儲器訪問次數(shù)從幾個周期到幾百個周期的變化。這樣的易變性削減了在例如實時應(yīng)用編程中期望的訪問定時可預(yù)測性??梢酝ㄟ^將DMA傳送與數(shù)據(jù)計算重疊來在本地存儲器SRAM 550中實現(xiàn)等待時間隱藏。這向?qū)崟r應(yīng)用的編程提供了高度的控制。在與DMA傳送相關(guān)聯(lián)的等待時間和指令開銷超過服務(wù)高速緩沖存儲器丟失的等待時間的開銷的情況下,SRAM本地存儲器手段當(dāng)DMA傳送大小足夠大并且充分可預(yù)測時獲得優(yōu)點(例如,可以在需要數(shù)據(jù)之前發(fā)出DMA命令)。
在給定的一個子處理單元508上運行的程序使用本地地址來引用相關(guān)聯(lián)的本地存儲器550,但是,本地存儲器550的每個位置也被在整個系統(tǒng)的存儲空間分配中賦于一實際地址(RA)。這就允許特權(quán)軟件可以將本地存儲器550映射到一處理的有效地址(EA)以簡單化在一個本地存儲器550和另一個本地存儲器550之間的DMA傳送。PU 504也可以使用有效地址來直接地訪問本地存儲器550。在一個優(yōu)選實施例中,本地存儲器550包含256千字節(jié)的存儲量,并且寄存器552的容量是128×128比特。
最好是使用處理流水線來實現(xiàn)SPU芯504A,在所述處理流水線中,以流水線方式來處理邏輯指令。雖然可以將流水線劃分為任何數(shù)量的處理指令的級,但是流水線一般包括獲取一個或多個指令、解碼所述指令、查看在所述指令之間的相關(guān)性,發(fā)出所述指令,并且執(zhí)行所述指令。在這個方面,IU 552包括指令緩沖器、指令解碼電路、相關(guān)性查看電路和指令發(fā)出電路。
指令緩沖器最好是包括多個寄存器,它們耦接到本地存儲器550,并且用于暫時存儲被獲取的指令。指令緩沖器最好是工作使得所有的指令作為一個組、即基本上同時地離開寄存器。雖然指令緩沖器可以是任何大小,但是最好是具有不大于大約2或3個寄存器的大小。
一般,解碼電路中止指令,并且產(chǎn)生用于執(zhí)行對應(yīng)的指令的功能的邏輯微操作。例如,邏輯微操作可以指定算術(shù)和邏輯操作,向本地存儲器550安裝和存儲的操作,登記源操作數(shù)和/或即時的數(shù)據(jù)操作數(shù)。解碼電路也可以指示指令使用那些資源,諸如目標(biāo)寄存器地址、結(jié)構(gòu)資源、功能單元和/或總線。解碼電路也可以提供指示其中需要資源的指令流水線級的信息。最好是指令解碼電路用于基本上同時地解碼等于指令緩沖器的寄存器數(shù)量的多個指令。
相關(guān)性查看電路包括數(shù)字邏輯電路,用于執(zhí)行測試以確定是否給定指令的操作數(shù)依賴于在流水線中的其他指令的操作數(shù)。如果是的話,則不執(zhí)行給定的指令,直到這樣的其他操作數(shù)被更新(例如通過其他指令完成執(zhí)行)。最好是相關(guān)性查看電路確定同時從解碼器電路112分發(fā)的多個指令的相關(guān)性。
指令發(fā)出電路用于向浮點執(zhí)行級556和/或定點執(zhí)行級558發(fā)出指令。
最好是寄存器554作為較大的同一寄存器文件被實施,諸如128個輸入項寄存器文件。這允許深度流水線高頻實施,而不需要寄存器重新命名以避免寄存器不足的情況。重新命名硬件通常在處理系統(tǒng)中消耗大部分區(qū)域和功率。因此,當(dāng)通過軟件循環(huán)展開或其他交織技術(shù)來覆蓋等待時間時,可以實現(xiàn)有益的操作。
最好是SPU芯510A具有超標(biāo)量體系結(jié)構(gòu),以便每個時鐘周期發(fā)出多個指令。最好是SPU芯510A作為超標(biāo)量體系結(jié)構(gòu)工作在對應(yīng)于從指令緩沖器的同時指令分配的數(shù)量——諸如在2和3之間(表示每個時鐘周期發(fā)出兩個或三個指令)——的程度。根據(jù)所需要的處理功率,可以使用更大或更小數(shù)量的浮點執(zhí)行級556和定點執(zhí)行級558。在一個優(yōu)選實施例中,浮點執(zhí)行級556工作在每秒32千兆浮點操作的速度(32GFLOPS),而定點執(zhí)行級558工作在每秒32千兆操作的速度(32GOPS)。
MFC 510B最好是包括總線接口單元(BIU)564、存儲器管理單元(MMU)562和直接存儲器訪問控制器(DMAC)560。除了DMAC之外,MFC510B最好與SPU芯510A和總線512相比較以半頻率(半速)來運行以滿足低功耗設(shè)計目標(biāo)。MFC 510B用于處理從總線512進(jìn)入SPU 508的數(shù)據(jù)和指令,向DMAC提供地址解譯,并且執(zhí)行用于數(shù)據(jù)相關(guān)性的探聽操作。BIU 564在總線512和MMU 562和DMAC 560之間提供接口。因此,SPU 508(包括SPU芯510A和MFC 510B)和DMAC 560物理地和/或邏輯地連接到總線512。
最好是MMU 562用于將(從DMA命令獲得的)有效地址解譯為用于存儲器訪問的真實地址。例如,MMU 562可以將所述有效地址的高階比特解譯為真實地址比特。但是,最好是低階地址比特是不可解譯的,并且在用于形成真實地址和請求訪問存儲器中被當(dāng)作邏輯和物理的。在一個或多個實施例中,MMU 562可以根據(jù)64比特存儲器管理模型而被實現(xiàn),并且可以提供264字節(jié)的有效地址空間,它具有4K-、64K-、1M-和16M-字節(jié)的頁面大小和256MB的段大小。最好是MMU 562用于支持最多265字節(jié)的虛擬存儲器和242字節(jié)(4個萬億字節(jié))的用于DMA命令的物理存儲器。MMU 562的硬件可以包括8輸入項的全關(guān)聯(lián)的SLB、256輸入項的4路設(shè)置關(guān)聯(lián)TLB和TLB的4x4替代管理表(RMT)——用于硬件TLB丟失處理。
最好是DMAC 560用于管理來自SPU芯510A和諸如PU 504和/或其他SPU之類的一個或多個其他器件的DMA命令。可以有三種DMA命令放置(Put)命令,它用于將數(shù)據(jù)從本地存儲器550移動到共享存儲器514;獲取(Get)命令,它用于將數(shù)據(jù)從共享存儲器514移動到本地存儲器550;以及存儲控制(Storage Control)命令,它包括SLI命令和同步命令。所述同步命令可以包括原子(atomic)命令、發(fā)送信號命令和專用的勢壘(barrier)命令。響應(yīng)于DMA命令,MMU 562將有效地址解譯為真實地址,并且真實地址被轉(zhuǎn)發(fā)到BIU 564。
最好是SPU芯510A使用通道接口和數(shù)據(jù)接口來與在DMAC 560中的接口通信(發(fā)送DMA命令、狀態(tài)等)。SPU芯510A通過通道接口向在DMAC 560中的DMA隊列分派DMA命令。一旦DMA命令在DMA隊列中,則它由在DMAC 560中的發(fā)出和完成邏輯處理。當(dāng)結(jié)束DMA命令的所有總線事務(wù)時,通過通道接口向SPU芯510A發(fā)回完成信號。
圖8示出了PU 504的優(yōu)選結(jié)構(gòu)和功能。PU 504包括兩個基本功能單元PU芯504A和存儲流控制器(MFC)504B。PU芯504A執(zhí)行程序操作、數(shù)據(jù)操作、多處理器管理功能等,而MFC 504B執(zhí)行與在PU芯504A和系統(tǒng)100的存儲器空間之間的數(shù)據(jù)傳送相關(guān)聯(lián)的功能。
PU芯504A可以包括L1高速緩沖存儲器570、指令單元572、寄存器574、一個或多個浮點執(zhí)行級576和一個或多個定點執(zhí)行級578。L1高速緩沖存儲器提供了對于通過MFC 504B從共享存儲器606、處理器602或存儲空間的其他部分接收的數(shù)據(jù)的數(shù)據(jù)高速緩沖功能。當(dāng)PU芯504A最好被實現(xiàn)為超級流水線時,指令單元572最好被實現(xiàn)為具有多個級的指令流水線,所述多個級包括獲取、解碼、相關(guān)性查看、發(fā)出等。PU芯504A最好是具有超標(biāo)量配置,由此每個時鐘周期從指令單元572發(fā)出多個指令。為了實現(xiàn)高處理功率,浮點執(zhí)行級576和定點執(zhí)行級578包括在流水線配置中的多個級。根據(jù)所需要的處理功率,可以使用更多或更少數(shù)量的浮點執(zhí)行級576和定點執(zhí)行級578。
MFC 504B包括總線接口單元(BIU)580、L2高速緩沖存儲器、非可高速緩沖單元(NCU)584、芯接口單元(CIU)586和存儲器管理單元(MMU)588。與PU芯504A和總線108相比較,多數(shù)MFC 504B以半頻(半速)運行,以滿足低功耗設(shè)計目標(biāo)。
BIU 580提供了在總線608和L2高速緩沖存儲器582和NCU 584邏輯塊之間的接口。為此,BIU 580可以作為在總線608上的主器件以及從器件,以便完全地執(zhí)行全相干的存儲器操作。作為主器件,它可以向總線608發(fā)送安裝/存儲請求以代表L2高速緩沖存儲器582和NCU 584來進(jìn)行服務(wù)。BIU580也可以實現(xiàn)命令的流控制機(jī)制,用于限制可以被發(fā)送到總線608的命令的總數(shù)。在總線608上的數(shù)據(jù)操作可以被設(shè)計來獲得8個節(jié)拍(bear),因此,BIU 580最好被設(shè)計為圍繞128字節(jié)的高速緩沖存儲器線,并且相干和同步粒度(granularity)是128KB。
最好是L2高速緩沖存儲器582(和支持硬件邏輯電路)被設(shè)計來高速緩沖512KB的數(shù)據(jù)。例如,L2高速緩沖存儲器582可以處理可高速緩沖的安裝/存儲、數(shù)據(jù)預(yù)先獲取、指令獲取、指令預(yù)先獲取、高速緩沖存儲器操作和勢壘操作。L2高速緩沖存儲器582最好是8路設(shè)置關(guān)聯(lián)系統(tǒng)。L2高速緩沖存儲器582可以包括匹配6個舍去(castout)隊列(例如6個RC裝置)的六個重新安裝隊列和8個(64字節(jié)寬的)存儲隊列。L2高速緩沖存儲器582可以用于提供在L1高速緩沖存儲器570中的一些或全部數(shù)據(jù)的備份拷貝。有益的是,當(dāng)處理節(jié)點被熱交換時在恢復(fù)狀態(tài)中是有用的。這種配置還允許L1高速緩沖存儲器570使用較少的端口來更快地操作,并且允許更快的高速緩沖存儲器到高速緩沖存儲器的傳送(因為所述請求可能在L2高速緩沖存儲器582停止)。這種配置還提供了用于將高速緩沖存儲器相干管理傳送到L2高速緩沖存儲器582的機(jī)制。
NCU 584與CIU 586、L2高速緩沖存儲器582和BIU 580連接,并且一般作為用于在PU芯504A和存儲器系統(tǒng)之間的非可高速緩沖的操作的排隊/緩沖電路。NCU 584最好是處理與不由L2高速緩沖存儲器582處理的諸如禁止高速緩沖的安裝/存儲、勢壘操作和高速緩沖存儲器相干操作的PU芯504A的所有通信。NCU 584最好是以半速來運行以滿足上述的功耗目標(biāo)。
CIU 586被設(shè)置在MFC 504B和PU芯504A的邊界上,并且對于來自執(zhí)行級576、578、指令單元572和MMU單元588并且去往L2高速緩沖存儲器582和NCU 584的請求作為取路由、仲裁和流控制點。PU芯504A和MMU588最好以全速來運行,而L2高速緩沖存儲器582和NCU 584以2∶1的速度比可操作。因此,在CIU 586中存在頻率邊界,并且其功能之一是當(dāng)它轉(zhuǎn)發(fā)請求和在兩個頻域之間重新安裝數(shù)據(jù)時正確地處理頻率交叉。
CIU 586包括三個功能塊安裝單元、存儲單元和重新安裝單元。另外,數(shù)據(jù)預(yù)先獲取功能由CIU 586執(zhí)行,并且最好是是安裝單元的一個功能元件。CIU 586最好是用于(i)接受來自PU芯504A和MMU 588的安裝和存儲請求;(ii)將請求從全速時鐘頻率轉(zhuǎn)換為半速(2∶1時鐘頻率轉(zhuǎn)換);(iii)將可高速緩沖的請求取路由到L2高速緩沖存儲器582,并且將不可高速緩沖的請求取路由到NCU 584;(iv)在到L2高速緩沖存儲器582的請求和到NCU 584的請求之間合理地仲裁;(v)對于向L2高速緩沖存儲器582和NCU 584的分配提供流控制,以便在目標(biāo)窗口中接收到請求,并且避免溢出;(vi)接受安裝返回數(shù)據(jù),并且將其路由到執(zhí)行級576、578、指令單元572或MMU 588;(vii)向執(zhí)行級576、578、指令單元572或MMU 588傳送探聽請求;(viii)將安裝返回數(shù)據(jù)和探聽通信量從半速轉(zhuǎn)換到全速。
MMU 588最好諸如通過第二級地址解譯裝置而提供PU芯540A的地址解譯。最好是通過可以比MMU 588更小和更快的獨立指令和數(shù)據(jù)ERAT(對真實地址解譯有效)陣列來在PU芯504A中提供第一級解譯。
在一個優(yōu)選實施例中,PU 504使用64比特實現(xiàn)方式以4-6GHz、10F04來操作。寄存器最好64比特長(雖然一個或多個專用的寄存器可能更小),并且有效地址是64比特長。最好是使用PowerPC技術(shù)來實現(xiàn)指令單元572、寄存器574和執(zhí)行級576和578,用于實現(xiàn)(RISC)計算技術(shù)。
在美國專利第6,526,491——作為參考在此引用其全部內(nèi)容——中提供了關(guān)于這種計算機(jī)系統(tǒng)的模塊結(jié)構(gòu)的另外的細(xì)節(jié)。
按照本發(fā)明的至少-個另一個方面,可以利用適當(dāng)?shù)挠布T如在附圖中所示的——來實現(xiàn)上述的方法和裝置。可以利用任何公知技術(shù)、可操作來執(zhí)行軟件和/或固件程序的任何公知處理器、一個或多個可編程數(shù)字器件或系統(tǒng)、可編程陣列邏輯器件(PAL)等來實現(xiàn)這樣的硬件,所述公知技術(shù)諸如標(biāo)準(zhǔn)數(shù)字電路,所述可編程數(shù)字器件或系統(tǒng)諸如可編程只讀存儲器(PROM)。而且,雖然在附圖中所示的裝置被示出為被劃分為特定的功能塊,但是這樣的塊可以通過獨立的電路來被實現(xiàn),并且/或者被組合為一個或多個功能單元。另外,可以通過軟件和/或固件程序來實現(xiàn)本發(fā)明的各個方面,所述軟件和/或固件程序可以被存儲在適當(dāng)?shù)拇鎯橘|(zhì)或媒體(諸如軟盤、存儲芯片等)上以便攜和/或分發(fā)。
雖然在此已經(jīng)參照特定的實施例而說明了本發(fā)明,但是應(yīng)當(dāng)明白,這些實施例僅僅是說明本發(fā)明的原理和應(yīng)用。因此應(yīng)當(dāng)明白,可以對于所述說明性實施例進(jìn)行多種修改,并且可以在不脫離所附的權(quán)利要求所定義的本發(fā)明的精神和范圍的情況下設(shè)計其他的設(shè)置。
權(quán)利要求
1.一種方法,包括使用X納米的制造處理來制造處理器,所述X納米制造處理是比Y納米處理更高級的處理;并且響應(yīng)于改善處理功率的高級制造處理而提高所述處理器的相關(guān)性查看電路的深度,其中,所述相關(guān)性查看電路可用于確定是否輸入流水線的指令的操作數(shù)依賴于正在流水線中執(zhí)行的任何其他指令的操作數(shù)。
2.按照權(quán)利要求1的方法,還包括雖然所述X納米的處理允許大于F的操作頻率,但是以頻率F來操作所述處理器,以便降低功耗。
3.按照權(quán)利要求2的方法,其中,相關(guān)性查看電路的深度的提高了防止由操作的低頻導(dǎo)致的降低處理功率的趨勢。
4.按照權(quán)利要求1-3中的一個權(quán)利要求的方法,還包括實現(xiàn)相關(guān)性查看電路,以便所述深度等于或大于執(zhí)行指令集的任何指令所需要的時鐘周期的最大數(shù)量。
5.按照權(quán)利要求1-3中的一個權(quán)利要求的方法,還包括進(jìn)行確定是否指令的操作數(shù)在一個時鐘周期內(nèi)依賴于在流水線中的任何其他指令的操作數(shù)。
6.按照權(quán)利要求5的方法,其中,在Y納米處理中的傳播延遲不允許在一個時鐘周期內(nèi)進(jìn)行確定,而不論要測試的操作數(shù)的數(shù)量如何,但是在X納米處理中的改善的傳播延遲允許這樣的確定。
7.一種方法,包括以流水線方式執(zhí)行在處理器的指令執(zhí)行電路中的指令集的指令,以便在一個或多個時鐘周期中執(zhí)行每個指令;并且使用所述處理器的相關(guān)性查看電路來確定是否指令的操作數(shù)依賴于在流水線中的任何其他指令的操作數(shù),其中,相關(guān)性查看電路具有等于或大于執(zhí)行所述指令集中的任何指令所需要的時鐘周期的最大數(shù)量的深度。
8.按照權(quán)利要求7的方法,還包括進(jìn)行確定是否指令的操作數(shù)在一個時鐘周期中依賴于在流水線中的任何其他指令的操作數(shù)。
9.按照權(quán)利要求8的方法,還包括雖然使用允許大于F的頻率的制造處理來實現(xiàn)處理器,但是以頻率F來操作處理器。
10.一種處理系統(tǒng),包括指令執(zhí)行電路,用于使用一個或多個時鐘周期以流水線方式執(zhí)行指令集的指令;以及相關(guān)性查看電路,用于確定是否指令的操作數(shù)依賴于在流水線中的任何其他指令的操作數(shù),其中,相關(guān)性查看電路具有等于或大于執(zhí)行指令集的任何指令所需要的時鐘周期的最大數(shù)量的深度。
11.按照權(quán)利要求10的處理系統(tǒng),還包括指令獲取電路,用于檢索用于在流水線中的處理的指令集的指令;以及,指令解碼電路,用于將所檢索的指令在執(zhí)行之前轉(zhuǎn)換為微操作。
12.按照權(quán)利要求10或11的操作系統(tǒng),其中使用X納米的制造處理來制造至少指令執(zhí)行電路和相關(guān)性查看電路,所述X納米的制造處理是比Y納米處理更高級的處理;由于傳播延遲而不允許使用Y納米處理的所述相關(guān)性查看電路的深度;并且在X納米處理中的改善的傳播延遲允許所述相關(guān)性查看電路的這樣的深度。
13.按照權(quán)利要求10或11的處理系統(tǒng),其中,所述相關(guān)性查看電路用于進(jìn)行確定是否指令的操作數(shù)在一個時鐘周期內(nèi)依賴于在流水線中的任何其他指令的操作數(shù)。
14.按照權(quán)利要求13的處理系統(tǒng),其中使用X納米的制造處理來制造至少指令執(zhí)行電路和相關(guān)性查看電路,所述X納米的制造處理是比Y納米處理更高級的處理;在Y納米處理中的傳播延遲將不允許在一個時鐘周期中進(jìn)行確定,而不論要測試的操作數(shù)的數(shù)量如何;并且在X納米處理中的改善的傳播延遲允許這樣的確定。
15.按照權(quán)利要求10或11的處理系統(tǒng),其中使用X納米的處理來制造至少指令執(zhí)行電路和相關(guān)性查看電路,所述X納米的制造處理是比Y納米處理更高級的處理;并且雖然X納米處理將允許大于F的操作頻率,所述處理系統(tǒng)被適配來以頻率F操作,以便降低功耗。
16.按照權(quán)利要求15的處理系統(tǒng),其中,所述相關(guān)性查看電路的深度的提高了防止從較低的操作頻率導(dǎo)致的降低處理功率的趨勢。
17.一種裝置,包括指令執(zhí)行電路,用于執(zhí)行在流水線中的指令集的指令,所述流水線包括多個級,它們具有足夠的深度來執(zhí)行所述指令集的任何指令;以及相關(guān)性查看電路,具有(i)與流水線的每個集相關(guān)聯(lián)的一個或多個寄存器,該寄存器用于存儲在流水線中正在被執(zhí)行的指令的操作數(shù)的指示,(ii)邏輯電路,用于確定是否隨后的指令的操作數(shù)依賴于由寄存器指示的操作數(shù),其中,所述指令執(zhí)行電路和相關(guān)性查看電路被適配來以頻率F操作,雖然它們是使用允許大于F的操作頻率的制造處理而被實現(xiàn)的。
18.按照權(quán)利要求17的裝置,其中,所述相關(guān)性查看電路具有等于或大于執(zhí)行指令集的任何指令所需要的時鐘周期的最大數(shù)量的深度。
19.按照權(quán)利要求17或18的裝置,其中,所述相關(guān)性查看電路用于進(jìn)行確定是否指令的操作數(shù)在一個時鐘周期內(nèi)依賴于在流水線中的任何其他指令的操作數(shù)。
20.按照權(quán)利要求17或18的裝置,還包括多個處理器,每個處理器包括所要求保護(hù)的指令執(zhí)行電路和相關(guān)性查看電路。
21.按照權(quán)利要求20的裝置,其中,在公共半導(dǎo)體基底上制造處理器。
22.按照權(quán)利要求21的裝置,其中,每個處理器還包括本地存儲器,其中,存儲用于要執(zhí)行的指令。
23.按照權(quán)利要求21的裝置,其中使用X納米的制造處理來制造處理器,所述X納米的制造處理是比Y納米處理更高級的處理;由于傳播延遲,相關(guān)性查看電路的寄存器和邏輯電路不可用于使用Y納米處理來在一個時鐘周期內(nèi)確定是否隨后的指令的操作數(shù)依賴于由寄存器指示的操作數(shù);并且在X納米處理中的改善的傳播延遲允許所述相關(guān)性查看電路的這樣的操作。
全文摘要
本發(fā)明的方法和裝置用于使用X納米的制造處理而制造處理器,所述X納米的制造處理是比Y納米處理更高級的處理;響應(yīng)于所述高級制造處理而提高所述處理器的相關(guān)性查看電路的深度,以改善處理功率,其中,所述相關(guān)性查看電路用于確定是否輸入流水線的指令的操作數(shù)依賴于在流水線中正在被執(zhí)行的任何其他指令的操作數(shù)。
文檔編號G06F9/38GK1834852SQ20061005912
公開日2006年9月20日 申請日期2006年3月14日 優(yōu)先權(quán)日2005年3月14日
發(fā)明者笠原榮二 申請人:索尼計算機(jī)娛樂公司