在前面已經(jīng)介紹過芯片制造的過程就如同用樂高蓋房子一樣,先有晶圓作為地基,再層層往上疊的芯片制造流程后,就可產(chǎn)出必要的IC 芯片。然而,沒有設(shè)計(jì)圖,擁有再強(qiáng)制造能力都沒有用,因此,建筑師的角色相當(dāng)重要。但是IC 設(shè)計(jì)中的建筑師究竟是誰呢?本文接下來要針對IC設(shè)計(jì)做介紹。
在IC生產(chǎn)流程中,IC多由專業(yè)IC 設(shè)計(jì)公司進(jìn)行規(guī)劃、設(shè)計(jì),像是聯(lián)發(fā)科、高通、Intel 等知名大廠,都自行設(shè)計(jì)各自的IC 芯片,提供不同規(guī)格、效能的芯片給下游廠商選擇。因?yàn)镮C 是由各廠自行設(shè)計(jì),所以IC 設(shè)計(jì)十分仰賴工程師的技術(shù),工程師的素質(zhì)影響著一間企業(yè)的價(jià)值。然而,工程師們在設(shè)計(jì)一顆IC 芯片時(shí),究竟有那些步驟?設(shè)計(jì)流程可以簡單分成如下。
設(shè)計(jì)第一步,訂定目標(biāo)
在IC設(shè)計(jì)中,最重要的步驟就是規(guī)格制定。這個(gè)步驟就像是在設(shè)計(jì)建筑前,先決定要幾間房間、浴室,有什么建筑法規(guī)需要遵守,在確定好所有的功能之后在進(jìn)行設(shè)計(jì), 這樣才不用再花額外的時(shí)間進(jìn)行后續(xù)修改。IC 設(shè)計(jì)也需要經(jīng)過類似的步驟,才能確保設(shè)計(jì)出來的芯片不會(huì)有任何差錯(cuò)。
規(guī)格制定的第一步便是確定IC 的目的、效能為何,對大方向做設(shè)定。接著是察看有哪些協(xié)定要符合,像無線網(wǎng)卡的芯片就需要符合IEEE 802.11 等規(guī)范,不然,這芯片將無法和市面上的產(chǎn)品相容,使它無法和其他設(shè)備連線。最后則是確立這顆IC 的實(shí)作方法,將不同功能分配成不同的單元,并確立不同單元間鏈接的方法,如此便完成規(guī)格的制定。
設(shè)計(jì)完規(guī)格后,接著就是設(shè)計(jì)芯片的細(xì)節(jié)了。這個(gè)步驟就像初步記下建筑的規(guī)畫,將整體輪廓描繪出來,方便后續(xù)制圖。在IC 芯片中,便是使用硬件描述語言(HDL)將電路描寫出來。常使用的 HDL有 Verilog、VHDL 等,藉由程序碼便可輕易地將一顆IC地功能表達(dá)出來。接著就是檢查程序功能的正確性并持續(xù)修改,直到它滿足期望的功能為止。
▲ 32 bits 加法器的 Verilog 范例。有了電腦,事情都變得容易
有了完整規(guī)畫后,接下來便是畫出平面的設(shè)計(jì)藍(lán)圖。在IC 設(shè)計(jì)中,邏輯合成這個(gè)步驟便是將確定無誤的 HDL code,放入電子設(shè)計(jì)自動(dòng)化工具(EDA tool),讓電腦將 HDL code 轉(zhuǎn)換成邏輯電路,產(chǎn)生如下的電路圖。之后,反覆的確定此邏輯閘設(shè)計(jì)圖是否符合規(guī)格并修改,直到功能正確為止。
▲控制單元合成后的結(jié)果。
最后,將合成完的程序碼再放入另一套 EDA tool,進(jìn)行電路布局與繞線(Place And Route)。在經(jīng)過不斷的檢測后,便會(huì)形成如下的電路圖。圖中可以看到藍(lán)、紅、綠、黃等不同顏色,每種不同的顏色就代表著一張光罩。至于光罩究竟要如何運(yùn)用呢?
▲常用的演算芯片- FFT 芯片,完成電路布局與繞線的結(jié)果。層層光罩,疊起一顆芯片
首先,目前已經(jīng)知道一顆IC 會(huì)產(chǎn)生多張的光罩,這些光罩有上下層的分別,每層有各自的任務(wù)。下圖為簡單的光罩例子,以集成電路中最基本的元件 CMOS 為范例,CMOS 全名為互補(bǔ)式金屬氧化物半導(dǎo)體(Complementary metal–oxide–semiconductor),也就是將 NMOS 和 PMOS 兩者做結(jié)合,形成 CMOS。至于什么是金屬氧化物半導(dǎo)體(MOS)?這種在芯片中廣泛使用的元件比較難說明,一般讀者也較難弄清,在這里就不多加細(xì)究。
下圖中,左邊就是經(jīng)過電路布局與繞線后形成的電路圖,在前面已經(jīng)知道每種顏色便代表一張光罩。右邊則是將每張光罩?jǐn)傞_的樣子。制作是,便由底層開始,依循上一篇IC 芯片的制造中所提的方法,逐層制作,最后便會(huì)產(chǎn)生期望的芯片了。
至此,對于IC 設(shè)計(jì)應(yīng)該有初步的了解,整體看來就很清楚IC 設(shè)計(jì)是一門非常復(fù)雜的專業(yè),也多虧了電腦輔助軟件的成熟,讓IC 設(shè)計(jì)得以加速。IC 設(shè)計(jì)廠十分依賴工程師的智能,這里所述的每個(gè)步驟都有其專門的知識,皆可獨(dú)立成多門專業(yè)的課程,像是撰寫硬件描述語言就不單純的只需要熟悉程序語言,還需 要了解邏輯電路是如何運(yùn)作、如何將所需的演算法轉(zhuǎn)換成程序、合成軟件是如何將程序轉(zhuǎn)換成邏輯閘等問題。
在了解IC 設(shè)計(jì)師如同建筑師,晶圓代工廠是建筑營造廠之后,接下來該了解最終如何把芯片包裝成一般使用者所熟知的外觀,也就是“封裝”。在下一篇中,將介紹IC 封裝是什么以及幾個(gè)重要的技術(shù)。