FPGA原型驗證系統(tǒng)
FPGA原型驗證系統(tǒng)的主要應用場景是“芯片設計過程中搭建軟硬件一體的系統(tǒng)驗證環(huán)境”:一是芯片流片回來前為軟件團隊提供調試驅動軟件的平臺,加速芯片上市時間;二是作為芯片仿真驗證的一個補充,因為在FPGA內部可以生成真實電路,并且可以對接真實的硬件子卡,相較仿真使用的軟件模型有一定差別,因此可以發(fā)現(xiàn)更多隱蔽的bug ;此外FPGA相對軟件仿真以及Emulator而言,速度更快,比較適合一些耗時較多的場景case。故在芯片設計規(guī)模越來越大的情況下,使用多顆FPGA芯片互聯(lián)能夠快速實現(xiàn)高性能的全系統(tǒng)驗證原型,并滿足該場景下的調試需求。
Emulator 硬件仿真器
Emulator的主要應用場景是 “芯片設計過程中對完整封閉的設計進行加速仿真并調試”,它與FPGA原型驗證系統(tǒng)的主要定位差異在于:能對全芯片進行和芯片時序行為一致的硬件仿真,包括全芯片信號的提取,對全芯片的功能、性能、功耗進行系統(tǒng)級的驗證與調試。這一點差別導致了兩者系統(tǒng)設計上的巨大差異。用戶無需花費大量的時間去考慮如何設計、如何分割、如何布局布線等問題,從而在易用性方面大大增強。
基于FPGA原型驗證系統(tǒng)平臺和 Emulator硬件仿真平臺二者的設計目標和應用場景差異,下面我們分別來介紹一下這兩種產(chǎn)品的關鍵點。
FPGA原型驗證系統(tǒng)
隨著目前集成電路的不斷發(fā)展,設計規(guī)模的大型化,單顆FPGA板在容量上就顯得捉襟見肘,已經(jīng)無法滿足設計需求。以目前國內頭部的CPU、GPU設計公司的設計規(guī)模,單顆IC芯片的設計體量,需要占用到幾十顆Xilinx VU440級別FPGA的情況,已屢見不鮮。在這種背景之下,F(xiàn)PGA系統(tǒng)供應廠商開始著手研究多顆FPGA的系統(tǒng)互聯(lián)解決方案。其中就包括在單塊的PCB板上裝配多顆FPGA及多個FPGA系統(tǒng)之間的互聯(lián)。
經(jīng)過不斷探索,F(xiàn)PGA原型驗證平臺產(chǎn)品應運而生。之所以稱之為“平臺”或“系統(tǒng)”,就一定會包含對應的軟件和硬件。首先在硬件結構上多顆FPGA互聯(lián)結構的引入就要求結構上比單板形式的FPGA開發(fā)板要復雜的多,其次FPGA芯片廠商提供的軟件工具無法支持多片的FPGA分割,需要配套專業(yè)的FPGA原型分割相關軟件工具。
一套優(yōu)秀的FPGA原型驗證系統(tǒng),應該具有以下產(chǎn)品特性:
基于模塊化的設計,可靈活擴充與裁剪的驗證平臺規(guī)模
在保證一定的高速仿真性能的前提下,提供設計完整性
提供從軟件早期開發(fā)到系統(tǒng)級驗證的解決方案
提供從綜合、自動模塊分割、布局布線、FPGA bit產(chǎn)生、下載、在線/離線Debug的整套流程
提供豐富的調測手段,幫助用戶快速定位問題,易于設計的快速Bring Up
提供豐富的接口子板和外部真實設備相連
提供軟件接口與外部工具構成復雜的調試解決方案
提供豐富的IO接口,以及高速Serdes接口用于partition互連以及外設子卡的互連
FPGA原型驗證系統(tǒng)速度快,但它的缺點也是顯而易見的,主要體現(xiàn)在調試的便利性上繼承了FPGA自身的一些缺點,比如需借助FPGA內嵌邏輯分析儀來抓取信號排查問題,布局布線耗時冗長,效率不是太高。
其他關于FPGA原型驗證系統(tǒng)的詳細內容,請參考文末文章鏈接《硬件輔助驗證產(chǎn)品解讀(上篇)- FPGA開發(fā)板vs原型驗證系統(tǒng)》。
硬件仿真器Emulator
在目前SoC規(guī)模越來越大型化的情況下,有的設計甚至達到數(shù)百億ASIC等效門規(guī)模,巨大的設計規(guī)模導致軟件仿真時間上的消耗變得越來越無法忍受。FPGA原型平臺在驗證規(guī)模到達一定級別,F(xiàn)PGA數(shù)量太多的情況下,也會帶來新的分割問題并且會失去原有的性能優(yōu)勢。硬件仿真器的優(yōu)勢主要在于它獨有的、超大規(guī)模的硬件結構,盡可能地保證了RTL設計的完整性。從硬件實現(xiàn)上看,一般有基于FPGA和CPU兩種架構,對于基于FPGA架構的類型來說(如Synopsys的Zebu系列),可以理解為有很多塊FPGA單板,大量的單板與電源、控制等再互相連接起來,形成一個“龐然大物”,優(yōu)點是仿真性能高,使用商用FPGA可以降低開發(fā)成本;對于基于CPU架構的類型來說(如Cadence的Palladium系列),通常會將集成了數(shù)以萬計的高速CPU核的ASIC芯片焊接在一塊巨大的單板上,配以控制、冷卻等模塊構成一個完整系統(tǒng)。優(yōu)點在于編譯時間短,調試能力強;缺點就是功耗高,需要特別冷卻系統(tǒng)和運營成本高,穩(wěn)定性比較難控制,性能一般也比基于FPGA的硬件仿真系統(tǒng)低些。一般一套Emulator的體積大約從一個冰柜到一臺大雙開門冰箱的大小,而大型Emulator的重量也可以用“噸”來計算了。本文主要介紹基于FPGA的硬件仿真器。
基于FPGA的原型平臺和硬件仿真器,兩者的架構和軟件上雖有一定的相似之處,但定位不同,Emulator的定位和設計都是指向大容量和全系統(tǒng)仿真級調試,因此軟硬件設計上有不同的取舍。綜合來看,硬件仿真器的特點是支持超大規(guī)模(10億門級以上)的設計容量,全自動化的軟件設置實現(xiàn)流程,基本無需修改硬件連接配置,以及靈活多樣的全系統(tǒng)仿真調試能力,包括:
信號的追蹤深度更深(達數(shù)十億仿真周期)
信號的條件觸發(fā)、動態(tài)探針插入、離線調試
擁有不限量的時鐘域,它們可以從核心時鐘資源中無限衍生
全系統(tǒng)范圍的調試追蹤
帶有UVM驗證方法學的協(xié)同加速仿真
軟硬件的協(xié)同驗證、測試接口的虛擬化支持
系統(tǒng)功耗與性能預估、分析
目前,主流的Emulator工作特點,基本上包括以下幾種:
基于Cycle級的軟硬件聯(lián)合仿真
基于ICE ( In-Circuit Emulator )模式: 一種最為傳統(tǒng)的,理論上運行速度最快的模式。這種模式下需要在硬件中集成被測試邏輯單元及測試邏輯,或者通過外設硬件輸入激勵;且往往需要用到Speed Adapter以實現(xiàn)外圍高速硬件和硬件仿真器在工作頻率上的橋接。由于Emulator本身的運行頻率不高,那么和外部的設備,如PCIE/SATA/USB等連接時需要通過速度匹配設備,通過緩存來匹配快速端的速度進行適配
基于事務級(Transaction)的軟硬件聯(lián)合仿真;這種情況下,被測試的邏輯部分運行在Emulator的硬件里面;硬件通過一套完整的軟件及驅動、物理通道和Host Server實現(xiàn)連接。這種方式下可以使用多樣的SW model Library,常見的有PCIE/AMBA bus等。雖然說它的運行速度沒有ICE模式快,但是在軟件上的功能和方法支持非常豐富。這種方式也被認為是軟件Simulator的硬件化
提供豐富多樣的虛擬解決方案:包括Virtual Host(Qemu/VDK),Virtual Device(例如基于Chiplet的Die to Die 模型),Virtual memory models(各類協(xié)議的存儲器模型SDRAM/Flash/SRAM/EEPROM),Transactors(AMBA/PCIe),Hybrid Mode(CPU Models+ DUT in Hardware)
多種模式的探針工作方式:靜態(tài)探針、動態(tài)探針、全景探針和定制探針組等
其次,在多用戶的支持方面,Emulator系統(tǒng)可以支持較多的用戶同時在線使用,實現(xiàn)資源的靈活調度;而FPGA原型系統(tǒng)目前也有可以支持多用戶的場景,但因為產(chǎn)品在時鐘資源分配等方面存在著局限性,所以實際很少采用。
總 結
下面的圖例便于讀者更容易的理解它們二者之間的關系:
從系統(tǒng)的特性上看,F(xiàn)PGA 原型系統(tǒng)支持多FPGA、自動分割;性能較高的情況下運行系統(tǒng)軟件;仿真加速器的超大容量可以放全芯片的設計,進行全芯片的系統(tǒng)功能/性能/功耗驗證。從應用場景上看,我們看到原型系統(tǒng)和仿真加速器在軟硬件協(xié)同設計方面,有一定的交集。 以上就是關于FPGA原型驗證系統(tǒng)和硬件仿真器這兩種不同的數(shù)字設計驗證平臺的對比介紹,謝謝!
-
FPGA
+關注
關注
1629文章
21736瀏覽量
603419 -
芯片設計
+關注
關注
15文章
1019瀏覽量
54897 -
軟件
+關注
關注
69文章
4944瀏覽量
87500
發(fā)布評論請先 登錄
相關推薦
評論