• 正文
  • 相關推薦
申請入駐 產(chǎn)業(yè)圖譜

必看!IC設計初學入門指南!

03/17 13:43
3084
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

很多朋友都聽說過芯片設計行業(yè)高門檻、高要求、高薪資,但沒有具體了解這個門檻和要求到底有多高。

以芯片設計校招來看,基本都是要求碩士起步。

再說知識儲備,數(shù)電模電、數(shù)集模集是基礎中的基礎,模塊/接口/協(xié)議是重要考核項,Verilog/sv你得爛熟于心,EDA工具你得用的駕輕就熟……后文會講,此處不再贅述。

還有對行業(yè)的了解程度,芯片是怎么設計、怎么制造的?ASIC和FPGA啥區(qū)別?IDM和Fabless都是啥?數(shù)字電路模擬電路區(qū)別是啥?選數(shù)字IC還是模擬IC?做設計/驗證/后端/版圖/DFT/ATE哪個更好?

看到這,諸君可能已經(jīng)開始頭疼了。

但是!只要通過系統(tǒng)的學習和實踐,任何復雜的概念和技能都可以被逐步掌握。所以從入門到精通,其實也沒有大家想象中的那么難。

這是一篇初學入門指南,歡迎分享~

01基礎知識和語言

老生常談的數(shù)電模電、數(shù)集模集、半導體物理,之所以老生常談,正是因為它們很重要。

初學者都需要從最基本的數(shù)字邏輯門(如與門、或門、非門)開始學,才能進一步用這些基礎電路構(gòu)建更復雜的邏輯電路。

Verilog和SVIC設計工程師們的基本功,設計崗需要精通Verilog,驗證崗需要精通SV。

除此之外,C語言、perl、Makefile、python、TCL、Shell這類腳本語言也需要學習,可以實現(xiàn)一些批量操作,都屬于基本的工作需要。不過不用學的太深,熟悉基本語法和命令就差不多了。

但需要注意,雖然verilog和C語言語法相似,但是底層邏輯確不一樣。C語言需要產(chǎn)出一個功能正確并能上生產(chǎn)的軟件程序;而Verilog要做的是描述硬件電路,追求的是物理層面的PPA(性能、功耗、面積)。

這也是芯片行業(yè)的魅力所在,芯片設計不僅需要考慮芯片功能和代碼,更要考慮物理層面的實現(xiàn)和生產(chǎn)。

02設計流程

芯片設計,是一個從芯片概念到芯片產(chǎn)品的復雜流程。

我們以數(shù)字芯片為例,大體需要經(jīng)歷需求分析、架構(gòu)設計、邏輯設計、仿真和驗證、綜合與優(yōu)化、版圖設計、測試等關鍵階段。

說的更詳細一些:

芯片設計最首要的環(huán)節(jié)是分析需求,明確IC設計的目標和需求,包括性能指標、功耗要求等。

具體的設計工作以設計架構(gòu)(確定處理器核心、內(nèi)存結(jié)構(gòu)等)為起點,以生成可以布局布線的網(wǎng)表為終點,是用設計的電路實現(xiàn)需求。

主要包括RTL編程和仿真,前端設計還可以劃分為IC系統(tǒng)設計、驗證、綜合、STA、邏輯等值驗證 (equivalence check)。其中IC系統(tǒng)設計最難掌握,它需要多年的IC設計經(jīng)驗和熟悉那個應用領域,就像軟件行業(yè)的系統(tǒng)架構(gòu)設計一樣,而RTL編程和軟件編程相當。

數(shù)字后端以布局布線為起點,以生成可以送交foundry進行流片的GDSⅡ文件為終點。

根本目的是將設計的電路制造出來,在工藝上實現(xiàn)想法。后端設計包括芯片封裝和管腳設計,floorplan,電源布線和功率驗證,線間干擾的預防和修正,時序收斂,自動布局布線、STA,DRC,LVS等,要求掌握和熟悉多種EDA工具以及IC生產(chǎn)廠家的具體要求。

03芯片設計常用工具

一套好的EDA工具對于芯片設計來說非常重要。在不同的設計環(huán)節(jié)需要使用的EDA也不同,比如綜合工具、布局工具、時序分析工具等等。

之前專門出過一篇文章講設計流程和EDA工具,指路:IC設計全流程科普,要用到的EDA工具有哪些?

04IC設計崗位分布

我們要清楚自己的工作主要處于設計流程中的哪個位置。即輸入是什么,產(chǎn)出是什么。

首先要有數(shù)字IC和模擬IC的概念,模擬電路IC是處理和提供模擬信號的器件,比如運算放大器線性穩(wěn)壓器、基準電壓源等。數(shù)字電路IC就是處理數(shù)字信號的器件,比如CPU、邏輯電路等。

模擬IC的設計流程大致要經(jīng)歷:電路設計→仿真→版圖設計→后仿真→流片。

數(shù)字IC的流程就更加細分了:前端設計→驗證→綜合→DFT→后端→后仿真→流片。

數(shù)字芯片和模擬芯片設計開發(fā)流程不同,崗位設置也就有所不同。

數(shù)字IC:

數(shù)字IC設計工程師:也就是前端設計工程師。需要根據(jù)芯片Spec,通過硬件描述語言設計RTL代碼,實現(xiàn)芯片的功能。負責描述并實現(xiàn)芯片的具體行為和功能,主要是邏輯設計。

數(shù)字IC驗證工程師:驗證工程師要對RTL代碼進行EDA仿真,從中發(fā)現(xiàn)RTL代碼BUG后,再提交設計工程師進行BUG修復。這是保證芯片功能正確性和完整性最關鍵的環(huán)節(jié)。

數(shù)字后端設計工程師:把驗證后的RTL代碼轉(zhuǎn)化成門級網(wǎng)表,再通過布局布線、物理驗證,最終產(chǎn)?供制造?的GDSII數(shù)據(jù)。后端設計也叫后端實現(xiàn),是連接設計與制造的橋梁,主要實現(xiàn)物理設計。

數(shù)字DFT設計工程師:DFT可測性設計是在設計電路時為了達到故障檢測目的所做的輔助性設計,也就是在電路設計之初就考慮測試的問題,主要用來檢測生產(chǎn)故障。

模擬IC:

模擬IC設計工程師:模擬設計工程師需要從系統(tǒng)規(guī)格定義開始,明確設計的具體要求和性能參數(shù),然后進行電路設計及電路仿真,最后通過模擬仿真來評估電路性能。模擬設計就是通過宏觀測量約束子電路的性能而實現(xiàn)電路功能與設計。

模擬版圖工程師:模擬版圖工程師要通過EDA設計?具,進?布局布線等工作,最終?成可供芯?輸出的GDSII數(shù)據(jù)。模擬版圖是連接模擬芯片設計和制造的橋梁。

05項目經(jīng)驗儲備

項目經(jīng)驗才是IC工程師最深的護城河。

芯易君經(jīng)常能收到未入行、甚至是已入行工程師提出的疑問“IC設計/驗證/后端做什么項目比較加分?”不同崗位的項目不同,這里就不再贅述,想要詳細了解的同學可以點擊文末“閱讀原文”

這里想和大家說的是,很多同學做的項目雖然是一樣的,但是最終效果可以打60-100分不等。

以驗證崗位為例,如果你負責一個ip模塊,然后從驗證計劃開始到覆蓋率收斂的走一遍,會遇到很多問題,解決這些問題才會是真的成長,自己要把相關的項目吃透。不僅要知其然,更要知其所以然。

同樣是項目,含金量卻也分三六九等,流片項目就是含金量最高的那一類。主要原因有二:

1、流片經(jīng)歷是表示這個項目具備工程價值的有力佐證:

· 設計階段已經(jīng)達到了一定的成熟度和可靠性,才能進入下一步——流片,來驗證設計在實際硬件上的正確性和可行性;

· 仿真模型和實際硅片之間是存在差異的,流片可以幫助發(fā)現(xiàn)在仿真中未曾考慮到的問題;

· 流片過程中會積累大量的經(jīng)驗和教訓,這些寶貴的經(jīng)驗可以幫助夯實未來工作的基礎。

2、資金消耗大,時間周期長,不是所有高校/課題組都愿意花費這個時間和精力的。這就導致了科研資源差距大。甚至在同一位指導老師手下,能流片的項目都被師兄師姐做的差不多了,也就沒有新的流片項目輪到學弟學妹了。

06持續(xù)學習適應變化

IC設計是一個不斷發(fā)展的領域,時常了解就業(yè)市場的需求,針對性的補充相關技能,持續(xù)學習新的技術(shù)和工具對于保持競爭力至關重要。

最后,附上本文開頭問題的答案:

《芯片科普 | IC行業(yè)最全產(chǎn)業(yè)鏈梳理》

《芯片科普 | 芯片是什么?如何分類?》

《IC新人入行如何選擇崗位?》

《入行IC | FPGA和ASIC怎么選?》

IC學習之路上,IC修真院與你同行。共勉!

相關推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄