由於篇幅過長因此站長後來決定將本文拆分為上、下二篇,本篇為「下篇」,接續上篇談完 Terascale 2 架構之後要談的 Terascale 2 代內更新 (北方群島家族),也就是 HD 6000 系列的部分以及 Terascale 架構的尾聲-Terascale 3 系列 (同樣是北方群島家族)。
AMD Terascale 2 (代內更新)
- 推出日期:2010 年 12 月 (Barts)
- 所屬系列編成:HD 6000 系列、HD 7000 系列、HD 8000 系列、Rx 200 系列
- API 支援:DirectX 11.0、OpenGL 4.4、OpenCL 1.2
- Shader Model 支援:SM 5.0
北方群島家族
在看完全部的 Evergreen 家族核心之後,接下來要登場的就是北方群島 (Northern Islands) 系列了,之所以要在這裡介紹,是因為北方群島家族的成員當中超過 3/4 其實都仍然沿用了 Terascale 2 架構的關係,接下來還有南方群島家族的中低階產品線也同樣繼續沿用了這套架構,至於北方群島家族的高階產品所使用的 Terascale 3 架構則會在最後介紹。
北方群島家族實際上就是後來的 HD 6000 系列,一共有 Antilles、Cayman、Barts、Juniper (對,就是剛剛那個 Juniper)、Turks、Caicos、Cedar (同樣是剛剛介紹過的 Cedar) 七種核心,除了 Antilles 與 Cayman 之外都是沿用 Terascale 2 架構而來。
ATI 品牌走入歷史
在開始談北方群島家族的架構之前,我想先特別提一下 AMD 在當時進行的一次品牌轉換。我們都知道 AMD 在 2006 年把 ATI 給併購了,而在那之後有好一段時間 AMD 的顯示卡部門繼續獨立使用 ATI 這個品牌,推出各個世代與各系列的 ATI Radeon、ATI FireGL 等系列產品並持續與 NVIDIA 對況形成了雙強鼎立的情勢 (其實 AMD 在當年併購 ATI 時就曾經以會續用 ATI 品牌來安撫 ATI 的支持者)。
這樣的情況一直持續到 2009 年的 HD 5000 系列為止,然而就在 2010 年的八月底,AMD 無預警的向各合作廠商與媒體正式宣布將徹底放棄 ATI 品牌,並將原先在 ATI 品牌下推出的產品全部改名為 AMD 品牌標誌 (像是 AMD Radeon),理由是他們在市場調查中認為人們對 AMD 品牌的辨識度比 ATI 品牌來得高上許多,而且 Radeon 這品牌的價值幾乎跟 AMD 本身公司的名稱相等。
這就是為什麼今天你只會聽到 AMD 顯示卡,而不太會聽到 ATI 這老品牌的原因,接下來就讓我們繼續研究北方群島系列的各款產品吧。
更徹底的策略轉彎
從同樣的架構繼續沿用這點看來其實就可以大致上預期北方群島系列當中大多數型號不會比 HD 5000 (Evergreen 家族) 長進太多,實際上說出來可能會讓人有點驚訝,其實在性能上北方群島家族這一世代相比 Evergreen 而言不僅沒有成長,甚至同級產品反而有「倒退」的情況 (注意看下圖,有發現同型號結尾的產品位置都下移了一點嗎?)。
你說 AMD 瘋了嗎?完全沒有。實際上這只不過是從 RV770 開始推的「小核心戰略」發揮到極致的結果,還記得我們在談小核心戰略的時候有提到一點:「不再專注於跟 NVIDIA 爭奪性能王座」,對吧?現在 AMD 的團隊在意的已經不是產品能不能從性能上絕對的壓倒對方,而是更在意能不能在市場最大的中階主流客群當中以超高性價比殺出一條血路,甚至逼迫 NVIDIA 跟進降價來讓 NVIDIA 無從獲利 (NVIDIA 的大核心相對來說成本很高)。
Terascale 2 代內更新
在這一世代的產品當中 AMD 在意的反而不是性能提升,而是把現有產品的成本壓榨到最低,並把零售價格盡可能壓縮到極限 (其實某種程度上是在賭 NVIDIA 的 Fermi 成本壓不下來),所以引入了一個神奇的新概念「More performance per mm2」,意味著在相同的晶片面積底下追求更高的表現。
我們都知道半導體晶片的成本主要可分為設計與製造兩個部分,設計的部分基本上沒甚麼好談的,這是半導體產業最主要的成本也是核心資產,所以主要可以壓縮成本的地方就在於製造這部分,而要壓低晶片的製造成本基本上有三條路徑:
- 提升良率
如果晶圓上壞掉的晶片盡可能少,意味著廠商一次生產之後能夠拿來賣的產品就多,也就表示廠商付出一次成本之後可以得到的收穫更多,意味著成本的下降。 - 縮小面積
晶圓的面積固定的狀況下,意味著單一晶圓可以切割出的晶片數量就越多,也就表示廠商付出一次成本之後可以得到的收穫更多,意味著成本的下降。 - 提升製程
晶圓面積固定,電路所需要的東西差不多的狀況下,製程越小意味著晶片面積的縮小,因此會產生同上的效果。
而在 Evergreen 世代的後期基本上良率問題已經大致解決了 (40 奈米製程很成熟了),而新製程也還沒出生 (台積電當時決定跳過 32 奈米製程),所以這代要達成壓低成本的目標主要得從縮小面積著手。
Barts 核心
由於這只是代內更新,架構上沒有明顯變動,所以我就直接從產品開始講起吧,北方群島系列採用 Terascale 2 架構的核心當中最完整的是這款 Barts,以下是 Barts 與 Cypress 的架構圖:
乍看之下看不太出差別在哪,對吧?實際上仔細看中間就會發現,Barts 的 SIMD Engine 數量「變少了」,這在當年推出的時候確實造成了市場的一片嘩然,畢竟在架構沒有太大改變的狀況下,繪圖管線當中的核心減少其實就暗示著性能可能其實有下降,而從 Cypress 的 20 組 SIMD Engine 下降到 Barts 的 14 組顯然不是甚麼小幅度的減少,聽到這裡,一般人應該會覺得「豈有新世代輸給舊世代的道理,誰要買啊」吧?
或許看了架構圖之後你會指著 Ultra-Threaded Dispatch Processor 的部分 (我們已經談 Terascale 談這麼久了相信你不會不知道這東西就是 Terascale 架構的靈魂之所在) 說 Barts 核心當中有兩組 Ultra-Threaded Dispatch Processor,各自負責半邊的 SIMD Processor,不過實際上這只是「障眼法」,因為 Barts 架構圖中的兩個 Ultra-Threaded Dispatch Processor 方塊其實不是兩組的意思,只是說有兩組巨集排程器而已,實際上 Cypress 就已經是這樣設計的了。
其實北方群島系列產品唯一有的就是包含了一系列優化,舉例來說 DirectX 11.0 當中最重要的新特性-曲面細分就是優化的重點,AMD 聲稱在幾乎所有方面 Barts 的曲面細分能力都優於 Cypress,不過比較可惜的是 Cypress 與其他中低階產品一樣,為了進一步降低晶片面積以壓低成本,因此把雙精度浮點運算單元取消了,至於在架構本身的規模來說,真的沒甚麼好懷疑的,Barts 確實是比起 Cypress 來得倒退沒錯,但得益於大量的優化,所以基本上與 Cypress 可以撐到互有輸贏的局面 (運用 DirectX 11.0 技術比重越高的狀況對 Barts 越有利)。
上圖就是 Cypress (左) 與 Barts (右) 晶片的對比照了,Barts 的核心面積確實小了不少對吧? (實際上面積從 334 平方公分一口氣掉到 255 平方公分) 在生產成本上 Barts 明顯要比 Cypress 要來得更低,這讓 AMD 得以將採用 Barts 的產品定價定位在 150 ~ 250 美元的位置,並且迫使 NVIDIA 將 GTX 460 的價格調降。
接下來讓我們回頭看看採用 Barts 核心的產品有哪些吧,實際上一共有三款,首先看到的是 HD 6870 (900/1050 MHz) 與 HD 6850 (775/1000 MHz),前者具備完整的 Barts 核心,包含了 14 組 SIMD Engine (意味著有 1120 個 SC、56 個 TMU),後者則閹掉了其中 2 組 SIMD Engine,因此 SC 的數量下降為 960 個,TMU 也減少為 48 組,不過這兩款產品的 ROP 數量是一致的 (32 組)。
至於 HD 6790 則是隔年 AMD 才追加的型號,同樣採用 Barts 核心,主要是為了狙擊競爭對手推出的 GTX 550 Ti 而安排的產品,在規格上進一步將 SIMD Engine 的數項削減為 10 組,而且連帶把 ROP 也砍半了,但時脈設定則略高於 HD 6850,來到了 840/1050 MHz,因此 TDP 也略高。
Turks 核心
在 HD 6700 系列的部分 AMD 選擇直接拿先前 Evergreen 家族的 Juniper 核心頂替,因此接下來我們要看的就直接是承接原先 Redwood 核心位階的 Turks 核心了。
還記得我們曾說 Redwood 是 Cypress 刪減之後的版本,實際上 Turks 與 Barts 之間的關係大抵上也是如此,Turks 的 SIMD Engine 只有 6 組,因此只有 480 組 SC 與 24 組 TMU,ROP 的部分也被再次砍半因此只剩下 8 組,記憶體頻寬則跟 Juniper 一樣採用了 128-bit 的規格,是相當稱職的入門主流級顯示卡 (售價多在台幣三千元左右或以下)。
基於 Turks 的產品一開始有 HD 6670 與 HD 6570 兩款,這兩款的規格配置大致上相同,唯一差異在時脈設定不同,前者定位較高,設定在 800/800 MHz + DDR3 或 800/1000 MHz + GDDR5,而後者則略低一些,設定在 650/667 MHz + DDR3 或 650/1000 MHz + GDDR5。
而在 HD 7000 系列時期當中也有三款產品是由 Turks 核心衍伸而來 (均為 OEM 版本),分別是 HD 7670 (800/1000 MHz + GDDR5)、HD 7570 (650/900 MHz + GDDR3 或 650/1000 MHz + GDDR5) 與 HD 7510 (650/667 MHz + GDDR3) 三款,除了 HD 7510 將 SIMD Engine 調降為四組,並且另外砍掉一半 ROP (只剩 4 組) 之外,另外兩款的配置規格都一樣。
Caicos 核心
接下來介紹的則是北方群島家族當中規格最差的一款核心-Caicos 核心,實際上 Caicos 的定位還略高於真正的入門款 Cedar,相較於 Cedar 來說 Caicos 的 SC 數量多了一倍,其他參數則維持不變。
基於 Caicos 核心的型號一開始只有 HD 6450 一款 (625/800 MHz 或 750/900 MHz + DDR3),但之後的 HD 7000 系列與 HD 8000 系列都有拿 Caicos 核心再來更名重出做為入門產品之用,例如 HD 7470 (625/800 MHz + GDDR3 或 775/900 MHz + GDDR5)、HD 7450 (625/533 MHz 或 750/800 MHz + GDDR3) 與後來的 HD 8490 (875/900 MHz + GDDR5)、HD 8470 (750/800 MHz + GDDR5)、HD 8450 (625/533 MHz + DDR3),不過這幾款都只針對 OEM 市場推出。
Caicos 核心應該是所有 Terascale 2 架構衍生產品當中壽命最長的一款,後來的 R5 200 系列當中有多達四款產品都是使用 Caicos 核心,分別是 R5 220、R5 230、R5 235、R5 235X,其中除了最低階的 R5 220 採用閹割一半的 Caicos 核心 (因此參數與 Cedar 幾乎一樣) 之外均為完整核心,並均搭配 DDR3 記憶體,不過其中只有 R5 230 有零售版本。
AMD Terascale 3
- 推出日期:2010 年 12 月 (Cayman)
- 所屬系列編成:Radeon HD 6000 系列
- API 支援:DirectX 11.0、OpenGL 4.4、OpenCL 1.2
- Shader Model 支援:SM 5.0
剛剛提過 Barts 相對於 Cypress 來說在規模上倒退導致實際性能並沒有辦法如同過去幾次改朝換代一般壓倒性的勝過前代產品,因此實際上 AMD 在 Barts 之上還是有推出產品的,而且實質上是大核心 (其實發展到這裡 AMD 的小核心戰略已經有點走偏了,畢竟這回的旗艦產品其實核心大小已經遠遠超過 Cypress,已經幾乎快要逼近慘烈的 R600 了,因此小核心戰略走到這裡其實已經只是安慰自己在大核心性能上追不上 NVIDIA 的藉口罷了)。
使用 Terascale 3 架構的產品很少,在 AMD 顯示卡當中只有 HD 6000 這一世代的旗艦產品有用到,除此之外則是出現在 APU 上。而實際上的差別呢,基本上與 Terascale 2 架構相比,Terascale 3 架構只在兩個部分有比較明顯的改變。
新的 SIMD 架構設計 (VLIW 4)
這是 Terascale 3 相較於先前架構當中最大、最明顯的不同,我們前面談過很多次 Terascale 1 與 Terascale 2 架構都是在 Very-Long Instruction Word (VLIW) 5 架構下設計出來的產物,不同於 NVIDIA 採用的小型 CUDA Core 設計 (每個 CUDA Core 實際上就是單獨的 ALU),AMD 的做法是在每個 SP 當中內建五個運算單元 (實際上是由四個 ALU 與一個 ALU 與特殊功能合併單元、分支單元三類組成)。
這樣的設計所造成的缺點大致上我在前面的篇章當中也都談過了 (像是高度依賴驅動程式優化、在通用運算方面效率不彰等,這些缺點在通用運算越來越重要、程式越來越複雜、AMD 認清自家驅動程式撰寫能力不強的事實之後更顯突出),除此之外還加上 SIMD Engine 數量的提升基本上也已經差不多面臨極限,因此要進一步追求性能提升 AMD 只能開始思考架構上的改變,於是新的 VLIW 4 架構就因此誕生了 (說起來這是從 R600 以來 AMD 第一次真的針對 GPU 架構內部有大幅度的調整)。
VLIW 4 與 VLIW 5 最明顯的不同主要出現在兩個地方,首先是組成 SP 的 SPU 數量從原來的 4+1 調整為單純的四組 (所以每組 SIMD Engine 包含的 SC 數量從 80 下降為 64 個了),除此之外則是以往被獨立出來的 SFU (也就是第五號 SPU) 的設計被取消了,現在剩下來的四組 ALU 都有著相同的處理能力 (只要抓其中任三組 ALU 就可以充當 SPU 用了),因此能夠更彈性的被隨時調用,這意味著資源的利用率提高了,而且實際上不僅僅是小幅的提高,在新設計當中利用率提高的幅度 (一方面也是對驅動程式依賴度下降帶來的好處) 能夠輕易彌補少掉一組 ALU 的不足,而且甚至還可以提供比起前代來說更高的性能,同時還因為效率提高,因此「每平方公分面積所能帶來的性能」也就隨之增加了。
真正的雙 Ultra-Threaded Dispatch Processor
還記得剛剛在談 Barts 的時候我說 Barts 架構圖當中的 Ultra-Threaded Dispatch Processor 只是障眼法,實際上仍然只有一組,只是內部的「部分零件變成兩組」吧,在 Terascale 3 架構當中真的是如假包換的雙 Ultra-Threaded Dispatch Processor 設計了。
除此之外在 Barts 上有使用的優化在 Terascale 3 架構當中也幾乎都有採用,因此 Terascale 3 架構的曲面細分性能也有著明顯的進步。
Table of Contents
Cayman 核心
使用 Terascale 3 架構的核心實際上只有一款,就是這邊要介紹的 Cayman,完整版的 Cayman 核心包含了 24 組新架構的 SIMD Engine (共計 1,536 個 SC、96 組 TMU) 與 32 組 ROP (Cayman 的渲染輸出介面與記憶體控制器基本上跟 Barts 差不多),而且與 Cypress 一樣具備了完整的雙精度浮點數運算能力。
採用單顆 Cayman 核心的產品有 HD 6970、HD 6950 與 HD 6930 三款,這三款當中只有最頂級的 HD 6970 是採用完整版的 Cayman 核心,時脈設定也最高 (880/1375 MHz),而 HD 6950 則砍了兩組 SIMD Engine (因此 SC 只剩下 1,408 個,TMU 為 88 組),時脈也下調為 800/1250 MHz,而最低階的 HD 6930 則是以 HD 6950 為基礎再砍去兩組 SIMD Engine (剩下 1,280 個 SC 與 80 組 TMU),並將時脈下調為 750/1200 MHz,除此之外的規格則是維持不變。
Antilles
至於 HD 6000 系列當中最高階的產品-Antilles 則毫不意外又是延續前幾世代的作法,也就是將兩塊次高階的核心放到同一張 PCB 上製成單卡雙晶片設計的策略,後來這款實際上是由兩顆 Cayman 核心所組成的頂級顯示卡被命名為 HD 6990。
跟前幾代產品的做法完全如出一轍,同樣是使用 PLX 晶片將兩枚 Cayman 核心橋接在一起,除此之外在 Cypress 當中被迫取消的 Sideport 功能也沒有在這一世代中重出江湖,但是從 HD 6990 極為簡潔的配線看來,不得不說 AMD 在經過這麼多世代的經驗累積之後確實在佈線能力上有了顯著的進步。
AMD 近十年內最輝煌的時代 (又一次…)
歸納過去幾年 AMD/ATI 的發展可以發現,其實 AMD 的顯示卡部門命運發展看起來是個很有規律的循環。
每次在 AMD/ATI 看起來快要不行了的時候,就會突然經歷一次策略上的大幅調整或轉彎 (這在半導體業也意味著架構設計上的重大調整),然後就會突然變得非常聲勢浩大,市佔率會突然從非常慘烈的數字回升到將近與 NVIDIA 五五波,甚至還發生過好幾次把 NVIDIA 踹下性能王座的事情,但是在好個一兩代之後會突然陷入安逸,然後推出一代根本沒甚麼長進的產品,之後迅速的衰退並損失大把的市佔率,然後再次重複這樣摔個半死 → 策略轉彎 → 大幅優化 → 了無新意 → 大幅衰退 → 摔個半死的循環,NVIDIA 則比較少有這種大起大落的現象。
上一次這樣的情況大致上可以追溯到 Radeon R200 (8000/9000 系列,2001 年推出) 的時候吧,當時 ATI 大膽的搶在 NVIDIA 前發佈了全球首款能夠完善支援 DirectX 8.1 API 規格的 GPU 成功在功能甚至是性能上超越了 NVIDIA,順利地從 NVIDIA 手中搶過一大塊市場大餅。
而後來的 R300 基本上是從 R200 架構規模翻倍而來的產品,所以性能表現上以當時的水準來說很不錯,而且又正好搭上 NVIDIA 在 GeForce FX 這一世代慘遭滑鐵盧的契機,因此 ATI 度過了一段非常輝煌的歲月。
但是接下來的 R400 呢?ATI 幾乎照端原本的架構,沒有甚麼新的長進 (了無新意的階段),然後在 NVIDIA 推出 GeForce 6 系列挽救慘澹的 GeForce FX 系列之後 ATI 曾經一度的輝煌幾乎是馬上就開始褪色了,還搞了個只做了半套根本沒甚麼人買的初代 CrossFire 技術 (在 5-15 我有特別提,當時的 CrossFire 有分主卡、副卡,而且還得使用專用的輸出線才行)。
然後 R500 就在不斷跳票延期,而且後來性能提升還不明顯與 GeForce 7 系列的強力打擊之下給 ATI 開展了一次大幅的衰退,埋下了後來被 AMD 收購的伏筆,並且在接下來 R600 的失敗當中讓 ATI 幾乎是摔個半死,當時可是有很多人懷疑本來狀況就不是太好的 AMD 會不會被迫要把 ATI 吐掉或是裁撤掉 ATI 的部門宣告一個時代的終結與 NVIDIA 獨大的時代開始呢。
而這次的情況也是差不多,在 R700 的時候 AMD 突然放棄跟 NVIDIA 爭取最大、最快、塞最多電晶體的 GPU 性能王寶座,而是轉而追求快速推出與壓低價格提高性價比的小核心戰略,結果還真的把 NVIDIA 殺了個措手不及,GTX 200 系列本來難以動搖的價格瞬間為之傾倒,一時之間 HD 4870、HD 4670 成為最常見的顯示卡選擇。
而 Evergreen 家族則是 R700 系的大幅優化版本,給 AMD 帶來了收購 ATI 之後顯示晶片部門的第一個輝煌時期,但進入北方群島家族之後又再次出現了無新意的情況了,並且在北方群島家族的後期開始陷入成長停滯,但幸好後來 AMD 及時推了 GCN 才沒有再次進入自由落體時期,也使得 AMD 的顯示晶片部門得以一直存在下去至今。
而同樣的循環實際上也是緊接著又再次上演了,GCN 架構產品曾經一度因為挖礦熱潮而大賣,但在比特幣價格崩盤時又有了明顯的退燒,此後又隨著架構沒有重大革新、性能沒有明顯提升而走入下坡,並且在去年 GeForce 10 系列推出時走到了最谷底,隨後卻又靠著今年已發布與明年將發布的新產品而似乎有要觸底反彈的跡象。