設(shè)計用于網(wǎng)絡(luò)應(yīng)用程序的ASIC面臨著獨特的挑戰(zhàn)。一是這些設(shè)備的帶寬和延遲性能測試需要比其他類型的IC所需的仿真周期大得多的仿真周期。當然,擴展的模擬會減慢整個設(shè)計過程。為了解決這些以及其他問題,思科工程師采用了將仿真與仿真相結(jié)合的做法,以改善和加速驗證過程。
過去,思科會為每個新的IC追求獨特的驗證機制。為了節(jié)省工作量和時間,該公司與其工具供應(yīng)商Mentor Graphics合作,對可應(yīng)用于多種設(shè)計的方法進行了標準化。
思科系統(tǒng)公司Core ASIC Group的驗證經(jīng)理Afzal Malik說:“向現(xiàn)成的仿真產(chǎn)品遷移非常有益,特別是大型芯片和系統(tǒng)的出現(xiàn)。”Malik參與了針對企業(yè)和園區(qū)交換網(wǎng)絡(luò)的專用集成電路(ASIC)系列的仿真,Catalyst 9000系列是思科最成功的產(chǎn)品系列之一。
Malik的小組使用仿真來針對難以發(fā)現(xiàn)的深度循環(huán)漏洞。沒有仿真,這些類型的錯誤最終會在硅片中實現(xiàn),而修復(fù)它們的成本非常高。該小組設(shè)定的目標是通過仿真來檢測所有錯誤,在正式發(fā)布之前將正式的驗證仿真和硬件仿真相結(jié)合,從而達到100%的覆蓋率。達到這些目標將縮短產(chǎn)品上市時間。
挑戰(zhàn)僅始于帶寬和等待時間性能測試,這些測試需要如此長的仿真運行時間。由于過多的構(gòu)建和運行時間,因此很難在仿真中測試復(fù)雜系統(tǒng)中的多芯片交互。隨著接口不斷發(fā)展,設(shè)計驗證小組花時間開發(fā)驅(qū)動程序和監(jiān)視器。某些網(wǎng)絡(luò)協(xié)議(例如PTP 1588和鏈接暫停和優(yōu)先級流控制(PFC))需要大量仿真,并且運行時間很長才能達到穩(wěn)定狀態(tài)。
網(wǎng)絡(luò)ASIC通常是大型設(shè)計,這意味著代碼覆蓋和功能覆蓋需要更多時間。此外,對最新網(wǎng)絡(luò)標準的驗證要求增強測試平臺組件。最后的挑戰(zhàn)是硬件/軟件的協(xié)同驗證,這涉及在磁帶輸出之前在硬件上運行實際的軟件。
Malik指出,仿真對于塊級驗證和基本集成測試是不可替代的,但是隨著設(shè)計尺寸的增加,仿真性能會下降,尤其是在使用多個ASIC的系統(tǒng)上。為了克服挑戰(zhàn),僅憑仿真是不夠的。
與驗證過程相關(guān)的一些術(shù)語應(yīng)在此處定義。后門初始化和前門初始化是指如何從內(nèi)存中加載或提取內(nèi)容。前門流程意味著設(shè)計本身用于將數(shù)據(jù)移入和移出內(nèi)存。后門流程是測試平臺或軟件在不使用設(shè)計的情況下將數(shù)據(jù)移入和移出內(nèi)存的一種方式。測試工程師經(jīng)常想預(yù)加載內(nèi)存內(nèi)容,或者在測試運行結(jié)束時或在測試過程中途從內(nèi)存中提取數(shù)據(jù),而后門訪問通常用于這種類型的內(nèi)存加載或提取。
Malik報告說,他的小組在90%以上的測試中使用后門初始化模擬。模擬不是前門驗證的理想解決方案。當軟件配置ASIC并運行生產(chǎn)軟件時,前門初始化成為必要條件。
為了應(yīng)對挑戰(zhàn),思科的設(shè)計驗證工程師針對這種ASIC設(shè)計引入了Mentor Graphics的Veloce2仿真器。仿真的運行速度比仿真快一千倍,并且其運行時性能不會隨著設(shè)計尺寸的增加而降低。
與FPGA系統(tǒng)不同,基于Veloce的仿真環(huán)境提供了完整的調(diào)試可見性。編譯和運行步驟與模擬相似,因此易于使用。Malik指出,例如,可以在仿真中重用各種各樣的驗證組件,尤其是記分板,檢查器和功能覆蓋點。
該小組使用仿真技術(shù)進行設(shè)計培訓。馬利克(Malik)確認,即使在仿真中進行多單元級驗證也是在芯片級獲得前幾個數(shù)據(jù)包的良好起點。
仿真不僅可以幫助您發(fā)現(xiàn)深層的漏洞,而這些漏洞本來就很費時間進行檢測,但它還可以幫助您執(zhí)行真正的軟件,在芯片上運行性能測試以及進行系統(tǒng)級驗證。對于線速測試,流量控制和Internet混合(IMIX)測試,仿真也很方便。在仿真中可以有效地執(zhí)行暫停測試,數(shù)據(jù)路徑測試和負載平衡。
軟件和硬件團隊都使用Cisco的ASIC驗證環(huán)境。虛擬PCIe接口(左)通常供軟件團隊在通過標準PCIe接口與交換ASIC進行通信的控制平面上引導(dǎo)其OS或內(nèi)核。從軟件的角度來看,軟件團隊的運作就像在使用ASIC一樣。但是,設(shè)計本身在仿真器中。資料來源:思科
對于功能驗證,思科做了兩件事。它為前門初始化設(shè)計了一個測試平臺。它進行了所有C ++ / System C測試檢查器和模擬檢查,甚至是實時檢查,并將其移植到仿真器上。它還使用Mentor的以太網(wǎng)數(shù)據(jù)包生成器監(jiān)視器(EPGM)作為生成以太網(wǎng)數(shù)據(jù)包或不同類型數(shù)據(jù)包的IP。
思科提出設(shè)計的步驟包括:
標識設(shè)計中未仿真的部分,例如,測試設(shè)計(DFT)邏輯。有些問題可能會導(dǎo)致捆綁,導(dǎo)致編譯器在編譯仿真器設(shè)計時將其刪除。
Testbench問題包括:
- 創(chuàng)建一個對Veloce友好的事務(wù)處理程序以配置ASIC
- 部署EPGM以發(fā)送和分析以太網(wǎng)數(shù)據(jù)包
- 在SystemC和C ++中創(chuàng)建模擬檢查結(jié)束
- 綜合仿真器的功能范圍
設(shè)計調(diào)試的主要功能包括:
- EPGM分析窗口
- 觸發(fā)交易器以捕獲波形
- 其他自定義觸發(fā)波形生成
硬件實現(xiàn)的斷言和它們可以生成的監(jiān)視器(這些關(guān)鍵斷言是觸發(fā)的異常,可以自動生成用于調(diào)試的波形。)
完整的波形上傳
思科與Mentor共同開發(fā)了EPGM,這是一種用于聯(lián)網(wǎng)ASIC的虛擬解決方案,為期數(shù)年。它支持多核模型并擴展性能。它具有基于TCL的界面,可以相當快速地編寫復(fù)雜的測試用例,并具有預(yù)置的觸發(fā)器來捕獲波形。可變端口組是最近增加的一種超級端口模式,它允許單個構(gòu)建支持多種端口模式,而不是針對芯片的可能配置進行多次構(gòu)建。
在調(diào)試分析方面,Cisco獲取每流統(tǒng)計信息,例如帶寬/等待時間/總幀數(shù),所有錯誤-不按順序,CRC和前導(dǎo)錯誤-由EPGM捕獲并報告。此外,該小組在ASIC內(nèi)實現(xiàn)了自定義檢查程序和費率監(jiān)視器。
關(guān)于加速的結(jié)果可能會有所不同,具體取決于ASIC和應(yīng)用程序的大小。在前門中,通過仿真進行初始化大約需要6,000分鐘。在仿真中,該小組將時間縮短到30分鐘–在這些復(fù)雜的ASIC上進行了數(shù)以萬計的前門寫操作。通過使用Mentor的入站流進行新的優(yōu)化流程,Malik的團隊將其縮減到不到五分鐘的時間,而前門初始化只需幾分鐘。僅使用模擬,該過程通常需要幾天的時間。
借助給定配置的運行時性能,Cisco可以在仿真中每分鐘處理40個數(shù)據(jù)包,而在仿真中則可以每分鐘處理60萬個數(shù)據(jù)包。比仿真高15,000倍!
馬利克指出,所描述的方法不是專有的。他說:“這是我們對Mentor Strato解決方案所提供功能的實現(xiàn)?!?/p>
現(xiàn)在,Malik和他的團隊是經(jīng)驗豐富的仿真用戶,他們計劃將其用于其他驗證任務(wù)。硅前軟件開發(fā),多芯片系統(tǒng)驗證,硅就緒性和硅前功率分析是您關(guān)注的幾個領(lǐng)域。例如,在進行硅前軟件開發(fā)期間,他們可以啟動控制平面OS,并在磁帶輸出之前在實際的ASIC上運行應(yīng)用程序。該領(lǐng)域是有益的,尤其是對于診斷和系統(tǒng)軟件團隊而言。
Malik的團隊也希望在軟件開發(fā)領(lǐng)域進行投資,以證明其在仿真方面所做的努力是合理的。對于Malik及其團隊而言,在磁帶發(fā)布之前開發(fā)和驗證診斷軟件非常重要。使用實際系統(tǒng)軟件的新驗證功能也需要在流片之前在硬件中進行驗證。診斷,內(nèi)核和應(yīng)用程序軟件團隊現(xiàn)在可以開始調(diào)試,并在仿真平臺上迅速提高速度。
多芯片驗證仍然是另一個領(lǐng)域。思科的系統(tǒng)很復(fù)雜–模塊化系統(tǒng)具有管理卡和帶有多個ASIC相互通信的線卡。這些都是可擴展的系統(tǒng),嘗試在仿真中驗證它們是一個挑戰(zhàn)。
硅長大和準備就緒是另一種可能的應(yīng)用。當芯片返回時,該小組將進行測試和ASIC認證以進行芯片驗證。當芯片回到實驗室時,仿真將為您提供領(lǐng)先優(yōu)勢。硅前功率分析,Mentor支持的領(lǐng)域以及Veloce用戶Cisco的領(lǐng)域正在積極調(diào)查中。
Malik已經(jīng)為思科的驗證流程展望了未來,該流程將統(tǒng)一用于回歸和覆蓋范圍分析。這種流程需要對標準功能覆蓋流程進行一些更改,在這些功能中,需要在設(shè)計內(nèi)部合成和映射覆蓋范圍。功率分析是一個正在積極研究的領(lǐng)域,高級趨勢和分析功能也正在將其納入流程。當然,為了提高性能,正在對流程進行逐步改進。
總而言之,Malik保持的仿真幫助思科設(shè)計驗證小組達到了確定其ASIC所需的高度信心。使軟件準備好用于硅啟動是一個很大的好處。仿真通常有助于將產(chǎn)品推向市場的時間左移。
Malik總結(jié)說,仿真是整體驗證策略的重要補充??焖賳樱墒斓木幾g和全面的可見性是關(guān)鍵。盡管正在開發(fā)出色的技術(shù),但沒有什么可以像仿真那樣提供完整的可見性和完整的調(diào)試的。
Lauro Rizzatti博士是硬件仿真方面的驗證顧問和行業(yè)專家。
編輯:hfy
-
FPGA
+關(guān)注
關(guān)注
1621文章
21517瀏覽量
599310 -
asic
+關(guān)注
關(guān)注
34文章
1176瀏覽量
120010 -
仿真器
+關(guān)注
關(guān)注
14文章
1009瀏覽量
83456
發(fā)布評論請先 登錄
相關(guān)推薦
評論