- 詳解FPGA:人工智能時代的驅動引擎
- 石侃編著
- 5733字
- 2023-09-26 16:46:13
1.3 超越維度的限制——3D FPGA
在過去的幾十年中,半導體和芯片技術在摩爾定律的指引下得到了飛速發展,然而近年來,人們注意到這種增長速度有逐漸放緩的趨勢,很多人因此開始質疑摩爾定律在目前是否仍然有效,“摩爾定律已死”的聲浪也不絕于耳。
從單一晶體管的角度來說,半導體技術的革新從未停歇,例如,科學家已經制造出了單原子甚至單電子的晶體管,也可以對單個原子的位置進行移動和調整,以取得更好的晶體管性能。但從整個半導體產業的角度來看,這未必是下一步的發展方向。當前人們遇到的問題并不是能不能造出來這樣小尺寸的單一晶體管,而是能否造出一個包含100億個這樣晶體管的芯片。也就是說,這本質上是個經濟問題。因為在理論上,我們是可以制造更小的設備和器件的,但能否讓這些設備穩定工作,并以足夠低的成本進行生產和銷售,則是當前產業亟待思考的問題。
當晶體管的尺寸逐漸接近原子極限時,再使用傳統的晶體管制造技術已經幾乎不可能了。傳統的晶體管結構曾經非常簡單,而現在已經演變成了以FinFET晶體管為代表的非常復雜的3D結構。此外,制造芯片的半導體材料、設備、封裝與測試等全產業鏈都需要同步發展。同樣地,由這些晶體管組成的芯片架構也要不斷進化,從而繼續保持芯片性能的不斷進步。
例如,當芯片在水平維度的擴展逼近技術極限之后,科學家和工程師們就開始探索在垂直方向上對芯片密度進行擴展的可能,并由此發明了3D芯片封裝技術。在FPGA領域,廠商采用的3D芯片技術主要有兩種:賽靈思的堆疊硅片互聯(SSI)技術,以及英特爾的嵌入式多管芯互聯橋接(EMIB)技術。
■1.3.1 賽靈思堆疊硅片互聯(SSI)技術
在每一代半導體工藝早期,工藝和生產技術尚未成熟,因此良率往往較低,對于面積較大的芯片而言更是如此。研究表明,如果硅片面積為6cm2,使用泊松良率模型推斷后,其在工藝早期的良率僅為0.25%。也就是說,此時在一個12英寸的晶圓上僅能產出0.3個能正常工作的芯片。然而,如果硅片面積只有1.5cm2,良率則會高達22%。此時,在同樣的一個12英寸的晶圓上會產出107個能正常工作的芯片,如圖1-6所示。由此可見,在工藝早期,不同硅片面積大小會帶來巨大的良率落差。

圖1-6 工藝早期不同面積的裸晶良率與產量的關系
有意思的是,如果可以將上例中的4個1.5cm2的硅片通過某種方式“組合”成一枚6cm2的芯片,那么同樣的晶圓就可以產出平均26.75枚芯片,并隨之帶來超過100倍的產能提升。這便是賽靈思采用的堆疊硅片互聯(Stacked Silicon Interconnect,SSI)技術產生的主要背景。
堆疊硅片互聯(SSI)技術示意圖如圖1-7所示。和傳統封裝技術相比,SSI技術在封裝基板(Package Substrate)和FPGA硅片之間加入了一層無源硅中介層(Silicon Interposer)。在硅中介層上可以放置多枚FPGA硅片。這些硅片通過在中介層里的硅通孔(Through Silicon Vias,TSV)、微凸塊(Microbumps)以及大量連線進行相互連接。

圖1-7 堆疊硅片互聯(SSI)技術示意圖
在這個結構里,微凸塊用來連接FPGA硅片上的各類引腳;硅通孔負責將硅片的電源、接地以及I/O接口通過C4凸塊連接到封裝基板;在硅中介層中,有著上萬條連線將相鄰的兩枚FPGA硅片進行互連。在SSI技術中,硅通孔是它的核心創新點與技術難點。由于TSV通過蝕刻工藝制造,而非激光鉆孔,因此對制造工藝有著嚴格要求。為了降低系統的制造難度,中介層會使用已經十分成熟的工藝而非最新的工藝制程進行加工,例如65nm工藝等。在硅中介層中,也不包含晶體管等有源器件,這樣可以保證較高的良率,降低制造風險和系統的靜態功耗。
使用SSI技術最主要的優點:能在每代半導體制造工藝的早期,快速生產出良率高的大型FPGA器件,加快了產品面世周期,從而能快速搶占市場,尤其是高端市場。此外,當制造工藝逐漸成熟,并可以生產良率較高的大型單硅片FPGA器件時,使用SSI這種基于硅中介層的技術也能通過組合多枚硅片集成更多的可編程邏輯單元。
在2017年的HotChips大會上,賽靈思發布了Virtex UltraScale+HBM系列FPGA,其中仍然使用了基于第四代硅中介層的技術來組合3枚16nm FPGA,以及2枚32GB的高帶寬存儲芯片(High Bandwidth Memory,HBM),如圖1-8所示。

圖1-8 Virtex UltraScale+HBM FPGA結構圖(圖片來自賽靈思)
■1.3.2 SSI技術的主要缺點
盡管SSI技術能在半導體制造工藝初期大幅提升良率,它的缺點也同樣明顯。總結起來主要有以下4點。
(1)如前文所述,SSI技術特別適用于每代半導體制造工藝的早期。此時制造大型硅片的工藝并不成熟,以至于良率較低。不過,當工藝成熟后,良率會明顯上升,這時采用SSI技術的好處就不明顯了。在開頭的例子中,當工藝成熟后,制造6cm2硅片的良率會從一開始的0.25%猛增至55%,制造1.5cm2硅片的良率會從22%上升至86%。這樣一來,一塊12英寸的晶圓可以產出66.9片6cm2的硅片,以及104.6片4×1.5cm2的硅片,產量差別已然不大。同時,制造硅中介層、TSV以及在同一封裝內組裝多枚硅片的成本就會在此時逐步顯現,導致整體的成本優勢進一步減弱。
(2)和一片完整的大型FPGA硅片相比,將多枚FPGA硅片通過硅中間層組合可能會顯著降低芯片的性能。這里對性能的影響來自于很多方面,例如在垂直方向上,由于硅中間層的引入,為了連接硅片引腳和封裝引腳,就需要先后經過包括TSV在內的很多額外結構,這勢必造成延時的增加。相比之下,在單芯片結構里由于沒有這些額外結構,信號只需經過封裝基板內的導線即可。
在水平方向上,硅中介層中的導線和微凸塊也會帶來額外的延遲開銷。研究表明,對于一個尺寸為7mm×12mm的硅片而言,其中的微凸塊可能分布在距離芯片邊界為2.25mm的“遠方”。此時如果將兩個硅片進行互連,在中介層中的導線長度會非常可觀,從而可能帶來1ns左右的線路延時。相比之下,FPGA片上的延時才不過幾百ps,大概只是前者的1/10。
在2014年,多倫多大學Andre Pereira和Vaughn Betz等人在FPGA國際研討會發表的研究結果指出,硅片間由中介層帶來的延時會對系統性能帶來消極影響。例如,當中介層的互連延時造成關鍵路徑增加0.5ns,1ns或1.5ns時,系統性能會分別下降約20%,35%和50%。
此外,硅通孔TSV也可能會降低系統性能。對于一個大型的FPGA,可能存在成百上千只I/O引腳,而每只都需要有TSV與之對應,這樣會大大增加芯片的制造難度。同時,高密度TSV也可能對信號一致性造成干擾,引發串擾和耦合,尤其對于高速模擬信號而言,這極大增加了設計和控制的難度和復雜性。
(3)SSI技術對FPGA配置的靈活性也可能會造成很大影響。采用多枚FPGA硅片相當于人為地劃分了多個設計區域和硬邊界。為了優化實現一個較大的FPGA設計,就可能需要對系統進行額外的邏輯劃分,盡量使每個邏輯區域不會散落在多個硅片上,而這勢必會增加項目周期和設計難度。此外,這些無法改動的設計區域和邊界也可能會造成額外的片上資源的使用,從而導致功耗的增加和性能的降低。如圖1-9所示,假設原本有一個設計包含模塊A到模塊D,其中D為內存控制器,并連接了大量并行I/O。在單芯片系統中,該設計只使用2/3的芯片面積即可實現,如圖1-9上半部分所示。然而在SSI器件中,由于兩個硅片間的互連延時增加,將模塊D分布于兩個硅片已無法滿足時序要求,因此只能將其放于單個硅片中。這樣一來,模塊A、B、C要重新布局到整個芯片,造成不必要的資源使用,見圖1-9下半部分。
(4)SSI技術的第四個缺點是,為了適應這種新的多硅片FPGA架構,FPGA設計工具需要進行一定程度的改動和優化。對于時序優化工具而言,片間延時的增加使得時序收斂的難度增加。對于布局布線工具而言,由于片間只存在相對有限的布局布線資源,因此增加了布局擁堵的可能性。和傳統FPGA設計流程相比,在布局映射(Mapping)和布線(Routing)兩個步驟之間,可能會需要加入額外步驟實現設計區域劃分,以協調各個硅片的資源使用和時序收斂。另外,由于硅片間硬邊界的存在,在設計工具中可能會需要加入額外的設計區域劃分,以協調各個硅片的資源使用和時序收斂,這也使得全局的時序和布局布線的協同優化變得更加復雜。

圖1-9 多硅片模型對FPGA配置靈活性的影響
■1.3.3 SSI技術小結
賽靈思的堆疊硅片互聯(SSI)技術自2012年發布至今,已經完成了多代的演進,時至今日仍然用于賽靈思最新的FPGA器件中。作為一種多芯片的集成和互聯技術,SSI能在每代半導體工藝的發展初期,迅速提升大型芯片的良率,縮短產品面世的時間,快速搶占市場份額。然而,SSI技術最主要的問題就是人為引入了硅片間的“硬邊界”,并且會給芯片性能造成不可逆的負面影響,也給FPGA設計和優化工具帶來了更大的挑戰。
■1.3.4 英特爾EMIB技術
英特爾從基于14nm制造的Stratix10系列FPGA開始,就采用了“異構3D系統級封裝(System in Package,SiP)技術”。該技術產生的背景,與半導體制造工藝的發展也有密切聯系,最主要的因素有以下兩點:
第一,對于不同功能的IP,它們所對應的成熟或性價比更高的制造工藝不盡相同。例如,對于邏輯電路而言,工藝越先進通常會帶來更好的性能和功耗,這也是為何CPU、GPU、FPGA等芯片產品不斷追求新工藝的原因。然而對于很多其他類型的IP,如DRAM、Flash、傳感器和模擬器件等,它們都適合或只能使用已成熟的工藝進行制造。這樣就需要提供一種全新的硅片互連方式,將不同代的IP進行異構整合。
第二,不同IP的更新迭代速度不同。這里最典型的例子就是各類收發器IP與FPGA的整合。對于相同的FPGA,例如Stratix10,可能需要集成不同類型的收發器,由此形成多種FPGA的子產品門類。這些FPGA產品可能需要支持不同的協議和標準,如PCIe、以太網等,也可能有不同的數據速率的發展和迭代,如從10.3Gbps到28Gbps,再到56Gbps等。但是如果將收發器和FPGA進行同構集成,也就是做在同一枚硅片上,那么每次收發器進行功能迭代和發展,都要重新進行整枚芯片的流片過程。同時,如果需要支持不同的速率或標準,就需要制造多個不同的完整芯片。因此,需要一種全新的硅片集成方式,既能保持FPGA硅片獨立不變,又能異構連接多種收發器IP以組成完整系統。
為了應對這兩個問題,英特爾提出了一個名為“嵌入式多硅片互聯橋接(Embedded Multi-die Interconnect Bridge,EMIB)”的技術。EMIB技術的示意圖和封裝切面圖如圖1-10所示。可以看到,和賽靈思的SSI技術不同,EMIB沒有引入額外的硅中介層,而是只在兩枚硅片邊緣連接處加入了一條硅橋接層(Silicon Bridge),并重新定制化硅片邊緣的I/O引腳以配合橋接標準。

圖1-10 EMIB技術示意圖
與SSI這樣使用硅中介層的技術相比,EMIB最大的優點在于它降低了系統的制造復雜度,并降低了不同硅片間的傳輸延時。由于無須制造覆蓋整個芯片的硅中介層,以及遍布在硅中介層上的大量硅通孔,EMIB只需使用較小的硅橋在硅片間進行互連就可以滿足硅片間的互聯需求。同樣地,由芯片I/O至封裝引腳的連接和普通封裝技術相比并未變化,因而無須再通過TSV或硅中介層進行走線。此外,硅橋接只需在硅片邊緣進行,不需要在中介層中使用長導線。對于模擬器件(如收發器)而言,由于不存在通用的中介層,因此對高速信號的干擾明顯降低。
在英特爾的Stratix10系列FPGA中,EMIB目前主要被用來進行FPGA與收發器以及高帶寬存儲器HBM的連接,如圖1-11所示。這些由EMIB與FPGA互連的部分,英特爾將其稱為不同的“Tiles”(子模塊)。Stratix10系列FPGA和賽靈思的3D FPGA最大的不同點,在于它的可編程邏輯陣列部分使用了一枚完整的FPGA硅片,而非多個分立的小型FPGA硅片,這使其理論上可以規避上文提到的多硅片模型的各種缺點。

圖1-11 使用EMIB技術進行FPGA的異構集成
在2019年的HotChips大會上,一家名為Ayar Labs的初創公司展示了一款名為TeraPHY的硅光學收發器。這個硅光收發器以芯粒(Chiplet)的形式,通過EMIB技術集成在英特爾Stratix10 FPGA上,并完成異構芯片封裝。相比傳統的電氣收發器,這個光學收發器的最高數據帶寬可達2Tbps,傳輸距離最高可達2km,而每比特的傳輸功耗則不超過1pJ(10-12 J)。
除了收發器和HBM外,EMIB還可以用來直接連接多個FPGA硅片。例如在前文提到的目前世界上最大的FPGA-Stratix10 GX 10M中,英特爾首次將兩個擁有510萬可編程邏輯單元的大型FPGA硅片通過EMIB相連,由此形成一個超大FPGA。這兩個FPGA硅片通過25920個EMIB數據接口進行互連,其中每個數據連接可以提供2Gbps的吞吐量,因此系統整體的通信吞吐量高達6.5TBps。這事實上是在印證EMIB技術完全可以勝任處理超高帶寬的吞吐量需求。
從另一個角度看,這種異構集成技術解耦了FPGA與各種IP單元的開發周期,形成了一種模塊化的系統集成方案。這種基于EMIB的橋接方式,能夠將FPGA與其他不同功能的IP,以及不同的制造工藝進行混合集成。這樣使得不同的IP可以在最優的制造工藝下實現,并分別進行工藝迭代。這進一步擴展了FPGA的應用場景,加速了細分產品的面市時間。在簡化芯片本身開發的同時,研發資源也可以逐漸轉移到軟件和生態層面,相對而言降低了開發門檻,使得更多開發者加入,有助于擴大整個生態系統。
■1.3.5 基于EMIB技術的異構FPGA的潛在問題
值得注意的是,基于EMIB的異構FPGA集成方式也有一些潛在的問題和風險。
首先,當使用單枚較大的FPGA硅片時,每代工藝早期的良率將可能會成為很大的問題,這會直接影響產品的面世時間。在當前激烈的市場競爭下,誰的產品優先面世,誰就能搶占更多的市場。不過,隨著半導體制造工藝不斷推進,技術難度不斷增加,兩代工藝的間隔會被逐漸拉長,這樣會使得每代工藝的成熟時間也對應增長,從而在一定程度上緩解工藝早期的良率問題。
第二,通過EMIB連接不同硅片后,可能會形成一個不規則的芯片結構,由此可能引發一系列潛在的問題。在英特爾Stratix10 MX FPGA中(如圖1-12所示),可以看到FPGA與HBM以及收發器的布局排列并不規則。由于EMIB是無源器件,且FPGA和其他外置位IP的制作工藝、集成方法都不盡相同,例如Stratix10 MX中的高帶寬存儲器HBM是基于TSV制造的3D芯粒。那么,在芯片工作時,EMIB兩端的一致性可能會成為問題,如發熱不均衡導致的應力、連接和可靠性問題等。

圖1-12 Stratix 10 MX FPGA芯片圖(圖片來自英特爾)
■1.3.6 EMIB技術小結
EMIB是英特爾在芯片互連和集成領域的殺手锏,它能夠將多種不同工藝、不同功能、不同大小的硅片進行互連集成,同時提供高帶寬、低延時的數據傳輸性能。除了FPGA之外,EMIB已經被廣泛用于英特爾的其他芯片產品,如旗下的Nervana AI芯片NNP-I等。
值得注意的是,EMIB并不是英特爾唯一的3D互連和集成技術。事實上,上文介紹的SSI和EMIB技術也并非是真正意義上的3D芯片技術,這是因為各個硅片仍然只是排列在二維平面,而只是通過額外的中介層或橋接進行互連和集成。在業界,這種集成技術通常被稱為2.5D技術,即介于二維芯片和三維芯片之間。
在2019年初,英特爾就公布了一項名為Foveros的“真·3D”封裝技術,它可以將CPU、GPU、DRAM、Cache等不同功能的硅片堆疊在一起,然后再封裝成為一枚完整的芯片。Foveros將在英特爾基于10nm工藝的Lakefield CPU上使用。
值得相信,隨著半導體集成與封裝技術的不斷推進,諸如Foveros的3D芯片技術也必將用于FPGA上,3D FPGA芯片也終將面世并逐漸成為主流,將來也必然會出現更大、更復雜的FPGA器件。而驅動它出現的技術,也將不斷推動科技和文明的延續。
- 計算機組裝與系統配置
- BeagleBone By Example
- Deep Learning with PyTorch
- scikit-learn:Machine Learning Simplified
- 電腦軟硬件維修從入門到精通
- Large Scale Machine Learning with Python
- 分布式微服務架構:原理與實戰
- Visual Media Processing Using Matlab Beginner's Guide
- Creating Flat Design Websites
- FL Studio Cookbook
- 電腦橫機使用與維修
- Mastering Quantum Computing with IBM QX
- 分布式存儲系統:核心技術、系統實現與Go項目實戰
- 電腦主板維修技術
- 主板維修實踐技術