摘要:為深刻清晰地認識我國芯片行業的發展狀況,開展了國內外芯片的主流生產模式的研究。從世界上現有的芯片公司類型出發,深刻分析了其運作模式和核心業務內容以及各類型公司的優勢與不足。然后以GPU芯片為例,詳細闡述了芯片從需求分析到流片生產的過程,并研究了芯片生產的關鍵工藝和技術難點,重點分析了在芯片設計階段軟件設計中的研發模式和硬件研發的設計模式,并對各階段的芯片測試方案做了細致的分析闡述。最后分析了我國芯片行業的優勢與短板,為芯片行業的發展提出了建議。
關鍵字:芯片產業模式;芯片設計;芯片制造;GPU
一 、引言
近年來,受制于技術、材料,我國國內的集成電路、半導體行業受國家政策支持下飛速發展,一大批芯片企業發展迅猛,開始占據更多的市場份額,成為我國半導體產業的中流砥柱。雖然芯片產業實力快速增強,芯片設計、制造生產和封裝測試等配套產業較為完善,但在構架設計、硬件生產等方面還與發達國家存在較大差距[1]。芯片設計制造是大國之間競爭最為激烈的領域之一,是未來先進生產力的重要支柱,目前我國芯片自給率僅為30%,國內芯片受生產力的制約難以滿足龐大的市場需求,芯片生產水平的提升迫在眉睫。
二、芯片公司的主要類型
芯片公司按照其運作模式可分為 IDM(integrated Device Manufacture)模式、Fabless模式和Foundry模式。其中由IDM公司整合了芯片軟硬件設計、生產和測試等芯片制造的整個生產鏈,因而規模龐大、技術底蘊深厚。其優勢在于芯片制造完全自主可控,完備的結構體系讓芯片生產組織協同效率高,完善的技術支持使得產品質量可靠,研發和生產技術的積累極大地降低了產品升級換代和維護的成本,所生產的芯片往往是通用型芯片。但隨之帶來的是公司規模大、運行成本高的缺點,這些特點決定了這類公司數量少、技術頂尖的特性。由于工業芯片性能差別大,許多特殊工藝,比如BCD(Biploar、CMOS、 DMOS)工藝,僅能在自建產線上才能夠有更好的體現,因此IDM公司定制化的工藝與設計,更能滿足特殊的工業應用場景需求[2]。
Fabless模式的公司也被稱為design house,這類公司專注于芯片的設計,由芯片生產廠商完成流片、測試等工作。其優勢在于成本低、僅獲取芯片設計的利益,而不承擔流片的風險。同樣不涉及芯片的實體銷售,避免了芯片庫存壓力對公司帶來的負面影響。相較于通用芯片,根據客戶需求,定制化地進行設計制造出的芯片在特定場景更能發揮芯片的效能,從而在當下的市場環境下能夠占得一席之地。
Foundry模式,即芯片代工廠,該類公司的核心業務是利用客戶提供的芯片設計方案生產芯片實物,其中芯片設計稿大多來源于Fabless公司。由于生產芯片需要光刻機等硬件設備的支持,Foundry模式的芯片公司具有較高的技術壁壘。頂級的芯片代工廠在行業中壟斷了高端芯片的制造,一方面在于晶體管門電路的尺寸從28納米到22納米、14納米、7納米,再到如今頂尖水平的5納米,制造工藝是一個長期的技術發展與技術沉淀的過程。顯著區別于手機、汽車行業的是,新興的芯片制造公司在很長一段時間內難以企及一線芯片制造公司,寬闊的技術護城河使得芯片制造公司的領頭羊賺取巨額的利潤;另一方面,集成電路行業的巨頭們不斷地與頭部代工廠建立了越來越深的合作關系,如英偉達、蘋果公司的產品主要由臺積電和三星公司主要代工生產。對客戶而言,行業巨頭強強聯合所生產出的芯片產品質量、所耗成本均能得到有效把控,因此會優先選擇這類產品,正反饋作用下,頭部芯片代工廠與其他廠商差距越拉越大。
就公司模式的關系而言, Fabless模式和Foundry模式的公司業務相結合便成了IDM模式公司。IDM模式的公司體量大,對資金、技術、管理各方面都有更高的要求,但世界范圍內對芯片的需求增長又相對穩定,因此決定了IDM模式的公司數量少,但能占據全球大量份額。Fabless公司和Foundry公司相互合作,分別負責芯片設計與芯片制造,由此瓜分其余份額。IDM公司產業鏈齊全,能為客戶提供從芯片最初構想到流片的一站式服務,而客戶選用由Fabless公司與Foundry公司協作生產的方案一定程度能夠降低風險,也能更加個性化地定制芯片以滿足實際需求。此外,Foundry模式公司能夠獲得客戶信任的一個必要條件是其不涉及芯片設計的相關業務,因而能夠嚴格地保護客戶的知識產權,而不存在侵犯、盜取用戶和芯片設計相關權益的問題。
三、GPU芯片介紹
芯片按其應用角度可分為處理器芯片、電源芯片、存儲芯片、通信芯片和接口芯片等,其中處理器芯片可分為中央處理單元(CPU)、圖形處理器(GPU)、視頻處理單元(VPU)、數字信號處理器(DSP)、神經網絡處理器(NPU)。
中央處理器是電子計算機的核心組成單元,是運行樞紐與中心,主要由控制器、運算器構成,并與存儲器、輸入輸出設備共同構成計算機核心部件。CPU主要承擔著接收和處理計算機中指令的任務,高效準確地讀取、解析由總線傳輸指令后執行具體命令。另一方面,CPU需要完成任務調度,資源分配,執行通用計算等工作,足以見其重要性。GPU是圖形處理器,也稱為視覺處理器、顯示核心,是一類在智能手機、平板電腦等移動端設備或是個人計算機、大型游戲機和工作站內進行圖形和圖像相關運算的微處理器。在其設計之初,主要用于處理圖像數據,但隨著社會發展的需要,在GPU內逐步加入更為豐富的功能,如物理模擬、AI運算和音視頻編碼解碼等,其強大的計算能力使得高質量圖像的實時渲染、高效快速的深度學習模型訓練成為現實。CPU內部僅有數個數量有限的內核,承載著大量計算、調度、執行等多方面繁重的工作。在大量實踐中發現,一些計算簡單、數量較多、獨立性較強的重復性操作在這些繁重的任務中占據了一定比重,為提高效率很自然地出現了將該類操作交由特定單元進行單獨處理的設計思路,用于處理具有高度并行性的圖形渲染工作的圖像處理單元,即GPU,應運而生[3]。GPU承擔了部分CPU的工作,圖形渲染、格式轉換等需要大量計算的任務在CPU上進行處理會耗費大量的時間,而這些處理同一類型數據的計算任務交由GPU處理能夠極大地提升工作效率和系統效能[4]。但GPU無法單獨工作,需要由CPU進行調度和調控。GPU內部有大量的計算單元,計算單元內進行簡單的邏輯運算,因其計算單元數量眾多、計算方式有限且統一,GPU的圖形處理能力遠超CPU。用GPU特定地處理圖形相關的任務,能夠顯著提升計算效率,這也是專有功能芯片存在的意義所在。
四、芯片設計制造流程
將以GPU芯片的生產為例,詳細分析研究芯片設計制造的流程。芯片設計大致可分為需求分析、系統設計、前端設計和后端設計四個部分。其中需求分析主要從芯片用途入手規劃芯片的功能特性,如對于智能手表的嵌入式芯片要求其具有低功耗、窄面積、低延遲等特性,并且對比現有芯片的各項參數設計改進、提升思路,衡量流片成本與封裝難度等。系統設計的主要工作包括完整的系統構架、模塊劃分、功能設計等,同時確認頻率、功耗等各項參數的具體設定。芯片前端包括RTL 編程、仿真驗證和綜合邏輯驗證,其中RTL編程是根據系統設計中的規劃通過硬件描述語言實現設計文檔中的各個功能模塊,保證邏輯清晰、穩定且容易實現;仿真驗證階段主要通過諸如Modelsim等仿真工具檢驗代碼所構建的功能的正確性,時序的可行性等;邏輯綜合驗證主要過程為,通過讀取所設計的RTL描述,并將其翻譯轉換為相應的功能塊和功能塊之間的拓撲結構,然后依據相關時序要求、面積約束等,利用一定的算法對其進行優化,最后根據時序和面積約束條件,從目標工藝庫中尋找最為合適的單元構成具體的電路邏輯網表;而后端設計的工作為對需求分析中指定的各項芯片規格參數做具體實現,主要步驟包括布局規劃、布局實現、時鐘樹綜合、布線、工程修改、形式驗證。
(一)一種并行的研發策略
為了加速芯片研究進度,降低生產周期,硬件團隊和軟件團隊往往需要并行異步工作。硬件團隊完成基本的設計后,會開發一個GPU軟件模型,在軟件層面上模擬GPU的各項功能,當然GPU軟件模型的運算性能遠低于實際的GPU產品,其作用在于為軟件團隊提供驅動開發和驗證的平臺。軟件團隊在模擬出GPU在實際工作中會接收到的輸入信號后,將該信號作為GPU軟件模型的輸入信號,將一系列的數據處理、模式配置、參數配置等處理命令和配置信息組裝成為command buffer,提交至與GPU的數據交互區,然后由GPU軟件模型讀取命令信息,逐條解析后,依次執行相應的操作,GPU軟件模型處理后得到相應輸出,通過檢查該輸出與預期輸入是否相同的方式可檢驗GPU軟件設計的合理性和有效性。
(二)軟件設計
GPU芯片需要經過諸如游戲公司等GPU芯片的直接使用者進行二次開發后,才會呈現在普通消費者面前,因此芯片的軟件設計一方面是為二次開發人員提供程序接口,另一方面是與芯片內核進行通信,傳遞指令。在根據客戶需求確定了芯片功能后,軟件團隊依據需要傳入GPU中的用戶可調節的參數和具體功能設計接口函數,要求滿足調用的便捷性,功能的完整性,使用的安全性,拒絕不合理的參數配置保護芯片硬件等,并需要隱藏實現過程以保護芯片內部設計的技術細節。GPU的軟件的實現邏輯大致為,軟件程序通過圖像API (Application Program Interface)將用戶指令傳輸至驅動程序,在驅動程序中檢查指令的合法性后,將指令存放至特定緩沖器(Buffer)中,其中指令主要包括所需調用的芯片寄存器的實際地址和所需要配置的值(value)。存放在緩沖器的指令可被GPU所讀取,具體方式為顯示調用沖刷(flush)指令或是滿足一定時間條件后,驅動程序將buffer的內容傳輸至GPU,緊接著GPU通過主機接口(Host Interface)讀取命令,并通過前端(Front End)處理命令。
(三)硬件設計
在軟件團隊利用GPU軟件模型開發驅動程序的同時,硬件團隊便開始GPU芯片的系統框架、電路邏輯設計等,主要采用的是IEEE(Institute of Electrical and Electronics Engineers)標準下的VHDL和Verilog HDL兩種硬件描述語言。與高端芯片生產相關的大型設計通常是采用自頂向下的設計方法。設計由系統層面開始,將GPU系統分為數個主要功能模塊,在每個功能模塊中進一步地按照一定規則拆分為更為細化的若干個子單元,逐層劃分直到最基本的功能單元為止。與自頂向下的系統設計方法不同的是,用VHDL或是Verilog HDL語言進行功能實現時往往是自底向上的。首先用語言內置的基本邏輯門,如與門、非門和或門,設計加法器、乘法器等基本功能元件,并將其封裝成為基本單元模塊,用于描述特定設計的結構或是功能。模塊的端口定義了包括名字、信號流向和信號的位寬等信息。將多個簡易功能模塊有機結合可得到功能更為豐富的高層模塊,逐層搭建直至完成系統設計。自底向上的實現方法的優勢一方面在于,單個含有通用的基本功能的模塊設計好后,可被其余功能模塊調用,由此實現了一次實現多次使用的高效開發模式;另一方面在于,將基本功能單元逐層封裝成為大型的功能單元后,在功能測試或調試階段出現問題時,可根據產生的錯誤快速定位至某一功能塊,逐層拆分定位后便可高效分析找到錯誤產生的源頭。對單個錯誤源進行修改后能夠將其更新至系統全局,極大地提高了開發效率。
利用硬件描述語言設計完成GPU后,只是在設計層面上規劃了GPU的布局,需要在某一平臺或是環境內運行才能得到驗證,現如今大多公司選用的驗證平臺均為FPGA(Field Programmable Gate Array)。FPGA是一個由可編程輸入輸出單元、嵌入式RAM(Random Access Memory)和數字時鐘管理模塊等組成的一種集成的數字電路,可由工程師長時間、多次數編程、燒錄的邏輯器件,本質上同樣可視為一種芯片。FPGA可實現幾乎無限次數的編程、燒錄,并可通過編程改變內部結構,極快地加載和運行不同的設計方案,驗證芯片的功能和邏輯;FPGA適用于大多數芯片設計的驗證,無論是GPU或是VPU,對其而言都只是電路邏輯的不同;此外還有工作頻率可調、可定制、可重構、高并行等優點。將設計完成的Verilog程序燒錄至FPGA,便使得FPGA具有了所設計的GPU的全部功能特性,如果將GPU軟件模型比作一個虛擬的數學模型,那么燒錄有GPU程序的FPGA板就像一個體積更大的GPU芯片。在FPGA版上進行測試目的一方面是為了檢測硬件邏輯設計是否合理,進行時序、性能分析等,另一方面將軟件程序燒錄至有Verilog程序的FPGA上運行并獲得輸出結果,將該結果與軟件程序在GPU軟件模型上的運行結果進行對比,可進行穩定可靠的交叉測試,以確保最終生產出的芯片符合預期要求。測試內容包括功能測試、精度測試等,功能測試即測試功能實現是否完整、具體功能是否符合預期要求等,而精度測試主要是驗證GPU生成的結果和預期的標準輸出之間的誤差是否在可接受范圍內,通常標準輸出是指通過對輸入數據進行精確計算和嚴密邏輯推理得到準確結果。若兩部分測試結果一致,則基本可確認設計合理。至此便完成了芯片設計的流程,也即是Fabless公司的主要業務,完成設計工作后便能夠開始下一步的生產工作。
(四)芯片生產
由Fabless公司完成芯片的軟硬件設計后,便可交給芯片代工廠開始芯片生產的下一步驟。芯片生產分為流片(Tape Out)和批量生產兩個步驟,其中,流片是按照芯片生產的步驟和工藝制造少量芯片用于進一步的驗證,該步驟介于芯片設計和芯片批量生產之間,是芯片制造過程中的最為關鍵的環節之一。
芯片制造的本質是將數量上億的晶體管按照設計方案放置到固定體積大小的芯片上。近年來,芯片制造工藝已進入了10納米水平,極其精細的芯片生產操作僅能通過光刻機完成。具體為,在晶圓上涂抹在光照條件下可被顯影液溶解的光刻膠后,利用光透過掩模版后在晶圓上雕刻出目標電路圖形,再利用顯影液在晶圓顯影、曝光,然后溶解光刻的部分;緊接著利用特定的化學藥品將晶圓上不帶有光刻膠的區域刻蝕出溝槽,并加入N型或P型物質制造電極后,制造出晶體管;然后利用鍍銅技術通過多層導線將晶圓上的晶體管連接。具體為,使用銅在硅基表面鍍層,然后利用光刻、刻蝕等工藝將該銅層切割成為連接各晶體管的導線,使之成為具有設計方案中的電路邏輯。掩模版、晶圓的昂貴造價、流片步驟的數量繁多使得流片成本極高。此外,一款芯片往往無法一次流片成功,在流片失敗后,各參與方共同分析現象、查找失敗的原因,并對芯片做出相應的優化和改進,然后進行下一次流片,直至流片成功。因多次流片使得公司資金不足,并最終導致芯片未能批量生產的案例不在少數。流片后芯片通常需要經過晶圓測試(Chip Probing),封裝測試(Final test),系統級測試三個測試流程。其中晶圓測試是將待測晶圓放置于探針平臺上,然后使用測試程序通過探針卡(probecard)將激勵信號批量傳輸至晶圓上進行電壓、電流、時序和功能的驗證,以確保晶圓上的每一個子單元都能滿足基本的器件特征或是設計規格。測試通常會在不同的條件下多次進行,如在常溫條件下對基本功能進行覆蓋測試、高溫烘烤條件下進行功能的穩定性測試、在客戶所要求或是未來將要的使用環境下進行測試等。晶圓測試的目的是查找晶圓中存在的問題的子單元,并進行修補,并通過測試結果決定芯片是否進行下一步的封裝流程,以節約成本。封裝測試是對封裝完成的芯片進行功能測試,通過晶圓測試后的芯片會使用絕緣外殼對芯片內部進行封裝以保護電路,對外用引腳將芯片接口引出。測試時,將芯片插入芯片底座(socket)以接入系統電路,通過測試系統對芯片各引腳施加電壓測試芯片所有的預期功能。完成封裝測試后的芯片將交還給芯片設計團隊,測試人員將芯片安裝至測試系統中,進行全面的功能測試、精度測試和性能評估等,系統級測試是芯片交付予客戶前的最后一道保障。測試完成后,便完成了芯片制造的所有流程,隨后便是批量生產,最后走入市場。
五、結束語
與世界頂尖的芯片公司相比,在芯片軟件方面我們具有一定的競爭力,但在硬件方面還存在較大的差距。我國芯片行業起步晚,技術積累不足,在芯片的硬件構架設計與芯片制造生產兩方面表現得尤為顯著,這導致我國在全球高端芯片的市場中占有率低。若要改變集成電路技術水平落后的現狀,一方面需要從教育入手,強化對集成電路、微電子、計算機、通信和自動化等相關專業人才的培養,充分且合理地利用中國近年來的工程師紅利;另一方面國家在高科技領域的規劃和發展應適當向芯片行業傾斜,加大資金投入和對公司、人才的扶持力度,尤其是在光刻機的自主研發和生產上;此外,應建立健全芯片生產體系,完善相關配套服務,最終定能夠讓我國芯片產業走向世界前沿。
作者單位:寧剛玲 東營市無線電監測站
參" 考" 文" 獻
[1] 楊瑩, 張志娟, 蘆娜. 中國芯片產業發展路徑選擇研究[J]. 現代雷達, 2021,43(11): 96-97.
[2] 朱晶. 全球工業芯片產業現狀及對我國工業芯片發展的建議[J]. 中國集成電路, 2021,30(Z1): 15-1948.
[3] 何志超. 基于嵌入式GPU的SAR時域成像算法設計與系統開發[D]. 西安電子科技大學, 2021.
[4]" 朱祖芳." 基于CPU+GPU+FPGA異構調度系統的設計與實現[D]. 浙江大學, 2021.
寧剛玲(1970.06-),男,漢族,山東廣饒,研究生,理學碩士學位,東營市無線電監測站站長、高級工程師,研究方向:無線電監測、非法信號特征識別與快速定位。