電子設(shè)計自動化—— Electronic Design Automation,簡稱 EDA。作為芯片設(shè)計最上游,EDA 軟件的工作,是要在芯片那么小的空間進(jìn)行布局布線、版圖、設(shè)計規(guī)則檢查等,好比在米粒上刻出航空母艦?zāi)P汀?/p>
在 EDA 問世之前,設(shè)計人員必須通過手工完成電路設(shè)計和布線等基礎(chǔ)工作。隨著芯片集成度提高和性能的多元化,令芯片設(shè)計要求也變得越來越復(fù)雜,一個指甲蓋大小的芯片上要集成數(shù)百億顆晶體管,這樣細(xì)微且宏大的工程,早已不是單純?nèi)肆Ψ秶芨采w,EDA 的重要性不言而喻。
根據(jù)應(yīng)用場景的不同,EDA 工具的使用主要分為設(shè)計、驗證和制造三大類。大規(guī)模集成電路設(shè)計復(fù)雜性的提升,使芯片驗證面臨資金與時間的巨大挑戰(zhàn)。早期開發(fā)者想驗證芯片的設(shè)計是否符合預(yù)設(shè),只有等待極其漫長的模擬結(jié)果,或是等待流片成果,而一旦結(jié)果不如預(yù)期,不管是再次模擬或是二次流片,都將產(chǎn)生極高的成本。因此,當(dāng) Xilinx 推出現(xiàn)場可編程邏輯門陣列(FPGA)時,開發(fā)者即可通過用 FPGA 板拼湊出有效的流程來對設(shè)計進(jìn)行驗證,F(xiàn)PGA 原型驗證這一解決方案就此營運而生,這一比流片便宜、比仿真要快的方式,已成為開發(fā)者檢驗設(shè)計有效性的不二選擇。
一、基于 FPGA 的物理原型驗證
就像是建筑師設(shè)計完樓房、開始建造前,需要通過模型去測試防震、防風(fēng)、結(jié)構(gòu)強度等各種參數(shù),芯片和系統(tǒng)開發(fā)者也需要在流片前對設(shè)計進(jìn)行“原型驗證”——就是模仿真實軟件應(yīng)用條件下的芯片和系統(tǒng)表現(xiàn)是否滿足了實際應(yīng)用場景要求。
FPGA 的應(yīng)用范圍廣泛,通信、計算、控制等領(lǐng)域等都有它的建樹,并且由于其具有內(nèi)部電路可重構(gòu)的特點,幾乎可以完全映射芯片的邏輯設(shè)計,也被當(dāng)作一種性價比優(yōu)越的芯片驗證基礎(chǔ)設(shè)施。FPGA 原型驗證已是當(dāng)前原型驗證的主流且成熟的芯片驗證方法——它通過將 RTL 移植到現(xiàn)場可編程門陣列(FPGA)來驗證 ASIC 的功能,并在芯片的基本功能驗證通過后就可以開始驅(qū)動的開發(fā),一直到芯片 Tape Out 并回片后都可以進(jìn)行驅(qū)動和應(yīng)用的開發(fā)。當(dāng)芯片回片后,應(yīng)用程序可以直接基于 FPGA 版本的驅(qū)動來進(jìn)行簡單的適配,即可以應(yīng)用到 SoC 芯片上,將 SoC 芯片 Time-to-Market 的時間控制的很完美。除了可以提前進(jìn)行軟件開發(fā)外,從成本上來說,F(xiàn)PGA 原型驗證是一個性價比很高的驗證手段,在價格上可以說非常的親民。更重要的 FPGA 原型在運行速度上也技高一籌:它在速度上當(dāng)然比 EDA 驗證高了好幾個數(shù)量級,即使是與 Emulator 相比,其性能上也有碾壓式的優(yōu)勢。在這種種優(yōu)勢中,“流片前的軟硬件協(xié)同開發(fā)”是 FPGA 物理原型驗證最不可替代之處,提早基于該技術(shù)平臺進(jìn)行軟件驅(qū)動開發(fā)和應(yīng)用開發(fā),對于縮短最終芯片 Time-to-Market 周期意義重大。
在軟硬件深度定制化、要求芯片到應(yīng)用的一站式交付的今天,F(xiàn)PGA 原型平臺的重要性進(jìn)一步提升。2000 年,一家創(chuàng)立于瑞典的公司 Hardi Electronics 正式推出一款基于 FPGA 的原型系統(tǒng) HAPS,HAPS 可以通過多種方式快速組裝 ASIC 原型系統(tǒng),為客戶在關(guān)鍵驗證階段節(jié)省數(shù)月的時間。2007 年,Synplicity 以 2400 萬美元的金額收購了 Hardi,而 Synopsys 在 2008 年以 2.27 億美元收購了 Synplicity,HAPS 經(jīng)歷幾代人于 2014 年發(fā)展至 HAPS-80,至今仍是業(yè)界最快的原型驗證加速平臺。
二、物理原型驗證工具的幾大挑戰(zhàn)及解決方案
目前 ASIC 的設(shè)計變得越來越大,越來越復(fù)雜,單片 FPGA 已不能滿足原型驗證要求,多片 FPGA 驗證應(yīng)運而生。RTL 邏輯的分割、多片 FPGA 之間的互聯(lián)拓?fù)浣Y(jié)構(gòu)、IO 分配、高速接口都對應(yīng)用 FPGA 原型驗證的芯片開發(fā)者提出了更高的要求也帶來了前所未有的挑戰(zhàn)。那當(dāng)選擇一款合適的物理原形驗證工具時,應(yīng)該在哪些緯度做重點考量和取舍呢?
1 容量限制和性能要求
對于大型的設(shè)計(大于 2 千萬等效 ASIC 門),一塊 FPGA 往往容納不下,此時必須將多塊 FPGA 互聯(lián)才能驗證整個設(shè)計,在這種情況下,就需要對大型的設(shè)計進(jìn)行 Partition 即分區(qū)。Partition 引入了新的問題,而這些問題其實在芯片中并不存在,很多時候耗費很多人力去實現(xiàn)一個可用的 Partition 方案,僅僅是受限于 FPGA 的容量而不得已的處理辦法。
Partition 引入的最大問題是對 IO 的需求激增,雖然 FPGA 有超過 1000 個可用的 IO,但是一個完整的 SoC 如果被拆分成規(guī)模相當(dāng)?shù)膸讉€部分時,每個部分之間的互聯(lián)信號數(shù)量往往會遠(yuǎn)超 1000 個,所以在 IO 數(shù)量受限時,必須采用 TDM(Time Division Multiplex),即 FPGA 內(nèi)部的多個并行信號轉(zhuǎn)為高速串行信號,通過 FPGA IO 傳輸?shù)搅硪粔K FPGA,然后再進(jìn)行解復(fù)用,轉(zhuǎn)換成并行信號,實現(xiàn)信號從一個 FPGA 到另一塊 FPGA 的傳遞。引入了 TDM 雖然解決了 IO 瓶頸,但是 Mux 和 De-Mux 引入了額外的延時,導(dǎo)致 cross-FPGA 的 path 成為 critical path,進(jìn)一步降低了 FPGA 的可運行頻率,可以說 Partition 是不得已而為之的方案,最終的結(jié)果只是得到一個可用的方案而非理想的方案。
另一個方面,由于在 SoC 原型驗證中模塊常常會增減,導(dǎo)致需要頻繁的改動 Partition 方案,如果手動去處理,則需要花費很多精力才能得到一個上文提到可用但折中的方案。此外,處理大量的 cross-FPGA 信號非常容易出錯,所以對于大型的 SoC FPGA 原型驗證,必須采用自動化的工具去完成 Partition,這對 EDA 工具而言亦是全新的挑戰(zhàn)。
新思科技 HAPS 原型驗證解決方案,具有獨一無二的自動可干預(yù)分割功能,同時提供了系統(tǒng)級跨 FPGA 的時序分析工具,為 HSTDM IP, 纜線和 IO 提供時序模型,可以方便地處理 TDM 路徑上的多個約束,為多 FPGA 的設(shè)計提供了優(yōu)化且可靠的時序,保證了平臺的高速性能和穩(wěn)定性。
2 迭代速度
由于 SoC 芯片的設(shè)計頻率很高,為了讓原型驗證平臺盡可能和 SoC 芯片性能接近,開發(fā)者期望讓 FPGA 原型平臺運行在盡可能高的頻率上,但是由于 SoC 的 RTL 代碼是為芯片實現(xiàn)設(shè)計,大量深層次組合邏輯的存在(這樣可以節(jié)省芯片面積),導(dǎo)致了 SoC RTL 代碼在 FPGA 上實現(xiàn)時時序收斂困難,往往只能達(dá)到幾 MHz。對于大型的 SoC,內(nèi)部的 CPU/GPU/CODEC/NPU 等計算和編解碼模塊邏輯復(fù)雜,往往成為整個設(shè)計的 timing wall,導(dǎo)致時序優(yōu)化過程會占據(jù) FPGA Implementation 過程 30-40%的時間。
基于新思科技 HAPS 原型驗證解決方案,在對設(shè)計進(jìn)行分割和時序優(yōu)化的同時,也充分考慮到后續(xù) FPGA 布局布線的挑戰(zhàn),在綜合時,HAPS 采用獨特的技術(shù),增強和優(yōu)化單 FPGA 的綜合結(jié)果,可以有效的減少后期 vivado 布局布線的時間,并結(jié)合多核多進(jìn)程綜合等技術(shù),有效減少各個環(huán)節(jié)的時間,加快迭代速度。
3 接口方案
外部子板和 FPGA IO 之間的高速同步接口一直以來都是 FPGA 的痛點和難點:一方面,相比于 ASIC,F(xiàn)PGA 在 IO 時序方面可以調(diào)整的空間有限,它不能像 ASIC 一樣可以通過時序約束來靈活調(diào)整 FPGA IO 信號之間的 skew,導(dǎo)致并行信號接口之間的 path skew 很難控制在一個比較理想的范圍內(nèi),最終會導(dǎo)致數(shù)據(jù)采樣失敗,降低頻率往往是一種有效的辦法,但是有些控制器和 PHY 之間的接口是需要滿足標(biāo)準(zhǔn)規(guī)范的,不能無限制的降低,對于這種情況有時只能想盡辦法嘗試修復(fù)時序,甚至需要修改代碼。
另一方面,原型驗證使用的子板數(shù)量不大,市場上往往沒有銷售,很多時候需要自行設(shè)計,進(jìn)一步給調(diào)試帶來了不確定性,也延長了調(diào)試周期。高速接口的調(diào)試往往消耗了大量的人力資源,很多時候都是靠調(diào)試的經(jīng)驗和靈感解決問題,這么做不僅費時費力,而且效果不佳。
新思科技 HAPS 原型驗證解決方案,給用戶提供了多種靈活的接口方案,包含豐富的外部子卡集合,降速橋方案;還和業(yè)界伙伴通過 HAPS Connect Program,為使用者提供了更廣泛的擴展空間。
4 可觀測性
FPGA 也是芯片產(chǎn)品,所以內(nèi)部的信號無法直接觀測。通常需要借助于 FPGA 的 debug 工具在生成 bit 文件前選取要觀察的信號。當(dāng) bit 文件加載運行時,必須通過配套的 debug 工具觀察指定的信號波形,但是受限于 Block RAM 的容量以及信號優(yōu)化等原因,如此調(diào)試的效率比較低。
新思科技 HAPS 原型驗證平臺提供了多種靈活的調(diào)試手段。DTD(深度跟蹤調(diào)試)功能,為用戶提供了多 FPGA 實時速度的 RTL 級別信號聯(lián)合波形調(diào)試,可以觀測上千信號秒級的波形,進(jìn)一步結(jié)合 Verdi/Siloti 的關(guān)鍵信號提取功能,可顯著的擴大信號觀測的范圍。GSV 是另外一個被用戶廣泛采用的調(diào)試功能,它可以提供設(shè)計內(nèi)部所有寄存器的快照,在多種實際調(diào)試場景有效的幫助軟硬件團(tuán)隊分析定位系統(tǒng)問題。
5 產(chǎn)品的成熟度
原型驗證是一項壁壘頗高的技術(shù),串聯(lián)著芯片設(shè)計和最終應(yīng)用,需要極強的適用性和靈活度來適應(yīng)發(fā)展迅速和多樣性的芯片研發(fā),通過和一線芯片研發(fā)人員的通力合作,打造使用生態(tài)圈,不斷進(jìn)化和迭代技術(shù)才能始終幫助芯片開發(fā)者實現(xiàn)“Shift-Left”研發(fā),加快產(chǎn)品上市時間。
新思科技自 2003 年起推出第一款原型驗證產(chǎn)品 HAPS-10 起,持續(xù)推出 7 代產(chǎn)品,久經(jīng)市場檢驗, 并為滿足不斷演進(jìn)的原型驗證需求, 補充了諸多獨一無二的產(chǎn)品功能,如 UMRBus, Hybrid 原型驗證,基于 UPF 的低功耗系統(tǒng)驗證, HAPS GateWay 等,是加快軟件開發(fā)和芯片設(shè)計驗證的最佳解決方案。全球 200 多家公司都已經(jīng)部署了最新一代 HAPS-80,包括前十大半導(dǎo)體公司中的九家,其出貨量在今年超過 3000 臺。
國內(nèi)目前也有逾 50 家芯片設(shè)計企業(yè)部署了 HAPS 平臺,進(jìn)一步驗證了 HAPS 原型驗證的市場領(lǐng)先地位。
各類 FPGA 原型驗證平臺技術(shù)對比
目前市面上常見的 FPGA 原型驗證平臺可以分為兩大類別,一類是芯片設(shè)計公司自己制作的 FPGA 板(Build Your Own, 以下簡稱 BYO); 另一類是商用 FPGA 平臺,比如新思科技的 HAPS 方案。
就上文提到的一些具體考量點,各類原型驗證平臺的對比如下:
顯而易見,新思科技的 HAPS 方案,在全面性,成熟度,和對大規(guī)模設(shè)計的支持上,都占有絕對明顯的優(yōu)勢。
三、物理原型驗證工具的應(yīng)用不止于芯片
芯片是硬件產(chǎn)業(yè),也是軟件產(chǎn)業(yè),同時涉及下游的應(yīng)用場景還有上游的高精度設(shè)計。在科技賦能的智能化時代,芯片不僅支撐數(shù)字經(jīng)濟的各個方面,在賦能各產(chǎn)業(yè)的作用也不容小覷,從 5G,自動駕駛汽車,人工智能等,芯片的應(yīng)用幾乎遍布所有可能想象的電子產(chǎn)品,甚至包括航空航天到軍工技術(shù)的所有方面。隨著人工智能和 5G 的加速發(fā)展,以及加快數(shù)字化時代的新基建的開展,未來芯片的應(yīng)用場景會越來越多,定制化芯片的需求也會越來越大。而作為手握未來世界之門鑰匙的開發(fā)者們必須要和系統(tǒng)廠商更緊密的協(xié)作研發(fā),才能讓芯片技術(shù)創(chuàng)新最終賦能科技應(yīng)用。
以人工智能的人臉識別場景為例,在海量人群中搜索走失兒童需要超強的快速反應(yīng)能力,才能在第一時間抓住機會識別并找到目標(biāo)對象,其中軟件支持了人工智能的算法,芯片所提供的超強算力讓復(fù)雜的算法在毫秒內(nèi)實現(xiàn)推斷。物理原型驗證讓軟件的開發(fā)和芯片的研發(fā)得以同步進(jìn)行,而不用互相等待。這一技術(shù)將推動芯片和科技應(yīng)用的生態(tài)結(jié)合,讓科技的進(jìn)步進(jìn)入極速模式,加速未來的想象變?yōu)楝F(xiàn)實。
? ? ? ?責(zé)任編輯:pj
評論