合到二級(L2) 高速緩存單元176。在一個示例性實施例中,存儲器訪問單元164可以包括加載單元、存儲 地址單元和存儲數(shù)據(jù)單元,這些單元中的每一個單元親合到存儲器單元170中的數(shù)據(jù)TLB 單元172。指令高速緩存單元134還耦合到存儲器單元170中的二級(L2)高速緩存單元 176。L2高速緩存單元176耦合到一個或多個其他級的高速緩存,并最終耦合到主存儲器。
[0028] 作為示例,示例性寄存器重命名的、無序發(fā)布/執(zhí)行核架構(gòu)可以如下實現(xiàn)流水線 100 :1)指令取出138執(zhí)行取出和長度解碼級102和104 ;2)解碼單元140執(zhí)行解碼級106 ; 3)重命名/分配器單元152執(zhí)行分配級108和重命名級110 ;4)調(diào)度器單元156執(zhí)行調(diào)度 級112 ;5)物理寄存器組單元158和存儲器單元170執(zhí)行寄存器讀取/存儲器讀取級114 ; 執(zhí)行群集160執(zhí)行執(zhí)行級116 ;6)存儲器單元170和物理寄存器組單元158執(zhí)行寫回/存 儲器寫入級118 ;7)各單元可牽涉到異常處理級122 ;以及8)引退單元154和物理寄存器 組單元158執(zhí)行提交級124。
[0029] 核190可支持一個或多個指令集(例如,x86指令集(具有與較新版本一起添加 的一些擴展);加利福尼亞州桑尼維爾市的MIPS技術(shù)公司的MIPS指令集;加利福尼州桑尼 維爾市的ARM控股的ARM指令集(具有諸如NEON等可選附加擴展)),其中包括本文中描述 的各指令。在一個實施例中,核190包括用于支持緊湊數(shù)據(jù)指令集擴展(例如,AVXUAVX2 和/或先前描述的一些形式的通用向量友好指令格式(U = 0和/或U = 1))的邏輯,從而 允許很多多媒體應(yīng)用使用的操作能夠使用緊湊數(shù)據(jù)來執(zhí)行。
[0030] 應(yīng)當理解,核可支持多線程化(執(zhí)行兩個或更多個并行的操作或線程的集合),并 且可以按各種方式來完成該多線程化,此各種方式包括時分多線程化、同步多線程化(其 中單個物理核為物理核正在同步多線程化的各線程中的每一個線程提供邏輯核)、或其組 合(例如,時分取出和解碼以及此后諸如用丨ntel?,超線程化技術(shù)來同步多線程化)。
[0031] 盡管在無序執(zhí)行的上下文中描述了寄存器重命名,但應(yīng)當理解,可以在有序架構(gòu) 中使用寄存器重命名。盡管所示出的處理器的實施例還包括分開的指令和數(shù)據(jù)高速緩存單 元134/174以及共享L2高速緩存單元176,但替代實施例可以具有用于指令和數(shù)據(jù)兩者的 單個內(nèi)部高速緩存,諸如例如一級(L1)內(nèi)部高速緩存或多個級別的內(nèi)部高速緩存。在一些 實施例中,該系統(tǒng)可包括內(nèi)部高速緩存和在核和/或處理器外部的外部高速緩存的組合。 或者,所有高速緩存都可以在核和/或處理器的外部。
[0032] 圖2是根據(jù)本發(fā)明的各實施例可能具有一個以上核、可能具有集成存儲器控制 器、以及可能具有集成圖形器件的處理器200的框圖。圖2中的實線框示出具有單個核 202A、系統(tǒng)代理200、一個或多個總線控制器單元210的集合的處理器200,而虛線框的可 選附加示出具有多個核202A-N、系統(tǒng)代理單元210中的一個或多個集成存儲器控制器單元 214的集合以及專用邏輯208的替代處理器200。
[0033] 因此,處理器200的不同實現(xiàn)可包括:1)CPU,其中專用邏輯208是集成圖形和/或 科學(吞吐量)邏輯(其可包括一個或多個核),并且核202A-N是一個或多個通用核(例 如,通用的有序核、通用的無序核、這兩者的組合);2)協(xié)處理器,其中核202A-N是旨在主要 用于圖形和/或科學(吞吐量)的多個專用核;以及3)協(xié)處理器,其中核202A-N是多個 通用有序核。因此,處理器200可以是通用處理器、協(xié)處理器或?qū)S锰幚砥?,諸如例如網(wǎng)絡(luò) 或通信處理器、壓縮引擎、圖形處理器、GPGPU(通用圖形處理單元)、高吞吐量多集成內(nèi)核 (MIC)協(xié)處理器(包括30或更多個內(nèi)核)、嵌入式處理器等等。該處理器可以被實現(xiàn)在一 個或多個芯片上。處理器200可以是一個或多個襯底的一部分,和/或可以使用諸如例如 BiCMOS、CMOS或NM0S等的多個加工技術(shù)中的任何一個技術(shù)將處理器200實現(xiàn)在一個或多 個襯底上。
[0034]存儲器層次結(jié)構(gòu)包括在各核內(nèi)的一個或多個級別的高速緩存、一個或多個共享高 速緩存單元206的集合、以及耦合至集成存儲器控制器單元214的集合的外部存儲器(未 示出)。該共享高速緩存單元206的集合可以包括一個或多個中間級高速緩存,諸如二級 (L2)、三級(L3)、四級(L4)或其他級別的高速緩存、末級高速緩存(LLC)、和/或其組合。盡 管在一個實施例中,基于環(huán)的互連單元212將集成圖形邏輯208、共享高速緩存單元206的 集合以及系統(tǒng)代理單元210/集成存儲器控制器單元214互連,但替代實施例可使用任何數(shù) 量的公知技術(shù)來將這些單元互連。在一個實施例中,可以維護一個或多個高速緩存單元206 和核202A-N之間的一致性(coherency)。
[0035] 在一些實施例中,核202A-N中的一個或多個核能夠多線程化。系統(tǒng)代理210包括 協(xié)調(diào)和操作核202A-N的那些組件。系統(tǒng)代理單元210可包括例如功率控制單元(P⑶)和 顯示單元。PCU可以是或包括用于調(diào)整核202A-N和集成圖形邏輯208的功率狀態(tài)所需的邏 輯和組件。顯示單元用于驅(qū)動一個或多個外部連接的顯示器。
[0036] 核202A-N在架構(gòu)指令集方面可以是同構(gòu)的或異構(gòu)的;S卩,這些核202A-N中的兩個 或更多個核可能能夠執(zhí)行相同的指令集,而其他核可能能夠執(zhí)行該指令集的僅僅子集或不 同的指令集。在一個實施例中,核202A-N是異構(gòu)的并且包括以下描述的"小"核和"大"核。
[0037] 圖3至圖6是示例性計算機架構(gòu)的框圖。本領(lǐng)域已知的對膝上型設(shè)備、臺式機、手 持PC、個人數(shù)字助理、工程工作站、服務(wù)器、網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)集線器、交換機、嵌入式處理器、 數(shù)字信號處理器(DSP)、圖形設(shè)備、視頻游戲設(shè)備、機頂盒、微控制器、蜂窩電話、便攜式媒體 播放器、手持設(shè)備以及各種其他電子設(shè)備的其他系統(tǒng)設(shè)計和配置也是合適的。一般地,能夠 包含本文中所公開的處理器和/或其他執(zhí)行邏輯的多個系統(tǒng)和電子設(shè)備一般都是合適的。
[0038] 現(xiàn)在參見圖3,所示為根據(jù)本發(fā)明的一個實施例的系統(tǒng)300的框圖。系統(tǒng)300可 以包括一個或多個處理器310、315,這些處理器耦合到控制器中樞320。在一個實施例中, 控制器中樞320包括圖形存儲器控制器中樞(GMCH) 390和輸入/輸出中樞(I0H) 350 (其可 以在分開的芯片上);GMCH 390包括存儲器和圖形控制器,存儲器340和協(xié)處理器345耦合 到該存儲器和圖形控制器;I0H 350將輸入/輸出(I/O)設(shè)備360耦合到GMCH390?;蛘?, 存儲器和圖形控制器中的一個或兩者可以被集成在處理器內(nèi)(如本文中所描述的),存儲 器340和協(xié)處理器345直接耦合到處理器310以及控制器中樞320,控制器中樞320與I0H 350處于單個芯片中。
[0039] 附加處理器315的任選性質(zhì)用虛線表示在圖3中。每一處理器310、315可包括本 文中描述的處理核中的一個或多個,并且可以是處理器200的某一版本。
[0040] 存儲器340可以是例如動態(tài)隨機存取存儲器(DRAM)、相變存儲器(PCM)或這兩者 的組合。對于至少一個實施例,控制器中樞320經(jīng)由諸如前端總線(FSB)之類的多分支總 線、諸如快速通道互連(QPI)之類的點對點接口、或者類似的連接395與處理器310、315進 行通信。
[0041] 在一個實施例中,協(xié)處理器345是專用處理器,諸如例如高吞吐量MIC處理器、網(wǎng) 絡(luò)或通信處理器、壓縮引擎、圖形處理器、GPGPU、或嵌入式處理器等等。在一個實施例中,控 制器中樞320可以包括集成圖形加速器。
[0042] 在物理資源310、315之間可以存在包括架構(gòu)、微架構(gòu)、熱、和功耗特征等的一系列 品質(zhì)度量方面的各種差異。
[0043] 在一個實施例中,處理器310執(zhí)行控制一般類型的數(shù)據(jù)處理操作的指令。協(xié)處理 器指令可嵌入在這些指令中。
[0044] 處理器310將這些協(xié)處理器指令識別為應(yīng)當由附連的協(xié)處理器345執(zhí)行的類型。 因此