小晶片(Chiplet)是什麼?把1顆晶片拆小再組合的原因
小晶片(chiplet)是把大晶片的電路拆成幾顆小晶片分別製造,再在同一個封裝裡連接起來的做法。晶片越大,不良品就越多,成本也越高,而且能做出的大小還有上限。所以AMD、Intel、Apple、NVIDIA等公司都在使用。不過,連接的地方會多花電力和時間,所以不一定總是划算。
這篇文章可以了解
- 1顆大晶片成本高的原因,以及能做出的大小上限
- 拆成小晶片能得到的3個好處
- 晶片之間的連接方式(基板、矽橋、堆疊),以及UCIe規格
- 拆分帶來的額外負擔,以及AMD、Intel、Apple、NVIDIA的實例
先備知識:如果知道晶片(積體電路)是「把元件和配線集中在一小片矽上的電路」,會比較容易閱讀。這在「積體電路(IC)是什麼?」中說明。
生活中的例子:新聞裡的小晶片
「新的CPU採用小晶片架構」「把2顆晶片當作1顆GPU來運作」。在電腦CPU和AI用GPU的新聞裡,常會看到這類說法。兩者指的都是:1個產品裡裝了好幾顆晶片。
例如NVIDIA在2024年發表的AI用GPU「B200」,就是把2顆大晶片當作1顆GPU來運作。Apple在2022年發表的M1 Ultra,也是把2顆晶片連接起來的產品。
另一方面,手機的核心晶片,到2026年為止,大多仍然是用1顆晶片做成。因為小晶片是一種晶片越大、越容易划算的做法。
先整理用語:晶粒、單晶片、小晶片
晶片是在稱為晶圓的圓形矽板上大量排列製造,最後再一顆一顆切開。切下來的矽片,稱為「晶粒」(die)。新聞裡的「晶片」,有時指晶粒,有時指包好的成品。
晶粒要裝進帶有對外連接端子的外殼,才會成為產品。這個外殼稱為封裝。製造的流程,在「半導體晶片是怎麼做出來的?」中說明。
把產品需要的電路全部做在1顆晶粒上的做法,稱為「單晶片」(monolithic)。英文原意是「由一整塊岩石構成」。大多數的晶片,都是用這種方式製造。
相對地,也有把電路拆到好幾顆晶粒上分別製造,再在同一個封裝裡連接成1個產品的做法。拆開後的每一顆小晶粒,稱為小晶片(chiplet)。Intel把同樣的東西稱為「tile」。
原理1:晶粒越大,不良品越多
不管工廠多麼乾淨,晶圓上都會沾上肉眼看不見的微小灰塵或刮傷。這些稱為缺陷。只要有1個缺陷落在電路的重要位置,那顆晶粒就無法正常運作,成為不良品。
做出來的東西中良品所占的比例,稱為良率。如果缺陷隨機落下,面積越大的晶粒就越容易碰到缺陷。也就是說,晶粒越大,良率越低。
用數字來想想看。假設造成不良的缺陷,以每1 cm²平均0.1個的比例隨機落下。這時,200 mm²(2 cm²)的晶粒完全沒有碰到缺陷的比例,用機率計算約是82%。
那麼,4倍大的800 mm²晶粒呢?可以把它想成4個200 mm²的區塊排在一起。4個區塊都必須沒有缺陷,所以把0.82連乘4次,約是45%。良品不到一半。
如果把同樣的面積拆成4顆200 mm²的晶粒,良品約是82%。用測試挑出良品再組合。以100顆大晶粒的矽面積來比較,大晶粒的良品約45顆。換成小晶粒,可以做出約80組「4顆1組」的產品。
不過,這個比較沒有算進連接用電路增加的面積,也沒有算進測試、組裝的費用和不良。把這些算進去,差距就會縮小。
這裡用的是稱為帕松良率模型的最簡單想法。在晶圓邊緣缺角的晶粒,以及缺陷成群出現的情況,這裡也都忽略了。想換數字試試看,可以用「晶粒良率計算器」。
原理2:一次能轉印的大小有上限
晶粒的大小還有另一道牆。電路的圖案,是用光把原版的圖案轉印到晶圓上的機器做出來的。這種機器稱為曝光機。詳細內容在「EUV微影是什麼?」中說明。
曝光機不是一次轉印整片晶圓,而是把固定大小的範圍,一邊移動位置一邊轉印幾十次。在廣泛使用的機台上,1次能轉印的範圍最大是26 mm×33 mm,約858 mm²(ASML機台的規格)。
1顆晶粒通常必須放進這個範圍內。所以約858 mm²,就是1顆晶粒大小的大致上限。轉印用的原版稱為光罩,所以這個上限也稱為「光罩尺寸限制」(reticle limit)。
NVIDIA的B200,把2顆大小達到這個上限的晶粒連接起來。也就是把1顆晶粒放不下的電路,拆開來放。另外,新一代稱為High-NA的EUV曝光機,1次能轉印的範圍會減半,變成26 mm×16.5 mm。
原理3:拆開來的3個好處
1. 良率變好
第1個是前面看到的良率。晶粒小的話,就算有不良,丟掉的也只有那1顆。不過,前提是在組裝之前,先確認每一顆晶粒都是良品(後面會說明)。
2. 每個部分可以選擇製程世代
晶片的製造技術,有「7奈米」「3奈米」這類世代的名稱。越新的世代能把電路做得越細,但每片晶圓的價格也越高。數字的意思,在「「2奈米」「3奈米」是什麼的長度?」中說明。
晶片裡有和外部零件交換資料的電路,稱為I/O(輸入輸出)電路。I/O電路就算用新世代製造,也不太會變小,所以用昂貴世代的好處不多。
AMD在2019年的第2代伺服器CPU「EPYC」(代號Rome)中,用了這個想法。負責計算的晶粒,用當時最先進的7 nm世代製造,最多8顆;I/O晶粒只有1顆,用較舊、較便宜的14 nm世代製造。
3. 同一種晶粒可以重複使用
把同一種計算用晶粒,改變數量來組合,就能做出好幾種性能不同的產品。AMD把和第2代EPYC相同的計算用晶粒,也用在電腦用的Ryzen 3000系列上。需要新設計的晶粒種類變少,就能壓低開發的工夫和費用。
原理4:晶粒之間怎麼連接
拆開的晶粒之間,用很多條配線連接。配線越多、越短,就能用越少的電力傳送越多資料。連接方式大致有3種。
用基板的配線連接
最簡單的方法,是把晶粒排在封裝的底板(封裝基板)上,用板子裡的配線連接。這塊板子是樹脂做的,成本低,但配線粗,能通過的條數不多。第2代EPYC就是用這個方法連接。
用矽板或矽橋連接
需要更多配線時,會在晶粒下方放一片矽,用和做晶片相同的方法做出細配線。把晶粒排在大片矽板上的方式,這片矽板稱為中介層。它常用來連接AI用GPU和記憶體,在「HBM是什麼?」中有說明。
Apple說明,M1 Ultra的2顆晶粒,是用連接超過1萬個訊號的矽製中繼板連接的。Apple把它稱為「UltraFusion」,並表示從軟體看起來就像1顆晶片。
也有不用整片板子,只在晶粒交界的下方,埋入小小矽橋的方法。Intel把它稱為「EMIB」,從2017年起用於量產(根據Intel的資料)。
像這樣把晶粒橫向排列、用細配線連接的方法,統稱為2.5D封裝。這個名稱的意思是介於平放的「2維」和堆疊的「3維」之間。
堆疊起來
把晶粒垂直疊起來連接的方法,稱為3D封裝。上下的距離非常短,又能用晶粒的整個表面來連接,所以連接的數量可以大幅增加。
疊起來的晶粒之間,也可以不用焊料,直接把銅電極彼此接合。這稱為混合鍵合。AMD的Ryzen 7 5800X3D(2022年上市),就是用台積電的這項技術,把記憶用的晶粒疊在計算用的晶粒上。
共通的連接規格:UCIe
到目前為止的例子,都是把同一家公司設計的晶粒,用自家的方法連接。要組合不同公司的晶粒,就必須統一連接的規則。
因此在2022年3月,半導體和IT的10家大公司,發表成立制定共通規格的組織。成員包括AMD、Arm、Intel、三星(Samsung)、台積電(TSMC)等。這個規格稱為UCIe。它規定了晶粒之間如何傳送訊號,以及用什麼程序交換資料。
2024年8月發表的修訂版(UCIe 2.0),加入了堆疊用的3D封裝規則。不過,即使規格統一了,要把其他公司的晶粒組合起來,在供電、散熱和測試上仍有課題。
拆分帶來的額外負擔
小晶片並不是只有好處。設計晶片的公司,會比較增加的負擔和好處,再決定要不要拆。
連接處會多花電力和時間
1顆晶粒裡的配線,可以做得非常細、非常短,條數也能很多。跨越晶粒的配線比較長,條數也有限。所以跨晶粒傳送資料,會比在1顆晶粒內傳送花更多電力。
資料送達所需的等待時間也會變長。
連接用的電路,也會占用晶粒的面積。根據AMD的數字,2017年的第1代EPYC拆成4顆後,矽的總面積增加了約10%。即使如此,AMD估算的成本,只要1顆大晶粒的約6成。
組裝前的測試很困難
只要混入1顆不良的晶粒,連同昂貴的良品晶粒在內,整個產品都不能用。所以在組裝之前,要先確認每一顆晶粒都是良品。這樣確認過的晶粒,稱為KGD(已知良品晶粒,known good die)。
可是,還沒封裝的裸晶粒,很難像成品那樣做細部測試。組裝的過程本身,也可能產生不良。使用中介層等的先進組裝,本身也要花費用。
熱容易悶在裡面
把晶粒排得很近,或疊起來,熱就會集中在狹小的地方。疊起來時,內側晶粒的熱,必須穿過其他晶粒才能散到外面。怎麼散熱,是3D封裝特別大的課題。
從實際產品看小晶片
下面整理主要的例子,以及發表或上市的年份。拆分和連接的方式,每個產品都不一樣。
| 年份 | 產品 | 拆分與連接方式 |
|---|---|---|
| 2019年 | AMD EPYC 第2代(Rome) | 最多8顆7 nm的計算用晶粒,和1顆14 nm的I/O晶粒,在基板上連接 |
| 2022年 | Apple M1 Ultra | 2顆晶粒用矽製中繼板(UltraFusion)連接 |
| 2022年 | AMD Ryzen 7 5800X3D | 把記憶用的晶粒,用混合鍵合疊在計算用的晶粒上 |
| 2023年 | Intel Core Ultra(代號Meteor Lake) | 把4個tile疊在底座晶粒上(Intel的Foveros技術) |
| 2024年 | NVIDIA B200 | 2顆達到大小上限的晶粒並排,當作1顆GPU運作 |
Intel的GPU(代號Ponte Vecchio,2022年發表產品)組合了47個tile。
從數字來看
TB(terabyte)是1兆位元組。「每秒○TB」代表晶粒之間1秒能傳送的資料量。
| 數字 | 意思 |
|---|---|
| 約858 mm² | 1次曝光能轉印的最大範圍(26 mm×33 mm)。晶粒大小的大致上限 |
| 約45%和約82% | 缺陷為每1 cm² 0.1個時,800 mm²和200 mm²晶粒的良率(本文的假設計算) |
| 約10% | 第1代EPYC(2017年)因為拆成4顆而增加的矽面積(AMD的數字) |
| 超過1萬個、每秒2.5 TB | 連接M1 Ultra 2顆晶粒的訊號數,以及能傳送的量(Apple,2022年) |
| 每秒10 TB | 連接B200 2顆晶粒的通道能傳送的量(NVIDIA,2024年) |
| 47個 | Ponte Vecchio的tile數量(Intel,2022年) |
傳送量是各公司發表的數值,計算方式可能不同,所以不能直接比較。
常見的誤解
誤解:只要改成小晶片,就一定會變便宜、變快
實際上,划算的主要是大晶片。把小晶片再拆開,良率的好處很小,連接電路和組裝的費用常常會超過好處。跨晶粒的通訊,也會多花電力和時間。新聞容易強調優點,代價比較不容易看到。
誤解:小晶片就是把晶片疊起來的3D技術
實際上,小晶片是「分開製造,在同一個封裝裡連接」的想法。像第2代EPYC和B200那樣,橫向排列連接的產品也很多。堆疊的3D封裝,只是連接方式的選項之一。因為「先進封裝」「3D」這些詞常和小晶片一起被報導,所以容易搞混。
誤解:有了小晶片,就不再需要把電路做細的微縮
實際上,負責計算的晶粒,現在也大多用最先進的世代製造。第2代EPYC的計算用晶粒,也是當時最先進的7 nm世代。小晶片不是微縮的替代品,而是和微縮搭配來提升性能的方法。包含其他方向在內的全貌,整理在「微縮之後」中。
進一步學習
- 用表格看並排與堆疊的差異:2.5D與3D封裝的差異、矽中介層、有機中介層、矽橋的差異
- 堆疊時的接合方法:混合鍵合與微凸塊的差異
- 組裝前後的測試:晶圓測試與最終測試的差異
- 用數字試試看:用「晶粒良率計算器」,可以改變晶粒大小和缺陷數量來比較
- 下一步的用語:小晶片的詳細解說、連接上下的TSV、小焊料顆粒的微凸塊、台積電的CoWoS
- 相關文章:堆疊的記憶體請看「HBM是什麼?」;製造晶粒的公司和組裝的公司如何分工,請看「晶圓代工是什麼?」