填補網(wǎng)絡(luò) SoC 設(shè)計前端與后端驗證的差距
消除復雜網(wǎng)絡(luò) SoC 開發(fā)風險不再是遙遠的目標;如今,所有設(shè)計團隊都可以實現(xiàn)。
本文引用地址:http://www.ex-cimer.com/article/201808/385417.htm最近,筆者一直在寫關(guān)于在芯片流片成功之前使用硬件加速仿真來驗證網(wǎng)絡(luò)片上系統(tǒng) (SoC) 設(shè)計的益處的系列文章。在本專欄中,將介紹一種可填補相同網(wǎng)絡(luò)設(shè)計中的前端與后端驗證之間差距的新方法。
在開始詳細介紹前,讓我們先看下這一競爭激烈的細分市場趨勢。由于云計算、大數(shù)據(jù)中心和移動應用等新市場的不斷涌現(xiàn),使得軟件驅(qū)動的網(wǎng)絡(luò) (SDN) 架構(gòu)得以大量采用。圖 1 繪制了 SDN 市場趨勢的年收入,預計在未來兩年將增長 135%。
圖 1.由于云計算、大數(shù)據(jù)中心和移動應用等新市場的出現(xiàn),SDN 的采用持續(xù)高漲(信息來源:Lauro Rizzatti)
SDN 轉(zhuǎn)而也大幅提高了設(shè)計復雜性、擴大了設(shè)計規(guī)模以及增加了端口數(shù)量。圖 2 繪制了部分關(guān)鍵細分市場中的設(shè)計規(guī)模增長。
圖 2.復雜性和門數(shù)量已隨著新 SDN 應用而增加(信息來源:Lauro Rizzatti)
開發(fā)這些巨型 SoC 的設(shè)計團隊早已不堪重負,而這種勢不可擋的設(shè)計規(guī)模的劇增更為其帶來諸多挑戰(zhàn)。按重要性遞減的順序,這些挑戰(zhàn)包括:
1.測試所有端口配置。
2.測量并符合性能和帶寬預期。
3.演示設(shè)計支持各種規(guī)格的所有以太網(wǎng) OSI 層協(xié)議
4.調(diào)試在硬件仿真中找出的硬件問題和實驗室中的后端問題。
5.確保設(shè)計按預期通過軟件重新配置/執(zhí)行。
6.提供編譯、下載和運行的快速周轉(zhuǎn)時間。
7.最大程度地降低部署驗證環(huán)境的成本/時間。
8.評估功耗并將其降至最低。
9.減小芯片的封裝。
這些挑戰(zhàn)已無法通過傳統(tǒng)軟件仿真工具或者形式驗證工具解決。這并非意味著這些工具已經(jīng)變得毫無用處。恰恰相反,它們是驗證工具箱中的基本工具,但其部署只限于知識產(chǎn)權(quán) (IP) 模塊和子系統(tǒng)模塊級別的驗證范圍內(nèi),這在現(xiàn)代的復雜 SoC 設(shè)計早期開發(fā)周期中是必不可少的,包括網(wǎng)絡(luò)芯片。
在十億門級的競爭舞臺,只有硬件驅(qū)動的驗證引擎可以應對這些挑戰(zhàn)任務,符合緊湊的時間表,在高速發(fā)展的網(wǎng)絡(luò)市場中,避免芯片發(fā)布延期所帶來的潛在收益損失。
筆者之前的文章已多次提到過,在基于硬件的驗證引擎中,硬件加速仿真已成為前端驗證的最佳工具?,F(xiàn)代硬件加速器擁有近乎無限的容量,可仿真最大型的設(shè)計,并且無需儀表/編譯即可提供整體設(shè)計可見性和訪問/控制,同時還支持高吞吐量以及快速、可預測的編譯和調(diào)用時間。它可以通過對資源的最優(yōu)化利用來容納多個并發(fā)用戶。它能以多個操作模式進行部署,從而執(zhí)行多種驗證任務,包括內(nèi)電路仿真 (ICE) 和虛擬測試、低功耗驗證、功耗估計、性能特征提取以及可測試性設(shè)計 (DFT)。
當使用多個端口驗證網(wǎng)絡(luò) SoC 設(shè)計時 -- 比如 64 或更多 -- ICE 價值定位相比前十年已顯著降低。ICE 環(huán)境需用速度適配器這樣的外部硬件,作為快速真實的網(wǎng)絡(luò)流量(數(shù)百兆赫)和相對低速的硬件加速仿真設(shè)計(一兆赫或幾兆赫)的接口。隨即會增加設(shè)置復雜性,提高功耗,且會降低可靠性。如此一來,設(shè)置的重新配置變得繁瑣,并且部署起來很慢,把加速器的使用權(quán)限制于本地安裝的單個用戶,因而排除了遠程訪問。更糟的是,它讓設(shè)計調(diào)試的再現(xiàn)性和重復性變得不確定,導致調(diào)試計劃難以執(zhí)行。
相反,設(shè)計團隊正在從 ICE 設(shè)置中遷移到虛擬測試環(huán)境,從而消除任一硬件 -- 乃至 -- 所有硬件的依賴性,包括噪聲、功耗、電纜、可靠性和相關(guān)成本。在實際硬件可用之前,可以通過使用軟件和可綜合的硬件模型的組合創(chuàng)建虛擬器件,以便通過該軟件輕松進行重新配置。它們以硬件加速仿真速度運行,支持多個用戶和多個項目,可遠程訪問,并且能在數(shù)據(jù)中心進行部署。
DAC 2016 專家組的 Guy Hutchison(Cavium 的助理副總裁,也是一名硬件工程師)說道:“對于我們的設(shè)計,我們僅采用虛擬技術(shù)。部分原因在于我們的設(shè)計本質(zhì) -- 對我們而言,并沒有真正具有代表性的、能達到 100 千兆流量的目標。內(nèi)電路仿真器方法對我們來說毫無價值,因此我們對所有的仿真均采用完全虛擬的方法。”
但是,虛擬模式需要創(chuàng)建虛擬測試環(huán)境,這是一項非凡的任務。就這方面而言,Mentor Graphics 公司已走在前列,開發(fā)了全面的復雜虛擬環(huán)境 VirtuaLAB,可以支持應用程序特定 SoC 設(shè)計的前端測試。在網(wǎng)絡(luò)設(shè)計的情況下,VirtuaLAB 包括以太網(wǎng)數(shù)據(jù)包生成器和監(jiān)視器 (EPGM),可生成、傳輸并監(jiān)控被測設(shè)計 (DUT) 的以太網(wǎng)數(shù)據(jù)包。它能夠配置 25GMII、50GMII、200GMII 和 400GMII。
每個 VirtuaLAB 支持多達 32 個端口??梢詫⒍鄠€ VirtuaLAB 系統(tǒng)進行組合,從而使得端口數(shù)擴展至 1,000 個以上。圖 3 就測試了 128 端口以太網(wǎng)交換機,比較了 ICE 設(shè)置和等效的 VirtuaLAB。
圖 3.比較驗證 128 端口以太網(wǎng)交換機的 ICE 設(shè)置(頂部)和等效虛擬設(shè)置(底部),說明了 ICE 的復雜設(shè)置,以及為何對于遠程訪問不可行(信息來源:Mentor Graphics)。
前端與后端驗證
盡管 VirtuaLAB 的前端驗證功能強大,但在實驗室中應用到工程樣品的后端測試時,其有效性會受到影響。不過,在實驗室中測試網(wǎng)絡(luò)工程樣品的方法是通過使用專用的硬件網(wǎng)絡(luò)測試儀。再次引用 Guy Hutchison 的話:“當我們在實驗室中測試時,我們會采用 IXIA 或 Spirent 流量生成器進行測試。”
在這種場景下,驗證環(huán)境有兩種差距。首先是軟件仿真與硬件加速仿真之間的差距。第二個差距是在設(shè)計中心進行的基于硬件加速仿真和 VirtuaLAB 的前端驗證,與在實驗室中由專業(yè)測試儀進行的后端測試之間的差距。圖 4 對這些差距進行了說明。
圖 4. 在驗證環(huán)境中存在從功能仿真到實驗室測試之間的差距(信息來源:Mentor Graphics IXIA)
填補差距
Mentor Graphics 再次率先發(fā)起一項舉措,以填補硬件加速仿真環(huán)境和實驗室之間的差距。它與全球領(lǐng)先的網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)應用綜合解決方案提供商 IXIA 達成協(xié)議。IXIA 的產(chǎn)品覆蓋整個網(wǎng)絡(luò)測試需求范圍,從性能到功能、再到安全和一致性測試,包括物理和虛擬測試儀。
物理測試儀用于:
·驗證物理 DUT 的高性能和可擴展性。
·測試高速以太網(wǎng)接口的數(shù)據(jù)平面超高可擴展性。
·以微秒級精度進行可靠測試和測量所有數(shù)據(jù)速率。
·驗證光學元件和線纜的高速互連系統(tǒng)。
虛擬測試儀用于:
·快速實施測試環(huán)境。
·管理訂閱和靈活浮動許可證。
·支持多用戶和多站點。
·進行大規(guī)模的功能測試。
·在芯片設(shè)計周期的早期進行測試。
·一個或多個管理器件上的載荷平衡驗證。
·驗證云/數(shù)據(jù)中心的軟件定義網(wǎng)絡(luò)、網(wǎng)絡(luò)功能虛擬化 (NFV) 和應用。
·認證網(wǎng)絡(luò)安全性、拒絕服務和入侵檢測。
Mentor 和 IXIA 不斷擴大 Veloce 硬件加速仿真平臺應用的產(chǎn)品系列,共同開發(fā)了作為硬件加速仿真測試前端的 IXIA IxNetwork 虛擬版本 (VE) 測試產(chǎn)品系列和作為后端的 Mentor 的全新 Veloce 虛擬網(wǎng)絡(luò) (VN) 應用集成(圖 5)。
圖 5.表示 Mentor/IXIA 集成網(wǎng)絡(luò)解決方案的方框圖(信息來源:Mentor Graphics IXIA)
IxVerify 前端乃基于 IXIA 的 IxNetwork 測試產(chǎn)品,采用相同的圖形界面,并啟用了測試腳本和功能復用(也支持 IxExplorer 用于舊版安裝)。在其第一版中,該系統(tǒng)支持這些客戶端應用當前支持的所有無狀態(tài)以太網(wǎng)流量,重點強調(diào) 1G、10G、25G、40G、50G、100G、Tx/Rx 帶寬分析、UDF/UDS、流量整形、延時計算、完整的圖形界面前端和 IXIA 的所有自動化特性。實際上,客戶體驗與 IXIA 客戶現(xiàn)在所享受的并無區(qū)別。
VN App可用作后端,并且包括在工作站上運行的 Veloce 流程控制機制、以及 Veloce 硬件加速器內(nèi)部映射的事務處理器,形成了從 IXIA 測試平臺到硬件加速仿真的高性能優(yōu)化數(shù)據(jù)平面流。就提高效率和改進調(diào)試而言,該整體解決方案填補了軟件仿真、硬件加速仿真和實驗室之間的差距。
VN 應用程序拓撲
模塊化和高度可擴展的虛擬系統(tǒng)反映了完全虛擬化的物理 IXIA 測試儀,因此可以使用 Mentor 的軟件仿真工具進行快速設(shè)計調(diào)試,并為整個 SoC 驗證提供相同的 Veloce ICE 性能。圖 6 是 Mentor/IXIA 集成解決方案的框圖。
圖 6:在本配置中,IxVerify 用作前端,而 VN 應用程序用作后端(信息來源:Mentor Graphics IXIA)
每個線卡都是在 Qemu(通用和開源機器硬件加速器和虛擬器)/內(nèi)核虛擬機 (KVM) 實用工具中運行的虛擬機 (VM)。它采用了最先進的 Hyper Visor 技術(shù),搭配 Testbench Express (TBX) 技術(shù),可以實現(xiàn)緊密集成的虛擬平臺解決方案。線卡虛擬機 (VM) 通過在位于公司網(wǎng)絡(luò)中任何位置的任何用戶 Windows 工作站上運行的 IxExplorer 或 IxVerify 客戶端應用程序與公司網(wǎng)絡(luò)上的底板 VM 進行通信。
OSI 參考模型
圖 7 比較了 EPGM VirtuaLAB 和 VN App與開放系統(tǒng)互連 (OSI) 參考模型。
圖 7.ViruaLAB 中支持的 OSI 層與 VN App的比較(信息來源:Mentor Graphics IXIA)
通過 IXIA 和 Mentor Graphics 實現(xiàn)加速的驗證流程
Mentor Graphics 和 IXIA 合作開發(fā)產(chǎn)品,使得網(wǎng)絡(luò)客戶能夠?qū)?IXIA 虛擬環(huán)境無縫集成到基于硬件加速仿真的驗證流程中,因此為實驗室環(huán)境帶來強大的硬件加速仿真優(yōu)勢。這樣,客戶便可復用數(shù)據(jù)流生成腳本,進而提高效率、完善調(diào)試,縮短上市時間,使設(shè)計團隊能減少復雜芯片設(shè)計中的挑戰(zhàn)風險。
圖 8.Mentor/IXIA 集成消除了從軟件仿真到硬件加速仿真再到實驗室的驗證環(huán)境中的所有差距(信息來源:Mentor Graphics IXIA)
通過使用該系統(tǒng),網(wǎng)絡(luò)設(shè)計團隊能在軟件仿真、硬件加速仿真和實驗室中運行相同的測試。它支持高性能,并可為前端驗證提供調(diào)試優(yōu)勢。實驗室中未發(fā)現(xiàn)的錯誤可在硬件加速仿真中通過與實驗室相同的測試環(huán)境進行追蹤。其中包括 PCIe、以太網(wǎng)和可能位于網(wǎng)絡(luò)交換機上的其他 VirtuaLAB 解決方案。測試整個產(chǎn)品中發(fā)現(xiàn)的錯誤,包括硬件和軟件,可在硬件加速仿真中立即再現(xiàn),但若不使用由 IXIA 和 Mentor Graphics 共同開發(fā)的這些最先進的虛擬化技術(shù),這種硬件加速仿真則可能需要數(shù)周才能復制。
最終,通過使用后端軟件開發(fā)工具包 (SDK) 和測試環(huán)境,可以實現(xiàn)真正的“提前”前端驗證功能。消除復雜網(wǎng)絡(luò) SoC 開發(fā)風險不再是遙遠的目標;如今,所有設(shè)計團隊都可以實現(xiàn)。
評論