芯片是我們這個時代最最最偉大的發明之一,如果沒有芯片的出現,我們很難想象如今的電子時代會是個什么樣子?每個人操作著一台房子般大小的“電腦”,背著巨大的“手機”在和遠方的朋友通話,而且聲音極差。正是因為芯片的發明,才讓所有的功能都集中在小小的指甲蓋大小的芯片裏面,我們普通老百姓也才能真正享受這個無線時代帶來的便捷。但是,時至今日,芯片依然是卡脖子的一環。所以今天我們一起來學習一下關於芯片相關的知識。
什么是芯片?
芯片,也就是集成電路,或者說是超大規模集成電路,是由數千,數百萬,甚至數十億個晶體管,電阻,電容組成的電子電路。它執行與使用分立(單獨封裝)組件構建的較大電路相同的功能,但 IC 是一種極其緊湊的設備,在一小塊半導體材料上構建為單個單元。制造IC的主要原材料是矽;因此,IC 通常被稱為“矽芯片”。也可以使用其他原材料,如鍺和砷化鎵,但由於以下原因,矽是主要選擇:
矽是一種半導體,這意味著它可以在稱為摻雜的過程中控制的某些條件下充當導體和絕緣體。摻雜是指添加雜質以改變元素的電氣特性。
矽在地球上很豐富,這使得它非常實惠。
芯片專為某種目的而設計,可用於各種行業,例如航空航天、汽車、電信、計算機等。一個或多個 IC 以及其他組件和連接器安裝在印刷電路板 (PCB) 上,並與細銅帶連接以滿足應用需求。PCB 的一個非常常見的用途是作為計算機的主板。
下圖給出了常見芯片的分類,包括ASIC,ASSP,SoC,FPGA,SoC FPGA, ucontroller, uprocessor 等等。
ASIC的主要特點如下:
在其整個生命周期內執行相同的功能
沒有處理器
設計周期費時費錢
大批量生產
高速低功耗
可以是數字的、模擬的或兩者兼而有之
ASSP是特定標准應用器件Application Specific Standard Part的首字母縮寫,專為特定應用而設計,但不是為系統或客戶定制的IC。ASSP 是一種特殊的 ASIC,可以被多家公司使用。ASSP 的特性類似於 ASIC。主要用在以太網控制器、PCIE控制器、USB接口等。
SoC(片上系統):集成了完整系統的IC稱為SoC。它包含處理器、存儲器和外圍設備以及軟件。SoC的處理器可以是微處理器(μP或MPU)、微控制器(μC或MCU)、數字信號處理器(DSP)或圖形處理器。帶有處理器的 ASIC 或 ASSP 是 SoC,因此 SoC 的特性類似於 ASIC 或 ASSP 的特性。主要用於語音、視頻和圖像信號處理、無線通信、汽車等。
FPGA(現場可編程門陣列):FPGA 是一種可編程 IC。它具有可配置的邏輯塊、可配置的輸入-輸出塊和可編程互連。主要應用在原型 ASICS 或 SoC、設備控制器、信號處理系統、圖像處理系統等。FPGA的主要特點如下:
適用於需要頻繁定制的設計
沒有處理器
設計周期不耗時且成本低廉
適用於小體積設計
更低的速度和低功耗
可編程SoC或SoC FPGA:集成了處理器和FPGA架構的IC稱為可編程SoC或SoC FPGA。這還包括外設、片上存儲器、FPGA 式邏輯陣列和高速收發器。主要用在網絡、航空航天、國防等。可編程SoC/SoC FPGA的主要特點如下:
適用於需要頻繁定制且具有處理能力的設計
較小的尺寸
處理器和 FPGA 之間的更高帶寬通信
設計周期不耗時且成本低廉
風險低,因為它是可重新編程的
更低的速度和低功耗
微處理器(μP 或 MPU):僅包含處理器的 IC 稱為微處理器。它不包含內存(RAM、ROM 等)或任何其他外圍設備。以下是微處理器的主要特性:
昂貴的
更高的速度和更高的功耗
適用於更大的設計
執行複雜的任務
應用:台式電腦、筆記本電腦、記事本、汽車、火車等。
微控制器(μC 或 MCU):包含處理器以及存儲器(RAM、ROM 等)和其他外圍設備的 IC 稱為微控制器。這是一個通用設備,需要針對應用程序進行編程。微控制器可用於各種工業產品。微控制器是 SoC 的縮小版本。以下是微控制器的主要特性:
緊湊,因為所有外圍設備都在 IC 中
有處理器
比微處理器便宜
更低的速度和低功耗
適用於較小的設計,因為它很緊湊
執行不太複雜的任務
應用:微波爐、洗衣機、DVD播放器、手機等。
芯片是怎么設計的?
下圖反映了 IC 設計周期(以下部分對每個步驟進行了解釋):
IC 供應商會見潛在客戶,以確定他們正在尋找的功能並准備一份功能要求列表。系統規范是指定系統(IC)的功能規范(或要求)並定義其外部接口的過程。
一旦確定了系統規范,就開始了系統架構的設計過程。這包括創建或購買知識產權 (IP) 塊,以及定義軟件接口、時序、性能、面積和功率限制。標准工業 IP 模塊可從 IP 供應商處獲得。
架構驗證是構建硬件系統的軟件版本的過程。這是使用高級語言(如 C、C++ 或 SystemC)從函數模型創建的。使用軟件調試器評估整個系統的架構、性能和功率。
形式驗證是使用數學方法靜態驗證設計正確性的過程,不使用任何激勵或時序檢查。
一種稱為屬性檢查的形式驗證方法用於證明實現的系統模型滿足設計要求(或規范)。在屬性檢查中,使用屬性規范語言(如 PSL 和 SVA)定義系統需求,並創建已實現系統的數學模型。使用模型檢查器比較系統要求和數學模型,以確認系統滿足要求。
在系統的架構設計和驗證之後,下一步就是設計輸入。這是使用硬件設計語言 (HDL)(例如 VHDL 和 Verilog)和/或原理圖捕獲來捕獲完整系統設計的過程。該設計包含 I2C 輸入和輸出引腳、IP 塊實例、設計連接、時鍾和複位策略等的詳細信息。
功能仿真是使用軟件仿真器驗證設計的功能行為的過程。這不考慮設計元素的時序延遲。它驗證IC級連通性、IC級環境中的IP塊(一般IP塊是預先驗證過的)、端到端的功能路徑、焊盤連通性、模塊間交互、外部模塊交互等。
測試平台是一組代碼,用於檢查 RTL 實現是否(或不)滿足設計規范。它包含有效和預期條件以及無效和意外條件,以檢查設計是否按預期運行。
正如我們之前提到的,形式驗證是使用數學方法靜態驗證設計正確性的過程,而不使用任何激勵或時序檢查。
一種稱為等效性檢查的形式驗證方法用於通過將設計與黃金設計進行比較來找到設計的功能等效性。下圖描述了 IC 設計周期各個階段的等效性檢查:
矽前驗證是在將設計發送到制造之前在硬件中驗證設計的過程。它可以驗證高風險或新開發的 IP,並節省重新旋轉 IC 的成本。可以使用仿真器或 FPGA 執行矽前驗證。
好處:
與模擬環境相比非常快
可以探測一組有限的內部信號以進行調試
可以在流片之前驗證軟件和應用級場景
限制:
硬件很貴
無法驗證模擬 IP 塊
與真實芯片相比,系統時鍾速度較慢
需要多個硬件設置,尤其是在驗證和軟件團隊分布在多個地理位置的情況下
仿真
仿真是在稱為仿真器的硬件設備上驗證系統功能的過程。仿真器可以比模擬更快地運行非常大的 IC 設計,並且可以以不同的時鍾速度同時運行許多 IC 設計。下圖顯示了最先進的模擬器:
基於 FPGA 的原型設計是使用一個或多個 FPGA 驗證系統功能的過程。FPGA 原型設計遵循以下步驟:
ASIC RTL(寄存器傳輸級)代碼轉換為 FPGA RTL 代碼。它包括使用不同的存儲器、移除模擬塊、重寫時鍾方案等。
如果完整的 FPGA RTL 代碼不適合單個 FPGA,則代碼會被劃分到多個 FPGA 中。
FPGA 工具用於綜合和布局布線。
位文件被下載到 FPGA 中並驗證設計。
綜合是在給定技術庫和設計約束的情況下將設計的 RTL 代碼轉換為優化的門級表示的過程。在合成中進行以下步驟:
翻譯:設計 RTL 代碼被翻譯成與技術無關的布爾方程。
優化:優化布爾方程,去除冗餘邏輯。
技術映射:借助設計約束和技術庫,將技術無關的布爾方程映射到技術相關的邏輯門。
靜態時序分析 (STA) 是在不提供任何激勵的情況下驗證設計時序特性的過程。STA 快速且詳盡,但它不會檢查設計的功能。電子設備由時鍾信號驅動;因此,必須驗證設計是否在指定的時鍾頻率下工作。STA 在 IC 設計周期的各個階段執行。
測試設計 (DFT)
制造 IC 的過程並非 100% 沒有錯誤。因此,必須在設計中插入稱為測試設計 (DFT) 邏輯的額外邏輯,以幫助 IC 的後期生產測試以識別制造缺陷。制造 IC 時,首先會在 DFT 邏輯的幫助下檢查是否存在任何制造缺陷。如果沒有制造缺陷,則檢查 IC 的功能正確性。
預布局模擬
在發送門級網表進行物理布局之前,軟件應用程序會對其功能和時序行為進行驗證。這稱為布局前模擬。
物理布局
物理布局是從 IC 的邏輯視圖到物理視圖的過渡。物理布局過程的輸出是圖形數據庫系統 (GDSII) 文件,該文件是一種二進制文件格式,表示平面幾何形狀、文本標簽和其他與物理布局相關的信息。物理布局中執行的步驟如下:
布局規劃:確定主要設計塊,並分配空間以滿足時序、面積和性能標准。IP 結構、縱橫比和路由可能性也在這裏決定。
分區:將 IC 分成功能塊,使布局和布線更容易。
布局布線:放置和連接設計塊,以便不違反設計規則。
時鍾樹綜合:時鍾均勻分布到設計中的所有時序元素。
布局後仿真是在設計的物理布局建立後驗證設計的過程。在布局後模擬中執行的檢查如下:
設計規則檢查 (DRC):布局滿足制造所需的一組規則
電氣規則檢查 (ERC):布局滿足一組電氣設計規則
版圖與原理圖 (LVS):版圖在功能上與設計的網表相同
在布局後仿真之後,GDSII 文件形式的布局網表被提供給 IC 制造商(代工廠)。向代工廠提供 GDSII 文件的過程稱為帶出。IC制造過程如下圖所示:
IC 制造並非 100% 可靠,導致許多樣品存在制造缺陷。一旦從代工廠收到 IC,就會使用測試儀來過濾有缺陷的 IC。測試儀向 IC 提供輸入激勵並驗證輸出。它還驗證 IC 的電氣和熱特性並找到理想的工作條件。
通過測試儀的樣品在真實環境中進行驗證。這稱為矽後驗證。在矽後驗證中,使用計算機上的軟件工具配置 IC,並將測試代碼下載到 IC 中。預期的輸出受到監控,IC 的所有功能都得到驗證。下圖描述了驗證後設置:
IC種類繁多,每種IC都有一定的特點:可編程或不可編程,有無處理器,高速或低速,緊湊或笨重。設計、制造和測試 IC 的過程是複雜而詳盡的。主要貢獻者是設計和驗證團隊、IP 供應商和 IC 制造商。高級 EDA 工具在減少與 IC 設計周期相關的時間和精力方面發揮著至關重要的作用。
參考文獻
https://anysilicon.com/ic-design-flow-an-overview/
https://www.synopsys.com/glossary/what-is-ic-design.html
https://byjus.com/physics/integrated-circuit/
https://www.allaboutcircuits.com/technical-articles/basics-of-ic-design-flows/
https://diaridelsestudiants.com/what-is-digital-integrated-circuit-design/
https://www.eeweb.com/introducing-the-integrated-circuit-ic-design-cycle/
原创文章,作者:admin,如若转载,请注明出处:https://szjm666.com/keji/10061/