複製鏈接
請複製以下鏈接發送給好友

sandy bridge

鎖定
2009年(TICK時間),Intel處理器製程邁入32nm時代,2010年的TOCK時間,Intel推出代號為Sandy Bridge的處理器,該處理器採用32nm製程。Sandy Bridge(之前稱作Gesher)是Nehalem的繼任者,也是其工藝升級版,從45nm進化到32nm。Sandy Bridge將有八核心版本,二級緩存仍為512KB,但三級緩存將擴容至16MB。而Sandy Bridge最主要特點則是加入了game instrution AVX(Advanced Vectors Extensions)技術,也就是之前的VSSE。intel宣稱,使用AVX技術進行矩陣計算的時候將比SSE技術快90%。其重要性堪比1999年Pentium III引入SSE。
外文名
sandy bridge
公    司
Intel
類    別
處理器
採    用
32nm製程

目錄

sandy bridge特性

1.更寬的矢量運算:從128-bit增至256-bit,並保持向下兼容性
2.增強的數據重排單個操作可同時處理8個32-bit數據
3.支持三操作數和四操作數,非破壞性句法
4.支持彈性的訪存地址不對齊
5.可擴展的新操作碼(VEX)
6.更強的集成顯示核心

sandy bridge解析

前端
sandy bridge sandy bridge
從高級層面角度看,SNB架構只是一次進化,但是如果看看Nehalem/Westmere以來晶體管變化的規模,絕對是一次革命。 Core 2引入了一種叫作循環流檢測器(LSD)的邏輯塊,檢測到CPU執行軟件循環的時候就會關閉分支預測器、預取/解碼引擎,然後通過自身緩存的微指令(micro-ops)供給執行單元。這種做法通過在循環執行的時候關閉前端節省了功耗,並改進了性能。
SNB裏又增加了一個微指令緩存,用於在指令解碼時臨時存放。這裏沒有什麼嚴格的算法,指令只要在解碼就會放入緩存。預取硬件獲得一個新指令的時候,會首先檢查它是否存在於微指令緩存中,如是則由緩存為其餘的管線服務,前端隨之關閉。解碼硬件是x86管線裏非常複雜的部分,關閉它能夠節約大量的功耗。如果這種技術也能引入到Atom處理器架構中,無疑也能使之受益匪淺。
這個緩存是直接映射的,能存儲大約1.5K微指令,相當於6KB指令緩存。它位於一級指令緩存內,大多數程序的命中率都能達到80%左右,而且帶寬也相比一級指令緩存更高、更穩定。真正的一級指令和數據緩存並沒有變,仍然都是32KB,合計64KB。
這看起來有點兒像Pentium 4的追蹤緩存,但最大的不同是它並不緩存追蹤,而更像是一個指令緩存,存儲的是微指令,而非x86指令(macro-ops)。
與此同時,Intel還完全重新了一個分支預測單元(BPU),精確度更高,並在三個方面進行了創新。
第一,標準的BPU都是2-bit預測器,每個分支都使用相關可信度(強/弱)進行標記。Intel發現,這種雙模預測器所預測的分支幾乎都是強可信度的,因此SNB裏多個分支都使用一個可信度位,而不是每個分支對應一個可信度位,結果就是在分支歷史表中同樣的位可以對應更多分支,進而提高預測精確度。
第二,分支目標同樣做了翻新。之前的架構中分支目標的大小都是固定的,但是大多數目標都是相對近似的。SNB現在支持多個不同的分支目標大小,而不是一味擴大尋址能力、保存所有分支目標,因而浪費的空間更少,CPU能夠跟蹤更多目標、加快預測速度。
第三,提高分支預測器精度的傳統方法是使用更多的歷史位,但這隻對要求長指令的特定類型分支有效,SNB於是將分支按照長短不同歷史進行劃分,從而提高預測精度
物理寄存器文件(PRF)和執行改進
類似於AMD推土機、山貓,IntelSNB也使用了物理寄存器文件。Core 2、Nehalem架構中,每個微指令需要的每個操作數都有一份拷貝,這就意味着亂序執行硬件(調度器/重排序緩存/關聯隊列)必須要非常大,以便容納微指令和相關數據。Core Duo時代是80-bit,加入SSE指令集後增至128-bit,現在又有了AVX指令集,按照趨勢會翻番至256-bit。
RPF寄存器文件中存儲微指令操作數,而微指令在亂序執行引擎中只會攜帶指向操作數的指針,而非數據本身。這就大大降低了亂序執行硬件的功耗(轉移大量數據很費電的),同時也減小了流水線的核心面積,數據流窗口也增大了三分之一。
核心面積的精簡正是AVX指令(SNB最主要革新之一)集得以實現並保證良好性能的關鍵所在。以最小的核心面積代價,Intel將所有SIMD單元都轉向了256-bit。
AVX支持256-bit操作數,相當消耗晶體管與核心面積,而RPF的使用加大了亂序執行緩衝,能夠很好地滿足更高吞吐量的浮點引擎。
Nehalem架構中有三個執行端口和三個執行單元堆棧:
SNB允許256-bit AVX指令借用128-bit的整數SIMD數據路徑,這就使用最小的核心面積實現了雙倍的浮點吞吐量,每個時鐘可以進行兩個256-bit AVX操作。另外執行硬件和路徑的上位128-bit是受電源柵極(Power Gate)控制的,標準128-bit SSE操作不會因為256-bit擴展而增加功耗。
AMD推土機架構對AVX的支持則有所不同,使用了兩個128-bit SSE路徑來合併成256-bit AVX操作,即使八核心(四模塊)推土機的256-bit AVX吞吐量也要比四核心SNB少一半,不過實際影響完全取決於應用程序如何利用AVX。SNB的峯值浮點性能翻了一番,這就對載入和存儲單元提出了更高要求。Nehalem/Westmere架構中有三個載入和存儲端口:載入、存儲地址、存儲數據
SNB架構中載入和存儲地址端口是對稱的,都可以執行載入或者存儲地址,載入帶寬因此翻倍。 SNB的整數執行也有了改進,只是比較有限。ADC指令吞吐量翻番,乘法運算可加速25%。
環形總線與三級緩存
Nehalem/Westmere每個核心都與三級緩存單獨相連,都需要大約1000條連線,而這種做法的缺點是如果頻繁訪問三級緩存,效果可能不會太好。
SNB又整合了GPU圖形核心、視頻轉碼引擎,並共享三級緩存。Intel並沒有沿用此前的做法,再增加2000條連線,而是像服務器版的Nehalem-EX、Westmere-EX那樣,引入了環形總線(Ring Bus),每個核心、每一塊三級緩存(LLC)、集成圖形核心、媒體引擎、系統助手(System Agent)都在這條線上擁有自己的接入點,形象地説就是個“站台”。
這條環形總線由四條獨立的環組成,分別是數據環(DT)、請求環(QT)、響應環(RSP)、偵聽環(SNP)。每條環的每個站台在每個時鐘週期內都能接受32字節數據,而且環的訪問總會自動選擇最短的路徑,以縮短延遲。隨着核心數量、緩存容量的增多,緩存帶寬也隨時同步增加,因而能夠很好地擴展到更多核心、更大服務器集羣
這樣,SNB每個核心的三級緩存帶寬都是96GB/s,堪比高端Westmere,而四核心系統更是能達到384GB/s,因為每個核心都在環上有一個接入點。
三級緩存的延遲也從大約36個週期減少到26-31個週期。此前預覽的時候我們就已經感覺到了這一點,現在終於有了確切的數字。三級緩存現在被劃分成多個區塊,分別對應一個CPU核心,都在環形總線上有自己的接入點和完整緩存管線。每個核心都可以訪問全部三級緩存,只是延遲不同。此前三級緩存只有一條緩存管線,所有核心的請求都必須通過它,現在很大程度上分而治之了。
和以前不同的是,三級緩存的頻率現在也和核心頻率同步,因而速度更快,不過缺點是三級緩存也會隨着核心而降頻,所以如果CPU降頻的時候GPU又正好需要訪問三級緩存,速度就慢下來了。
系統助手
經過環形總線、三級緩存的變化,非核心(Uncore)概念還在,但是Intel改稱之為系統助手,基本就相當於曾經的北橋芯片:
PCI-E控制器,可提供16條PCI-E 2.0信道,支持單條PCI-E x16或者兩條PCI-E x8插槽
重新設計的雙通道DDR3內存控制器內存延遲也恢復了正常水平(Westmere將內存控制器移出CPU、放到了GPU上)
此外還有DMI總線接口、顯示引擎、電源控制單元(PCU)。
系統助手的頻率要低於其他部分,有自己獨立的電源層。
整合圖形核心
SNB將CPU、GPU封裝在同一內核中,全部採用32nm工藝,特別是顯著提高了IPC(指令/時鐘)。
SNB GPU有自己的電源島和時鐘域,也支持Turbo Boost技術,可以獨立加速或降頻,並共享三級緩存。顯卡驅動會控制訪問三級緩存的權限,甚至可以限制GPU使用多少緩存。將圖形數據放在緩存裏就不用繞道去遙遠而“緩慢”的內存了,這對提升性能、降低功耗都大有裨益。
不過這麼做並沒有説起來這麼簡單。NVIDIA GF100核心費了九牛二虎之力,SNB其實也差不多,同樣進行了全新設計。
順便提一下Intel的獨立顯卡工程Larrabee。它的重點是廣泛使用全面可編程硬件(除了紋理硬件),SNB則是全面使用固定功能硬件,功能特性和硬件單元相對應,這樣的好處是性能、功耗、核心面積都大大優化,損失則是缺乏彈性。顯然,Intel世界的中心仍舊是CPU,不能讓GPU過分強大,這和NVIDIA的理念正好相反。
可編程着色硬件被稱為EU,包含着色器、核心、執行單元等,可以從多個線程雙發射時取指令。內部ISA映射和絕大多數DX10 API指令一一對應,架構很像CISC,結果就是有效擴大了EU的寬度,IPC也顯著提升。
抽象數學運算由EU內的硬件負責,性能得以同步提高。Intel表示,正弦(sine)、餘弦(cosine)操作的速度比現在的HD Graphics提升了幾個數量級
Intel此前的圖形架構中,寄存器文件都是即時重新分配的。如果一個線程需要的寄存器較少,剩餘寄存器就會分配給其他線程。這樣雖能節省核心面積,但也會限制性能,很多時候線程可能會面臨沒有寄存器可用的尷尬。在芯片組集成時代,每個線程平均64個寄存器,Westmere HD Graphics提高到平均80個,SNB則每個線程固定為120個。
所有這些改進加起來,SNB裏每個EU的指令吞吐量都比現在的HD Graphics增加了一倍。
SNB集成的GPU圖形核心分為兩大版本,分別擁有6個、12個EU。首批發布的移動版全部是12個EU,桌面版則根據型號不同而有兩種配置,可能是高端12個、低端6個。得益於每個EU吞吐量翻番、運行頻率更高、共享三級緩存等特點,即使只有六個的時候性能也會相當令人滿意。SNB GPU圖形核心也可以獨立動態加速,最高可達驚人的1.35GHz。如果軟件需要更多CPU資源,那麼CPU就會加速、GPU同時減速,反之亦然。
媒體引擎
除了GPU圖形核心,SNB中還有一個媒體處理器,專門負責視頻解碼、編碼。
新的硬件加速解碼引擎中,整個視頻管線都通過固定功能單元進行解碼,和現在正好相反。Intel據此宣稱,SNB在播放視頻的時候功耗可降低一半。
新一代Turbo Boost
Lynnfield Core i7/i5首次引入了智能動態加速技術“Turbo Boost”(睿頻),能夠根據工作負載,自動以適當速度開啓全部核心,或者關閉部分限制核心、提高剩餘核心的速度,比如一顆熱設計功耗(TDP)為95W的四核心處理器,可能會三個核心完全關閉,最後一個大幅提速,一直達到95W TDP的限制。
現有處理器都是假設一旦開啓動態加速,就會達到TDP限制,但事實上並非如此,處理器不會立即變得很熱,而是有一段時間發熱量距離TDP還差很多。
SNB利用這一點特性,允許單元控制單元(PCU)在短時間內將活躍核心加速到TDP以上,然後慢慢降下來。PCU會在空閒時跟蹤散熱剩餘空間,在系統負載加大時予以利用。處理器空閒的時間越長,能夠超越TDP的時間就越長,但最長不超過25秒鐘。
不過在穩定性方面,PCU不會允許超過任何限制。

sandy bridge命名

SNB家族仍然沿用Core i7/i5/i3的品牌+子系列命名方式,編號上則採用四位數字。
對於桌面版的CPU來説:其中第一位均為“2”,代表第二代Core ix系列,最後末尾往往還有一個代表不同含義的字母:K代表不鎖定倍頻,都是高端產品;S代表性能優化,原始頻率比沒有字母后綴的低很多,但是單核心加速最高頻率基本相同,另外熱設計功耗都是65W;T代表功耗優化,熱設計功耗只有45W或35W,但是頻率也是最低的。
對於移動版的CPU來説,其型號命名規則如下:
-29xxXM:Core i7,四核心,八線程,支持Turbo,8MB三級緩存至尊版
-28xxQM:Core i7,四核心,八線程,支持Turbo,8MB三級緩存
-27xxQM:Core i7,四核心,八線程,支持Turbo,6MB三級緩存
-26xxM:Core i7,雙核心四線程,支持Turbo,4MB三級緩存
-25xxM:Core i5,雙核心,四線程,支持Turbo,3MB三級緩存
其後綴的意義為:
-XM:四核心至尊版,不鎖倍頻
- QM:四核心標準版
-M:雙核心標準版 由此可見,Core i7/i5/i3及其各個子系列的不同依然取決於是否支持超線程睿頻加速,以及三級緩存容量的大小,還是略有混亂。

sandy bridge規格

<br>

處理器型號
市場定位
核心/線程
超線程
原始頻率
單核加速
雙核加速
四核加速
三級緩存
內存頻率
圖形核心
基準頻率
加速頻率
TDP
封裝

Corei7-2920XM
零售
4/8
支持
2.5GHz
3.5GHz
3.4GHz
3.2GHz
8MB
DDR3-1600
12單元
650MHz
1300MHz
55W
rPGA/BGA

Corei7-2820QM
零售
4/8
支持
2.3GHz
3.4GHz
3.3GHz
3.1GHz
8MB
DDR3-1600
12單元
650MHz
1300MHz
45W
rPGA/BGA-1244

Corei7-2720QM
零售
4/8
支持
2.2GHz
3.3GHz
3.2GHz
3.0GHz
6MB
DDR3-1600
12單元
650MHz
1300MHz
45W
rPGA/BGA-1244

Corei7-2620M
零售
2/4
支持
2.7GHz
3.4GHz
3.2GHz
不支持
4MB
DDR3-1333
12單元
650MHz
1300MHz
35W
rPGA/BGA

Corei5-2540M
零售
2/4
支持
2.6GHz
3.3GHz
3.1GHz
不支持
3MB
DDR3-1333
12單元
650MHz
1300MHz
35W
rPGA/BGA

Corei5-2520M
零售
2/4
支持
2.5GHz
3.2GHz
3.0GHz
不支持
3MB
DDR3-1333
12單元
650MHz
1300MHz
35W
rPGA/BGA

Corei7-2670QM
OEM
4/8
支持
2.2GHZ
3.1GHZ
3.0GHZ
2.8GHZ
6MB
DDR3 -1333
12單元
650MHz
1100MHz
45W
rPGA

Corei7-2635QM
OEM
4/8
支持
2.0GHz
2.9GHz
2.8GHz
2.6GHz
6MB
DDR3-1333
12單元
650MHz
1200MHz
45W
BGA

Corei7-2630QM
OEM
4/8
支持
2.0GHz
2.9GHz
2.8GHz
2.6GHz
6MB
DDR3-1333
12單元
650MHz
1100MHz
45W
rPGA

Corei5-2410M
OEM
2/4
支持
2.3GHz
2.9GHz
2.6GHz
不支持
3MB
DDR3-1333
12單元
650MHz
1200MHz
35W
rPGA/BGA

Corei3-2310M
OEM
2/4
支持
2.1GHz
不支持
不支持
不支持
3MB
DDR3-1333
12單元
650MHz
1100MHz
35W
rPGA/BGA

Corei7-2649M
低/超低電壓
2/4
支持
2.3GHz
3.2GHz
2.9GHz
不支持
4MB
DDR3-1333
12單元
500MHz
1100MHz
25W
BGA-1023

Corei7-2629M
低/超低電壓
2/4
支持
2.1GHz
3.0GHz
2.7GHz
不支持
4MB
DDR3-1333
12單元
500MHz
1100MHz
25W
BGA-1023

Corei7-2657M
低/超低電壓
2/4
支持
1.6GHz
2.7GHz
2.4GHz
不支持
4MB
DDR3-1333
12單元
350MHz
1000MHz
17W
BGA-1023

Corei7-2617M
低/超低電壓
2/4
支持
1.5GHz
2.6GHz
2.3GHz
不支持
4MB
DDR3-1333
12單元
350MHz
950MHz
17W
BGA-1023

Corei5-2537M
低/超低電壓
2/4
支持
1.4GHz
2.3GHz
2.0GHz
不支持
3MB
DDR3-1333
12單元
350MHz
900MHz
17W
BGA-1023

sandy bridge漏洞

1) SNB缺陷門事件説明
美國時間2011年1月31日,英特爾官方宣佈,2011年1月初面市的SNB平台芯片組設計缺陷,全球暫停出貨。經證實,問題出在SNB搭配的主板芯片組(HM65/HM67)集成的SATA設備控制器(用來連接SATA接口的硬盤、光驅等)。
英特爾稱,缺陷芯片組3年間出現SATA接口故障的幾率只有5%左右。英特爾已經修正了這個設計上的疏漏,並表示現在開始生產的新版本芯片組將不存在這一問題。
2) SNB缺陷門的影響
SNB搭配的芯片組(HM65/HM67)共提供了2個SATA3代端口和4個SATA2代端口。受影響的只是SATA2代端口,端口編號為2、3、4、5。具體症狀是:隨着使用時間的延長,出現數據錯誤的幾率提高,極端情況下可能造成所連接的設備無法被系統識別
考慮到大部分筆記本電腦只使用了兩個SATA裝置(1塊硬盤和1個光驅),所以它們很可能連接在不受影響的0、1端口上。
3)SNB漏洞解決
在2月微星公佈漏洞後,INTEL發佈了全線召回的決定,所有已上市產品均可通過官方進行召回。官方預計此次因召回造成的虧損大概在10億美元左右。3月初,缺陷解決的新的6系列芯片組上市,該批圍採用B3步進,也就是修正過SATAII接口缺陷的主板,現已全面銷售。