芯片設計被譽為人類歷史上最細微也是最宏大的工程。經過數十年的發(fā)展,先進芯片的開發(fā)者可以把上千億顆晶體管集成在面積不到指甲蓋大小的芯片上。他們能實現這樣目標所以靠的是電子設計自動化(Electronics Design Automation)工具,也就是我們俗稱的EDA工具。
EDA 是電子產業(yè)最上游、最高端的產業(yè),驅動芯片設計、制造、終端應用。從另一個角度看,下游的任何創(chuàng)新,都離不不開EDA 軟件的創(chuàng)新支持。
根據應用場景的不同,EDA工具的使用主要分為設計、驗證、制造等幾大類。以物理實現為分界,芯片設計可以劃分為前端(邏輯設計)與后端(物理設計),其實現過程中將不斷對設計進行優(yōu)化,優(yōu)化可能改變邏輯描述方式和結構,存在引入錯誤的風險,所以驗證貫穿整個設計過程,在每個環(huán)節(jié)都反復確保邏輯優(yōu)化過程不改變功能、時序滿足目標需求、物理規(guī)則無違規(guī)等等,因此產生大量的驗證流程和工作,更涉及多方共同協(xié)作。
換而言之,驗證是芯片開發(fā)流程上最不能忽視的一環(huán)。
無處不在的驗證
芯片驗證流程一般包括需求定義、功能實現、功能實現、邏輯綜合以及物理實現。具體看來:
需求定義主要根據市場分析結果提出下一代產品需求。結合外部環(huán)境分析、供應鏈資源、公司自身定位等信息,應用端提出對新一代產品的需求,并進一步考慮產品作用、功能、所需線板數量、使用集成電路類型等,精準定義產品需求。 功能實現是描述希望芯片實現的目標。開發(fā)者用Verilog或VHDL等硬件描述語言,編寫出百萬行起的代碼來實現芯片功能。就像是建筑設計之前,需要先規(guī)劃好房間數量、用途、和遵守的法規(guī)。
功能驗證是反復迭代驗證,使設計精準、可靠。在芯片制造之前,通過檢查、仿真、原型平臺等手段反復迭代驗證,提前發(fā)現系統(tǒng)軟硬件功能錯誤、優(yōu)化性能和功耗,使設計精準、可靠,且符合最初規(guī)劃的芯片規(guī)格。
邏輯綜合是從行為級描述到電路級描述。規(guī)格設計與驗證之后,開發(fā)者將硬件描述語言轉換成邏輯電路圖,這一步被稱之為“邏輯綜合”。
物理實現即為制造芯片繪制圖紙。把邏輯電路轉換成為有物理連接的電路圖,將上百億或千億元器件和電路合理的布局布線并使其互不干擾。
物理版圖以 GDSII 的文件格式交給晶圓廠,在硅片上做出實際的電路,再進行封裝和測試,就得到了實際看見的芯片。當前的驗證幾乎必須貫穿芯片設計的每個步驟,以便芯片研發(fā)團隊及時發(fā)現錯誤,只有經過充分的仿真和驗證,才能確保流片的成功與質量。 驗證環(huán)節(jié)能夠為芯片設計帶來諸多好處,例如縮短芯片設計時間,降低芯片設計成本等等。具體來看:
首先是芯片設計的復雜度方面,隨著設計與工藝技術的不斷發(fā)展,集成電路設計的規(guī)模越來越大,復雜度越來越高。
為了縮短芯片的上市時間,節(jié)約開發(fā)成本,集成了微處理器、模擬IP核、數字IP核和存儲器(或片外存儲控制接口)等多家IP核的SoC(系統(tǒng)級芯片,System on Chip)也成為主流,隨之而來的挑戰(zhàn)是驗證復雜度呈現指數級的增長,驗證工具的革新目標是快速、準確、完備、易調試的完成日益復雜的驗證,讓開發(fā)者有信心Signoff設計交付給晶圓廠進行流片。
做一款中等規(guī)模的芯片大致需要十多人的團隊一年半以上的開發(fā)時間,而現今主流的SoC芯片更是需要一個經驗豐富的團隊投入3-5年時間開發(fā)。因此,一個高效的驗證平臺使得驗證迅速收斂顯得尤為重要。
其次是芯片的成本方面,最新數據顯示,先進工藝的芯片設計環(huán)節(jié)成本及其高昂,從千萬美金級到億美金不等,由于設計缺陷或者工藝缺陷很容易造成芯片變成所謂的“廢片”,而如果要重新投片不僅需要高昂的資金成本,更會將芯片上市時間延后至少半年,這些風險對于商業(yè)公司來說都是不可接受的。因此,在芯片流片之前通過驗證活動發(fā)現所有的設計缺陷和錯誤顯得愈發(fā)重要。

再來是安全性方面,隨著芯片使用場景延伸至AI、云計算、智能汽車、5G等領域,由于其場景無一不是依托于芯片運行,芯片的安全性、可靠性前所未有的重要。
我們已經完成從規(guī)模化復雜性到系統(tǒng)化復雜性的轉變,當芯片、系統(tǒng)和軟件環(huán)境融合在一起,無數的“應用模式”都需要從安全角度進行充分的驗證。以智能汽車使用的自動駕駛芯片為例,其復雜程度并不低于一架小型飛機,汽車行業(yè)要求系統(tǒng)能夠準確運行以避免危險情況的發(fā)生,并能夠實時監(jiān)測和管理故障。
還有軟硬件協(xié)同驗證方面,在早期軟件和硬件并不相融的階段,軟件與硬件的開發(fā)及其驗證均為獨立進行,遵循先有芯片設計制造再到上層軟件開發(fā)的工作流程。
如今隨著AI、智能汽車等領域快速發(fā)展,帶來專用芯片和適應行業(yè)需求的全新架構需求,芯片本身即是一個軟硬件結合的復雜系統(tǒng),開發(fā)者從需求定義的階段即明確需要軟硬件協(xié)同開發(fā),才能得到期望的功能和性能。
開發(fā)者們引入ESL(電子系統(tǒng)級,Electronic system-level)設計理念,針對軟件開發(fā)僅需要編程模型,不需要硬件實現細節(jié)的特點,在設計的早期階段即構建一個高抽象級的虛擬原型(virtual prototype),由于并不需要硬件描述細節(jié),系統(tǒng)級模型的仿真速度較RTL級仿真速度快上幾個數量級,讓硬件人員和軟件人員可以在早期階段運用采系統(tǒng)進行硬件參照和軟件開發(fā)。
這一理念同時也是“Shift-Left”方法學的實踐,在RTL實現前就可以完成相關的軟件開發(fā)驗證工作。軟件可以解決安全性問題,但軟件本身也有安全性問題,因此當完成后,需要檢查軟件安全性,找出問題并不斷解決問題。
特別是在我們用到很多開源軟件的情況下,開源會產生數據泄露的問題,所以我們需要在整個開發(fā)過程的最早期就開始介入,并在之后的開發(fā)過程中解決這些問題,實現Shift Left,加速芯片的開發(fā)、降低風險的同時,更縮短了產品面世的時間。
最后是低功耗設計方面,低功耗一直是便攜式電子電氣設備的關鍵要求。近年來,這一要求已擴大到許多種類的終端產品,無論是自動駕駛的大規(guī)模芯片設計或是精巧的物聯(lián)網芯片設計,低功耗都是開發(fā)者關注的重要指標之一。
電子工業(yè)已經發(fā)展了廣泛的電源管理技術,并定義了統(tǒng)一電源格式(UPF)來描述一些最常用方法的設計意圖。低功耗半導體設計的成功開發(fā)包括檢查UPF描述,以及在項目的多個階段根據設計驗證UPF。對應至芯片開發(fā)中的指標即為PPA(Performance, Power, Area)當中的Power,開發(fā)者在設計和驗證過程中始終關注這三個重要指標的平衡。
低功耗SoC設計流程
在Soc設計中采用門控功耗和門控時鐘技術成為使用最廣和效率最高的功耗節(jié)省方式。門控功耗依靠關閉那些不用的模塊節(jié)省功耗,而門控時鐘則是通過關閉那些不需要激活的模塊和寄存器來縮減功耗,因此,開發(fā)者透過設置數十個電壓域和數千種功耗模式來達到低功耗要求,而驗證需要確保在所有功耗模式下電路的行為皆正確,其復雜程度和驗證負荷可想而知。
驗證工具發(fā)展史
正如前文所言,設計與工藝技術在不斷發(fā)展,因此芯片也變得更加復雜,EDA工具與工藝綁定,半導體工藝更新一次EDA就要跟著更新。據了解,行業(yè)巨頭Synopsys 為了維持行業(yè)地位和緊跟技術發(fā)展,研發(fā)費用高達 35%。這足以證明EDA發(fā)展速度很快,很顯然,驗證工具也隨之迅速發(fā)展。

回看驗證工具的來路,是一部值得探究的發(fā)展史。
須知,數字電路的驗證隨著集成電路設計與制造的發(fā)展逐漸細化,形成龐大的技能樹中的一個重要分支,其包含系統(tǒng)級驗證、硬件邏輯功能驗證、混合信號驗證、軟件功能驗證、物理層驗證、時序驗證等等。
因此當回顧其發(fā)展歷史,一般是以80年代用于硬件描述的Verilog語言以及相應邏輯仿真器的出現作為驗證工具發(fā)展的起點。本篇重點挑選隨集成電路發(fā)展而成為新剛需的兩種驗證工具介紹。
(a)硬件仿真
1980年代,所有早期的硬件仿真器都是由大量商用FPGA構建而成的,這些FPGA通常成千上萬,并大量安裝在大型板上被裝在大機柜中,并通過復雜的FPGA背板互連,通過大量電纜插入目標系統(tǒng)來實現對仿真器的輸入/輸出,這種部署方案被稱為ICE(In-circuit-emulation),這一方式繁瑣不可靠,且相當耗時,業(yè)界因此發(fā)明了仿真時間(TTE)一詞,以表達并衡量將設計輸入到編譯器與仿真器后所花費的部署時間;導致其無法被推廣的原因還有高擁有成本,以及由于設備可靠性不佳,需要一批經驗豐富的應用工程師來支持其部署。

1995年左右的早期硬件仿真器特性
仿真先驅Quickturn在90年代與IBM合作,引入新技術以解決其調試功能差、部署和編譯時間長、性能無法隨著設計規(guī)模線性擴展等缺點;1999年,由中國人于硅谷所創(chuàng)辦的Axis推出能將設計從仿真器交換到專有仿真器以做調試的加速器;2000年,四名法國工程師創(chuàng)辦了EVE(Emulation Verification Engineering)并推出了一款名為Zebu for Zero-Bugs的模擬器。
發(fā)展到2000年左右,通過基于定制ASIC的新體系結構,硬件仿真器得到了顯著改善,支持軟件改進,支持Verilog和VDHL語言,并設計了新的部署模式,客戶群擴展到了處理器和圖形的市場之外,在多機箱配置下總容量能擴展到1億門,接近1MHz的仿真速度。
如今,隨著芯片集成度提高,SoC逐漸成為常態(tài),到2015年左右,設計已經達到十億門的規(guī)模,硬件仿真已成為所有驗證策略的基礎、SoC設計中必備的工具。在這段期間經過多次并購整合,市場上僅剩三家在仿真領域競爭:1998年,Cadence購買了Quickturn并推出了名為Palladium的硬件仿真系統(tǒng);Mentor Graphics并購了Meta Systems和IKOS推出了Veloce仿真器和Questa(R) CodeLink;Synopsys于2012年收購了EVE并在兩年后推出了基于Xilinx Virtex-7 FPGA的ZeBu-Server3。
(b)虛擬原型
早期開發(fā)者想驗證其設計,只有等待極其漫長的模擬結果,或是等待流片成果,而一旦結果不如預期,不管是再次模擬或是二次流片,都將產生極高的成本。因此,當Xilinx和Altera推出可重新編程門陣列(FPGA)時,開發(fā)者通過用FPGA板拼湊出有效的流程來對設計進行驗證,這一比流片便宜、比仿真要快的方式成為開發(fā)者選擇的第三種方式。
但自行組裝意味著需要對設計進行分區(qū),而FPGA上有更多的信號在各個分區(qū)之間傳輸,需要對引腳進行多路復用,門的數量呈平方增長,而引腳的數量呈線性增長,這意味著每個引腳有數千個門,這一方法要求工程師具備大量設計及FPGA的知識,以及對FPGA工具流程的熟悉。
因此,2000年,一家創(chuàng)立于瑞典的公司Hardi Electronics正式推出一款基于FPGA的原型系統(tǒng)HAPS,HAPS可以通過多種方式快速組裝ASIC原型系統(tǒng),為客戶在關鍵驗證階段節(jié)省數月的時間。2007年,Synplicity以2400萬美元的金額收購了這家公司,而Synopsys在2008年以2.27億美元收購了Synplicity,HAPS經歷幾代人于2015年發(fā)展至HAPS-80,至今仍是業(yè)界最快的原型驗證加速平臺。
與其同時,S2C于2003年于硅谷成立以解決FPGA原型市場需求;Cadence于2011年推出Rapid Prototyping Platform,也就是今天的Protium;而開發(fā)者也仍在運用其豐富的FPGA知識自行組裝原型系統(tǒng)。
芯片設計需要怎樣的驗證工具?
目前驗證工具已經衍生出了很多類別,作為全球排名第一的 EDA 解決方案提供商,新思科技的工具產品線最為全面,一直致力于開發(fā)適用于復雜的芯片系統(tǒng)的工具,因此新思也就成為了我們研究的重點。
在分門別類介紹之前,我們不得不提到近年來大火的AI技術。麥肯錫咨詢公司預測,AI正在為半導體業(yè)開啟數十年來的最佳商機,因為AI可以助力半導體公司從技術堆棧中獲得高達40%~50%的產值,而移動時代只為半導體業(yè)提供了價值20%的產值。新思科技人工智能實驗室主任廖仁億也曾指出,EDA 未來的終極形式就是AI。
近期,新思科技推出業(yè)界首個AI自主芯片設計解決方案DSO.ai,據悉該解決方案可以在芯片設計任務的巨大求解空間中搜索優(yōu)化目標并迅速完成設計,是新思科技多年持續(xù)將AI應用于芯片設計技術的重要成果之一。
再說回驗證工具,顯然,AI在其中也扮演了不小的角色。驗證工具一般分為架構設計、硬件開發(fā)、軟件開發(fā)以及業(yè)界仿真速度最快的硬件加速器等類別。
(1)架構設計:探索和優(yōu)化
在架構設計中,芯片設計首先要定義系統(tǒng)架構,明確功能、選用的IP核之間的通訊協(xié)議、PPA(Power-Performance-Area)的平衡關系等。
AI芯片設計需要高性能和能效的架構,這往往代表著更為創(chuàng)新的架構,在早期架構探索與優(yōu)化階段,快速搭建精確地架構概念模型,驗證系統(tǒng)的性能和功耗設計目標可實現,幫助神經網絡架構和算法設計師快速確定全面均衡的架構,消除芯片設計的后期更改風險,提前發(fā)現問題并提高開發(fā)效率,成為AI芯片設計的普遍需求。 早在2018年,AI芯片創(chuàng)業(yè)公司寒武紀就曾宣布,其云端智能處理器芯片采用的驗證工具,正是新思科技 HAPS 原型驗證解決方案。
實際上,像寒武紀這樣正在使用新思科技設計工具的芯片公司不止一家,Denso基礎電子研發(fā)部項目經理Takashi Abe曾表示:“汽車AI芯片設計需要高性能和能效的架構,Platform Architect Ultra使我們能夠快速搭建精確的架構概念模型,利用實際AI工作負載進行測試,有效對比數以百計的架構和IP備選方案,確保我們的汽車芯片提供最佳性能和功效。”
據悉,Platform Architect Ultra為智能映射與優(yōu)化AI芯片架構的CNN,能滿足高性能和低功耗的平衡。其獨特的技術、功能和AI參考系統(tǒng)支持整合、分析和優(yōu)化AI架構CNN工作負載模型。AI 芯片團隊可利用Platform Architect Ultra進行正確有效的架構權衡決策,以消除芯片設計的后期更改。
(2)硬件開發(fā):靜態(tài)檢查和形式化驗證
在設計流程的早期,對綜合后的網表進行快速分析并檢查 RTL 設計是否在功能上與HDL設計存在等價性, 確保功能在優(yōu)化過程中并未被改變,在仿真之前發(fā)現大部分缺陷并進行修復,提高仿真的速度和效率,并減少總體成本、時間和精力。Synopsys的SpyGlass和形式驗證解決方案基于下一代數據庫和引擎構建,可提供驗證最大、最復雜設計所需的功能和性能。
近期,新思宣布面向市場推出VC SpyGlass? RTL靜態(tài)Signoff平臺,該平臺采用了公認的SpyGlass?技術,是Verification Continuum?平臺的一部分。
對此,瑞薩電子數字設計技術部、共享研發(fā)部、物聯(lián)網與基礎架構業(yè)務部主管Hideyuki Okabe曾表示,“約束不充分或不正確是造成大量違例問題的主要原因,這也會相應地增加我們的調試周期。借助VC SpyGlass的新機器學習技術,我們的設計團隊能夠顯著減少要調試的CDC違例誤報的數量,從而加快識別根本原因。”
(3)硬件開發(fā):動態(tài)仿真和調試 仿真驗證就是檢驗編碼設計的正確性,檢驗的標準就是第一步制定的規(guī)格。看設計是否精確地滿足了規(guī)格中的所有要求。規(guī)格是設計正確與否的黃金標準,一切違反、不符合規(guī)格要求的,就需要重新修改設計和編碼。設計和仿真驗證是反復迭代的過程,直到驗證結果顯示完全符合規(guī)格標準。
在這方面,新思也有布局,新思推出Verification Continuum的全新增強型原生集成實現了所有驗證引擎之間的性能提升,加快了復雜片上系統(tǒng)設計的上市。
對此,天數智芯(Iluvatar)市場副總裁梁斌表示:“為了獲得競爭優(yōu)勢,我們需要全方位解決方案來改善驗證流程,并縮短高性能人工智能(AI)解決方案的上市時間。新思科技VC Formal控制和數據路徑應用,加上VCS的原生編譯和Verdi的統(tǒng)一調試,使我們能夠在數分鐘內發(fā)現無用代碼,并在一天內檢驗復雜的128 x 128 MAC。”
(4)軟件開發(fā):虛擬原型設計平臺 虛擬原型設計使軟件工程師在硬件設計完成的數月之前就開始研發(fā),在硅片出品后數天之內就可全面啟動系統(tǒng)。隨著芯片與應用領域的緊密結合,基于虛擬原型的軟件開發(fā)會成為常態(tài),加速軟件開發(fā)的工具將日益普及。
平頭哥與新思在此方面也有合作,平頭哥副總裁孟建熠博士曾表示,在玄鐵910處理器開發(fā)過程中,新思科技HAPS-80系統(tǒng)幫助我們在兩周內將芯片原型交付給軟件團隊,為玄鐵910處理器的早日面市提供了極大保障。
恩智浦副總裁兼車輛網絡處理器部門總經理Ray Cornyn指出,新思科技針對S32G車輛網絡處理器推出的VDK,可幫助汽車系統(tǒng)開發(fā)者利用S32G的先進功能,加速其軟件開發(fā)、集成和測試。”
(5)業(yè)界仿真速度最快的硬件加速器:
驗證加速及軟硬件系統(tǒng)驗證測試 將還處于RTL級別的設計放到一個可重構的虛擬硬件環(huán)境中,讓驗證速度得到成千上萬倍提升,在數小時之內將操作系統(tǒng)在RTL模塊上啟動起來,同時也讓軟硬協(xié)同成為可能。
2019年,新思宣布與AMD的多年協(xié)議,利用它的ZeBu ?Server 4仿真系統(tǒng),加快了越來越多的AMD高性能處理器,圖形和游戲項目的驗證。對此,AMD仿真和快速平臺建模部門高級研究員Alex Starr評價道,“高性能處理器、圖形和游戲芯片的復雜程度繼續(xù)顯著提升。高性能仿真已經成為我們開發(fā)戰(zhàn)略中的關鍵組成部分。部署ZeBu Server 4能夠高效地分析新架構的能源效率和性能,并能執(zhí)行處理客戶的工作負載。”
小結
驗證是芯片開發(fā)的重要保障,占芯片開發(fā)過半的工作量,是以數學的方法將錯誤推向無限接近于零的過程。隨著AI、智能駕駛、5G為代表的創(chuàng)新應用領域對芯片的需求增長,針對不同類型芯片的驗證工作面臨的挑戰(zhàn)也更為復雜多樣,驗證工具之間的搭配、可擴展性、加速軟硬件開發(fā)等成為開發(fā)者關注的重點,新思科技針對不同領域也已有成熟方案可幫助客戶縮短開發(fā)周期、提高流片成功率。
| 相關新聞: |
| 另辟蹊徑再續(xù)摩爾定律 |
| 我們不應該再用nm來衡量芯片的進步 |
| 一圖看懂EDA設計流程及其工具 |
學習園地