芯片,是世界上最細微、也是最宏大的工程。芯片設(shè)計開發(fā)者將上百億個晶體管集成到一個總面積低于手指甲尺寸的芯片上,從微米級到納米級再到正在探索的量子級,人類在數(shù)字世界中求解物理世界問題的能力越來越強大。
一場探索星辰大海的旅程,你準備好了嗎?
1、需求定義
以設(shè)計一款手機芯片為例,在直播和Vlog盛行的今天,高清拍攝和美顏就是其需求之一。需求明確后,需要進一步確定納米工藝和IP核選型等。
2、功能實現(xiàn)
功能實現(xiàn)可以理解為通過編寫代碼來實現(xiàn)“高清拍攝”和“美顏”的需求。開發(fā)者們一般用Verilog或者VHDL等硬件描述語言,編寫至少百萬行起的代碼,最終實現(xiàn)所有功能。
IP核的使用是提高設(shè)計效率的不二選擇。IP核可以理解為已經(jīng)設(shè)計完善的可重用模組。如果把芯片比作汽車,那么IP核就是輪胎、方向盤、發(fā)動機等標準組件,可以直接整合組裝到汽車上。
3、功能驗證
在芯片集成度越來越復雜的今天,功能驗證是保障最終流片成功非常重要的一步。目前一輛智能汽車中可能含有上億行代碼,那么如何保證這些代碼精準可靠呢?靠人工來糾錯顯然是不可能的,因此需要通過多種手段配合EDA工具來對代碼進行反復的迭代驗證,其中包括提前發(fā)現(xiàn)代碼中的bug并持續(xù)修改,找到需要優(yōu)化的性能和功耗,直到符合最初定義的芯片需求。
4、邏輯綜合
在功能驗證后,開發(fā)者需要將準確無誤的代碼轉(zhuǎn)換成邏輯電路圖,這一步被稱之為“邏輯綜合”。早期,開發(fā)者們都是手工繪制芯片電路,但現(xiàn)在的芯片動輒包含幾億甚至數(shù)百億個晶體管,已經(jīng)不可能再靠手工繪制電路圖了。
1986年具有劃時代意義的EDA工具——Design Compiler誕生,使最早手動繪制芯片電路的開發(fā)者們可以用代碼將電路描述出來,讓開發(fā)者有機會在今天設(shè)計出包含上百億個晶體管的復雜芯片。
5、物理實現(xiàn)
從最初的代碼,到邏輯電路,再到晶體管電路(即物理版圖),芯片設(shè)計的流程正在一步步推進。在設(shè)計物理版圖時,需要確保所有電路單元的正確連接,并符合制造時的工藝要求。物理版圖是基于邏輯綜合后的成果進行電路布局與繞線,從而形成晶體管在芯片上的形狀、面積與位置,這一過程就是物理實現(xiàn)。
6、晶圓制造
在滿足所有要求后,芯片設(shè)計才算大功告成。之后,開發(fā)者們只需要將物理版圖用標準的文件格式交給晶圓廠,在晶圓硅片上雕刻出實際的電路。
7、封裝測試
封裝和測試是最后一步,之后便得到了我們實際看見的芯片。
芯片誕生的整個過程至少需要1到2年的時間
在經(jīng)歷數(shù)次技術(shù)革命后,人類重構(gòu)世界的能力呈指數(shù)級增長。不斷演進的EDA與IP核技術(shù),將幫助人類創(chuàng)造出功能更強大的芯片,連接起數(shù)字世界與物理世界,抵達數(shù)字世界的未竟之境。