集成電路設計(Integrated circuit design, IC design),亦可稱之為超大規(guī)模集成電路設計(VLSI design),是指以集成電路、超大規(guī)模集成電路為目標的設計流程。集成電路設計涉及對電子器件(例如晶體管、電阻器、電容器等)、器件間互連線模型的建立。所有的器件和互連線都需安置在一塊半導體襯底材料之上,這些組件通過半導體器件制造工藝(例如光刻等)安置在單一的硅襯底上,從而形成電路?!?/p>
基本概念
IC設計涉及硬件軟件兩方面專業(yè)知識。硬件包括數(shù)字邏輯電路的原理和應用、模擬電路、高頻電路等。軟件包括基礎的數(shù)字邏輯描述語言,如VHDL等,微機匯編語言及C語言。作為初學者,需要了解IC設計的基本流程:基本清楚系統(tǒng)、前端、后端設計和驗證的過程,IC設計同半導體物理、 通信 或多媒體系統(tǒng)設計之間的關系,了解數(shù)字電路、混合信號的基本設計過程。
IC設計是將系統(tǒng)、邏輯與性能的設計要求轉(zhuǎn)化為具體的物理版圖的過程,也是一個把產(chǎn)品從抽象的過程一步步具體化、直至最終物理實現(xiàn)的過程。為了完成這一過程,人們研究出了層次化和結(jié)構(gòu)化的設計方法:層次化的設計方法能使復雜的系統(tǒng)簡化,并能在不同的設計層次及時發(fā)現(xiàn)錯誤并加以糾正;結(jié)構(gòu)化的設計方法是把復雜抽象的系統(tǒng)劃分成一些可操作的模塊,允許多個設計者同時設計,而且某些子模塊的資源可以共享。
IC設計簡單的說就是硬件電路設計。設計者根據(jù)設計要求,提出設計構(gòu)思,并將這個構(gòu)思逐步細化,直到具體代碼實現(xiàn);在由代碼綜合出門及網(wǎng)表,生成版圖,最終制成產(chǎn)品的過程。在IC產(chǎn)品的設計中,好的設計思想價值千金,當然,有了好的設計思想之后,也需要高水平的設計技能來實現(xiàn)。
設計流程
集成電路設計的流程一般先要進行軟硬件劃分,將設計基本分為兩部分:芯片硬件設計和軟件協(xié)同設計。
芯片硬件設計包括:
1.功能設計階段。
設計人員產(chǎn)品的應用場合,設定一些諸如功能、操作速度、接口規(guī)格、環(huán)境溫度及消耗功率等規(guī)格,以做為將來電路設計時的依據(jù)。更可進一步規(guī)劃軟件模塊及硬件模塊該如何劃分,哪些功能該整合于SOC 內(nèi),哪些功能可以設計在電路板上。
2.設計描述和行為級驗證
供能設計完成后,可以依據(jù)功能將SOC 劃分為若干功能模塊,并決定實現(xiàn)這些功能將要使用的IP 核。此階段將接影響了SOC 內(nèi)部的架構(gòu)及各模塊間互動的訊號,及未來產(chǎn)品的可靠性。
決定模塊之后,可以用VHDL 或Verilog 等硬件描述語言實現(xiàn)各模塊的設計。接著,利用VHDL 或Verilog 的電路仿真器,對設計進行功能驗證(function simulation,或行為驗證 behavioral simulation)。
注意,這種功能仿真沒有考慮電路實際的延遲,但無法獲得精確的結(jié)果。
3.邏輯綜合
確定設計描述正確后,可以使用邏輯綜合工具(synthesizer)進行綜合。
綜合過程中,需要選擇適當?shù)倪壿嬈骷欤╨ogic cell library),作為合成邏輯電路時的參考依據(jù)。
硬件語言設計描述文件的編寫風格是決定綜合工具執(zhí)行效率的一個重要因素。事實上,綜合工具支持的HDL 語法均是有限的,一些過于抽象的語法只適于作為系統(tǒng)評估時的仿真模型,而不能被綜合工具接受。
邏輯綜合得到門級網(wǎng)表。
4.門級驗證(Gate-Level Netlist Verification)
門級功能驗證是寄存器傳輸級驗證。主要的工作是要確認經(jīng)綜合后的電路是否符合功能需求,該工作一般利用門電路級驗證工具完成。
注意,此階段仿真需要考慮門電路的延遲。
5.布局和布線
布局指將設計好的功能模塊合理地安排在芯片上,規(guī)劃好它們的位置。布線則指完成各模塊之間互連的連線。
注意,各模塊之間的連線通常比較長,因此,產(chǎn)生的延遲會嚴重影響SOC的性能,尤其在0.25 微米制程以上,這種現(xiàn)象更為顯著。
目前,這一個行業(yè)仍然是中國的空缺,開設集成電路設計與集成系統(tǒng)專業(yè)的大學還比較少,其中師資較好的學校有 上海交通大學,哈爾濱工業(yè)大學,黑龍江大學、東南大學,西安電子科技大學,電子科技大學,哈爾濱理工大學,復旦大學,華東師范大學等。
這個領域已經(jīng)逐漸飽和,越來越有趨勢走上當年軟件行業(yè)的道路。
模擬集成電路設計的一般過程:
1.電路設計
依據(jù)電路功能完成電路的設計。
2.前仿真
電路功能的仿真,包括功耗,電流,電壓,溫度,壓擺幅,輸入輸出特性等參數(shù)的仿真。
3.版圖設計(Layout)
依據(jù)所設計的電路畫版圖。一般使用Cadence軟件。
4.后仿真
對所畫的版圖進行仿真,并與前仿真比較,若達不到要求需修改或重新設計版圖。
5.后續(xù)處理
將版圖文件生成GDSII文件交予Foundry流片。
抽象級別
集成電路設計通常是以“模塊”作為設計的單位的。例如,對于多位全加器來說,其次級模塊是一位的加法器,而加法器又是由下一級的與門、非門模塊構(gòu)成,與、非門最終可以分解為更低抽象級的CMOS器件。
從抽象級別來說,數(shù)字集成電路設計可以是自頂向下的,即先定義了系統(tǒng)最高邏輯層次的功能模塊,根據(jù)頂層模塊的需求來定義子模塊,然后逐層繼續(xù)分解;設計也可以是自底向上的,即先分別設計最具體的各個模塊,然后如同搭積木一般用這些最底層模塊來實現(xiàn)上層模塊,最終達到最高層次。在許多設計中,自頂向下、自底向上的設計方法學是混合使用的,系統(tǒng)級設計人員對整體體系結(jié)構(gòu)進行規(guī)劃,并進行子模塊的劃分,而底層的電路設計人員逐層向上設計、優(yōu)化單獨的模塊。最后,兩個方向的設計人員在中間某一抽象層次會合,完成整個設計。
硬件實現(xiàn)
對于不同的設計要求,工程師可以選擇使用半定制設計途徑,例如采用可編程邏輯器件(現(xiàn)場可編程邏輯門陣列等)或基于標準單元庫的專用集成電路來實現(xiàn)硬件電路;也可以使用全定制設計,控制晶體管版圖到系統(tǒng)結(jié)構(gòu)的全部細節(jié)。
全定制設計
這種設計方式要求設計人員利用版圖編輯器來完成版圖設計、參數(shù)提取、單元表征,然后利用這些自己設計的單元來完成電路的構(gòu)建。通常,全定制設計是為了最大化優(yōu)化電路性能。如果標準單元庫中缺少某種所需的單元,也需要采取全定制設計的方法完成所需的單元設計。不過,這種設計方式通常需要較長的時間。
半定制設計
與全定制設計相對的設計方式為半定制設計。簡而言之,半定制集成電路設計是基于預先設計好的某些邏輯單元。例如,設計人員可以在標準組件庫(通常可以從第三方購買)的基礎上設計專用集成電路,從中選取所需的邏輯單元(例如各種基本邏輯門、觸發(fā)器等)來搭建所需的電路。他們也可以使用可編程邏輯器件來完成設計,這類器件的幾乎所有物理結(jié)構(gòu)都已經(jīng)固定在芯片之中,僅剩下某些連線可以由用戶編程決定其連接方式。與這些預先設計好的邏輯單元有關的性能參數(shù)通常也由其供應商提供,以方便設計人員進行時序、功耗分析。在半定制的現(xiàn)場可編程邏輯門陣列(FPGA)上實現(xiàn)設計的優(yōu)點是開發(fā)周期短、成本低。
可編程邏輯器件
可編程邏輯器件通常由半導體廠家提供商品芯片,這些芯片可以通過JTAG等方式和計算機連接,因此設計人員可以用電子設計自動化工具來完成設計,然后將利用設計代碼來對邏輯芯片編程。可編程邏輯陣列芯片在出廠前就提前定義了邏輯門構(gòu)成的陣列,而邏輯門之間的連接線路則可以通過編程來控制連接與斷開。隨著技術的發(fā)展,對連接線的編程可以通過EPROM(利用較高壓電編程、紫外線照射擦除)、EEPROM(利用電信號來多次編程和擦除)、SRAM、閃存等方式實現(xiàn)?,F(xiàn)場可編程邏輯門陣列是一種特殊的可編程邏輯器件,它的物理基礎是可配置邏輯單元,由查找表、可編程多路選擇器、寄存器等結(jié)構(gòu)組成。查找表可以用來實現(xiàn)邏輯函數(shù),如三個輸入端的查找表可以實現(xiàn)所有三變量的邏輯函數(shù)。
專用集成電路
針對特殊應用設計的專用集成電路(ASIC)的優(yōu)點是面積、功耗、時序可以得到最大程度地優(yōu)化。專用集成電路只能在整個集成電路設計完成之后才能開始制造,而且需要專業(yè)的半導體工廠的參與。專用集成電路可以是基于標準單元庫,也可以是全定制設計。在后一種途徑中,設計人員對于晶圓上組件的位置和連接有更多的控制權,而不像可編程邏輯器件途徑,只能選擇使用其中部分硬件資源,從而造成部分資源被浪費。專用集成電路的面積、功耗、時序特性通??梢缘玫礁玫膬?yōu)化。然而,專用集成電路的設計會更加復雜,并且需要專門的工藝制造部門(或者外包給晶圓代工廠)才能將GDSII文件制造成電路。一旦專用集成電路芯片制造完成,就不能像可編程邏輯器件那樣對電路的邏輯功能進行重新配置。對于單個產(chǎn)品,在專用集成電路上實現(xiàn)集成電路的經(jīng)濟、時間成本都比可編程邏輯器件高,因此在早期的設計與調(diào)試過程中,常用可編程邏輯器件,尤其是現(xiàn)場可編程邏輯門陣列;如果所設計的集成電路將要在后期大量投產(chǎn),那么批量生產(chǎn)專用集成電路將會更經(jīng)濟。
和芯片設計區(qū)別
IC設計和芯片設計在本質(zhì)上密切相關,但在具體語境和應用中可能存在一定的區(qū)別。以下是對兩者區(qū)別的詳細分析:
1. 定義與范圍
IC設計(Integrated Circuit Design):指的是設計和開發(fā)集成電路(IC)的全過程,涉及從電路功能的規(guī)劃、結(jié)構(gòu)設計到邏輯實現(xiàn)等多個方面。它強調(diào)的是整個集成電路芯片的設計,包括電路的設計、信號的處理和邏輯控制等方面。IC設計旨在在一個芯片上集成多個電子器件和電路,以便于實現(xiàn)高度集成和復雜的功能。
芯片設計:通常指的是具體設計一塊芯片的過程,這個芯片可以是一個獨立的集成電路(IC),也可以是一個嵌入在其他設備中的芯片(如處理器芯片、圖形芯片等)。芯片設計更側(cè)重于對特定芯片的功能需求進行分析、架構(gòu)設計、電源管理、時序優(yōu)化、布局布線等步驟。
2. 側(cè)重點
IC設計:側(cè)重于集成電路的整體規(guī)劃和設計,包括電路邏輯、信號處理、功能實現(xiàn)等多個層面。它需要考慮芯片的制造工藝、物理結(jié)構(gòu)、功能模塊之間的電氣連接,以及如何保證整個芯片的可靠性和性能。
芯片設計:則更側(cè)重于芯片內(nèi)部的電路設計和實現(xiàn),包括數(shù)學方法、算法、電路網(wǎng)絡等在內(nèi)的部分設計,并且通常僅涉及特定的工業(yè)電子市場領域。芯片設計旨在利用數(shù)字集成技術和模擬集成技術,實現(xiàn)特定功能的電路和系統(tǒng),并優(yōu)化電路的參數(shù)和性能,以滿足特定的市場需求。
3. 語境與用法
在大多數(shù)情況下,IC設計和芯片設計可以互換使用,因為它們都涉及到集成電路的設計過程。然而,在某些特定語境下,兩者可能會有所區(qū)別。例如,在討論數(shù)字電路邏輯設計、RTL編程、電路仿真和驗證時,可能更傾向于使用IC設計;而在討論物理設計處理、如偏振光在芯片上的傳輸、振蕩器的特性等時,可能更傾向于使用芯片設計。
4. 設計流程
無論是IC設計還是芯片設計,都遵循類似的設計流程,包括需求分析、架構(gòu)設計、電路設計、邏輯仿真、布局設計、物理驗證、版圖設計、驗證和仿真、產(chǎn)生工藝文件以及制造和測試等階段。
綜上所述,IC設計和芯片設計在本質(zhì)上是相似的,都涉及到集成電路的設計過程。但在具體語境和應用中,兩者可能存在一定的區(qū)別,主要體現(xiàn)在定義范圍、側(cè)重點和語境用法上。然而,這種區(qū)別并不是普遍存在的,具體使用時可能因語境不同而有所不同。在大多數(shù)情況下,兩者可以互換使用來指代集成電路設計的過程。
內(nèi)容來自百科網(wǎng)