行業新聞 (News) 芯片封裝主頁/ 行業新聞 / 芯片公司是如何把芯片做出來的?
< 返回列表

芯片公司是如何把芯片做出來的?

大家好,我是七點班車,歡迎來到數字IC自修室。

最近發現,經過川普那老頭子的一波操作之后,國人對集成電路芯片設計)產業的關注度也越來越高。就連之前沒有涉及集成電路的獵頭公司也把注意力轉移到這邊來了。但是,經過和一些獵頭朋友的交流,他們普遍認為集成電路很復雜,摸進來就分不清東西南北,更別說要去找對象了。

因此,我想以這篇文章來跟大家聊聊 IC設計公司是怎么把芯片做出來的 。希望對大家有所幫助。

首先,我們先來看看一個IC設計公司大致的組織架構(具體架構遠比這里復雜)。董事會下面是總經理辦公室;總經理辦公室下面有產品經理辦公室,市場部,研發部和測試部等;而研發部又分為IC部門和固件部門。

1 項目誕生 

一個項目的誕生,必定是有原因的。比如市場所需,降低成本等。

這天一大早,領導們跟市場部、產品經理又進小黑屋開會了。原因是上一代產品性能跟不上市場的需求,客戶那邊已經表明態度,性能必須提上去!那領導們在會議上都聊了什么呢?我等蝦兵蟹將就不得而知了。只見他們從小黑屋里面出來,滿面春風。仔細打聽才知道,客戶那邊已經提前下了幾百KK的單。公司一百多號人,今年算是能養活了。2 項目經理  

會后,產品經理和市場總監找到了項目經理Peter,把幾十頁的MRD(market required document)甩到Peter的臉上。

Peter臉上笑嘻嘻,心里MMP。既要性能高,兼容性好,又要面積小。更別說為了做到pin2pin那么多廠家需要的工作量了。不過也絲毫沒辦法,產品經理都是一個德性,你叫請吃飯和說項目難時,他總一本正經地說在等米下鍋;而且對Peter來說,上次被領導翻牌得追溯到兩年前。彼時第一次成為項目經理,Peter興奮得幾天都沒睡著。所以這兩年,Peter可是天天伸著脖子往外看,渴望著領導的再次到來。眼看門前的草已經長得比人還高,他著急如焚,嘴里一直念著李白的那句詩—“鋤草日當午”。此番,終于撥云開見到了月,哪怕通宵達旦,也必須高質量完成任務(反正干活的是底下的小弟,嘖嘖)。3 項目組成立  

很快,Peter便召開了kickoff會議,宣布項目組成立。

在跟大家review 完MRD后,把最大的模塊coding、綜合和STA的任務全交給前端工程師Martin,還解釋說項目多,人手緊張,且公司經費緊張,沒有開工飯,也沒有項目假。人在公司做,活從領導來。Martin想了想,這個月房租還沒著落,后面還有10來個紅色炸彈在等著,只能強顏歡笑。再說,公司能夠給你安排那么多活,說明你還是很靠譜的,畢竟能者多勞嘛。
4 架構設計 

到這,工程師們就開始干活啦。

首先是算法工程師,根據要求提供了一堆算法。系統架構工程師經過一系列嘗試,發現算法使用硬件實現相當的蛋疼,就去找算法工程師理論。然后這兩類系統工程師通過對系統的方案、設計、仿真跟各種撕逼之后(他們撕逼的內容聽說有這些:浮點數算法、軟硬件劃分、IC設計中數據的定點表示、定點算法表示、結構的并行性跟流水線、存儲器分配,還有其他等......),達到平衡點(就是算法能夠較好地使用良好架構跟電路的實現),一份系統設計規格書就出來了。

系統設計規格書里面包含了很多東西,其中必不可少的是系統框架,下圖是一個行人檢測系統的系統框圖。

5 模塊設計 

秉承著先有MAS,再coding的原則,Martin埋頭苦干了差不多一個月,對競品和公司現有平臺進行研究,并寫出了將近70頁的MAS(Macro-Architecture Specification)文檔。IO定義、功能描述、寄存器列表、使用說明、真是面面俱到。這個MAS文檔主要有兩個作用:一是對硬件設計做指導;二是引導固件工程師如何去設計模塊相關的固件代碼。所以通常最終的MAS文檔都要經過與項目經理、和固件工程師反復撕逼,一次又一次的迭代才能形成。

MAS一出,代碼寫起來。這里所謂的代碼包括verilog和VHDL兩種硬件描述語言,而目前國內使用verilog語言的工程師居多,Martin便是其中一員。以下是他寫的代碼:

模塊代碼寫完了,首先需要檢查語法,確保自己的代碼在語法上沒有錯誤;然后是進行模塊級驗證,確保自己寫的代碼功能正確。
6 系統集成 

眼看系統集成的節點要到了,每個模塊的owner加班加點,Martin也不例外,每天在公司擼完,回家洗完澡繼續擼。終于在deadline的前一天把代碼搞定,上傳至服務器。

而拿到了各個模塊的代碼,負責集成的工程師(有可能是項目經理,也有可能是專門負責集成的SOC工程師)就按照系統規格書里的架構,將所有模塊集成起來,形成最終的系統。7 系統級驗證 

驗證工程師在整個項目中起著至關重要的作用。他們需要想盡辦法來確保整個系統能夠正常工作,各項指標正常。所以早在系統架構定下來之后,驗證工程師Billy就像打了雞血一樣,確定驗證需求,提取驗證測試點,然后使用system verilog語言來搭建UVM驗證平臺等。

現在把整個系統和驗證平臺一接,呀!有bug!Billy趕緊跑到Martin旁邊,露出猥瑣的笑容......往往到這個項目節點上,Martin對Billy的態度是:不愿見,害怕見,必要時不得不見。當然,這bug有可能是設計上的bug,也可能是驗證平臺上的bug。

● 注:在某個時間點之前,系統級驗證必須要保證功能上沒有問題。這個時間點叫做RTL Freeze。顧名思義,就是把代碼凍結起來。在這個時間點之前發現BUG,可以修改代碼;過了這個時間點,則需要走繁瑣的ECO流程了。8 FPGA測試 

等系統仿真的基本通路跑通后,要進行FPGA測試。這個過程通常是IC前端工程師和固件工程師合作來完成的。

簡單的分工是,IC前端工程師負責出bit文件,固件工程師負責主要的測試。然后一起debug。所以等Billy把系統級驗證的基本通路跑通后,負責FPGA流程的Peter就要使用FPGA綜合工具把代碼轉成.bit文件,然后告訴負責測試的Cindy說:你可以測試啦!Cindy在測試過程中,如果遇到硬件上的bug,則會返回來找模塊的owner幫忙解決。PS:如果遇到比較大的項目,FPGA的工作可能就要在模塊設計的時候就開始啦。9 綜合 

如果是在大公司,綜合的工作是有專門的同事負責的。換句話說,模塊設計跟綜合的工作是有不同owner的。

但是在小公司,人手通常是不夠的。所以Martin就要身兼數職。那邊剛寫完代碼,還沒來得及休息,這邊就要開始進行綜合的工作。來,把代碼和事先寫好的約束文件,庫文件等導入到synopsys的綜合工具DC中,工具經過一番處理,就吐出來綜合后的網表,如下圖。

如果把設計的過程比喻為家里拉電線,那么這里的網表就相當于把插座買回來了。但是插座具體安裝在哪個位置,電線具體怎么拉,還是處于一種未知的狀態。把這些具體化是后端同事的工作。10 STA 

靜態時序分析,就是通過EDA工具,提取電路中所以路徑的延遲信息進行分析,計算出信號在路徑上的延時,檢查時序是否滿足設定的時序約束要求。靜態時序分析將在后文中結合synopsys的PT工具進行記載。11 DFT 

可測性設計是指:在進行電路的前端設計時,就預先規劃、設計出如何在樣片中進行電路的測試方案和辦法,并通過邏輯綜合過程完成芯片內部專用測試結構的插入,一遍在芯片形成后能按照預先制定的方案進行相應的電路功能測試的一種設計方法。也就是進行可測性設計,即在原有的電路中插入專門測試的電路(插入電路)。12 后端  

在整個項目周期中,后端部門一般都是前松后緊的。后端的工作流程也有很多,這里就簡單介紹一下。他們拿到前端提供的網表和約束文件后,會進行版圖規劃(把插座放到具體的位置)、時鐘樹綜合、布局布線(使用電線將插座連接起來)、寄生參數提取等工作。最終輸出GDS文件。13 投片  

后端輸出的GDS文件是要交給代工廠(例如臺積電中芯國際)生產的。我們管這一過程叫做投片。

投片的形勢分為兩種:Fullmask和MPW。這兩個概念跟滴滴打車類似。Fullmask就是自己坐一輛車;MPW則是跟別人拼車。拼車的速度肯定稍微慢點。所以MPW可能要比Fullmask晚一兩個月拿到芯片。14 測試 

芯片回來之后,測試工程師去做一系列的測試,其中包括功能性測試,DFT測試和可靠性測試等,測試過程也是比較復雜。在這邊也就不多說了。

· 2019-07-01 17:03  本新聞來源自:數字IC自修室,版權歸原創方所有

閱讀:995
  • 聯系長芯

    重慶總部:重慶市長壽區新市街道新富大道5號佳禾工業園8棟2層
    電話:023 40819981 (前臺)

    深圳辦事處:深圳市南山區留仙大道 1213 號眾冠紅花嶺工業南區 2 區 1 棟 1 樓
    電話:0755-26975877 (前臺)

    電子郵件:[email protected]

    網址:http://www.zduwgp.live

  • 三重魔力登陆 69大唐赚钱带小号抓鬼 非洲贸易什么最赚钱 能赚钱的大型网络游戏 股票分析师月收入多少 百度经验下班赚钱 股票涨跌的原理是什么 2017年网络最赚钱的项目 什么人告运气赚钱 一个人生活怎么赚钱 中国联通股票 股票推荐排名ie=utf-8 点滴淘怎么赚钱 油茶嫁接茶花赚钱吗 辣白菜工厂赚钱 掌上职业宝赚钱是真的吗 从今往后不再动情只想赚钱