CADENCE硬件仿真器在Ethernet交換芯片驗證中的應(yīng)用
隨著網(wǎng)絡(luò)通信的高速發(fā)展,集成多種內(nèi)容的以太網(wǎng)交換芯片在網(wǎng)絡(luò)通信中起著越來越重要的作用,如何加快以太網(wǎng)交換芯片的開發(fā)速度,縮短驗證的周期,是我們面臨的重要課題,為此,我們選用了CADENCE硬件仿真器Palladium作為驗證加速平臺。
本文引用地址:http://cafeforensic.com/article/79028.htm1 概述
隨著網(wǎng)絡(luò)通信的高速發(fā)展,集成多種內(nèi)容的以太網(wǎng)交換芯片在網(wǎng)絡(luò)通信中起著越來越重要的作用,如何加快以太網(wǎng)交換芯片的開發(fā)速度,縮短驗證的周期,是我們面臨的重要課題,為此,我們選用了Cadence硬件仿真器Palladium作為驗證加速平臺。
Cadence硬件仿真器Palladium的邏輯硬件電路由高速處理器陣列所構(gòu)成,芯片設(shè)計被映射成大量并行計算引擎,上萬個處理器以極快的速度并發(fā)仿真,極大地加速了仿真速度,成為IC驗證業(yè)界一種新型高效的驗證工具。
2 以太網(wǎng)交換芯片ZX27x1在以太交換網(wǎng)中的應(yīng)用
圖1 ZX27x1在以太交換網(wǎng)中的應(yīng)用
如圖1所示,我們設(shè)計的芯片為ZX27x1,它以10/100M的速率通過MII接口和PHY層相連;另外它還有一個千兆上聯(lián)口,通過公司的內(nèi)部總線Zlink和上位芯片相連,從而組成一個數(shù)據(jù)交換系統(tǒng)。
3 系統(tǒng)驗證分析
為了有效驗證ZX27x1芯片功能,我們抽象圖1系統(tǒng)為圖2所示的驗證模型。
圖2 ZX27x1驗證模型
分析一下圖2中的結(jié)構(gòu),待驗證芯片為ZX27x1,該芯片對外有兩個接口,MII接口,這是標(biāo)準(zhǔn)的以太網(wǎng)接口;Zlink接口,這是公司內(nèi)部的接口,為以太網(wǎng)交換芯片套片所用,該接口可支持多個ZX27X1芯片之間的數(shù)據(jù)和信息交換,并且允許cpu通過該接口對芯片進(jìn)行隨機(jī)訪問。
為了驗證該芯片zx27x1的功能,我們需要建立MII的接口模型和Zlink接口模型。如何實現(xiàn)這兩種接口模型呢?很自然的想到用軟件或硬件或軟硬件結(jié)合的方式來實現(xiàn),這樣就派生多種驗證方法(模式),見表1。模式1是我們最常用的純軟件仿真的方法,其驗證速度很慢。其它3種模式都是基于硬件仿真器 Palladium的硬件仿真加速方法。下面對這三種硬件加速方法的實現(xiàn)分別加以介紹。
表1 四種驗證模式列表
SA模式(Simulation Acceleration mode),利用Palladium加速仿真性能,可綜合的DUT設(shè)計(包括芯片內(nèi)存設(shè)計)被移到仿真器中,行為級的不可綜合的測試激勵仍然留在工作站上在ncsim中運行。雖然硬件仿真器中DUT運行非??欤芟抻诓豢删C合的測試激勵所占的比例和palladium與ncsim交互通訊的頻度,整個 performance的提高比較有限,通常在數(shù)倍至數(shù)十倍之間。
ICE模式(In-Circuit Emulation mode),可以在仿真器內(nèi)自動生成一個與DUT邏輯功能完全等價的虛擬芯片(就好像你的芯片已生產(chǎn)出來了),把它連接到的目標(biāo)應(yīng)用系統(tǒng)中,在真實的應(yīng)用環(huán)境中驗證你的芯片,即在系統(tǒng)上下文環(huán)境中驗證整個設(shè)計,故可以大大提高功能驗證完整性和有效性。其驗證速度可達(dá)數(shù)百千赫茲。同時,由于有了現(xiàn)成的應(yīng)用平臺,你還可以在投片前即開始開發(fā)和調(diào)試軟件,進(jìn)行軟硬件聯(lián)合驗證。
SAT模式(Simulation Acceleration with Target mode),綜合了SA和ICE兩種仿真模式。DUT放在palladium中,一部分testbench由與palladium相連的真實的目標(biāo)系統(tǒng)產(chǎn)生,另一部分無法從真實系統(tǒng)中獲得的testbench仍由驗證工程師用代碼編寫在ncsim中實現(xiàn)。故它綜合了SA和ICE兩種模式的優(yōu)點,既能提高驗證速度,也能提高驗證覆蓋率。
4 硬件加速驗證系統(tǒng)的搭建
如何在真實應(yīng)用環(huán)境中快速全面的驗證芯片邏輯功能正確性是該芯片驗證的難點。
解決的方式是采用ICE模式和SAT模式驗證。雖然硬件仿真器比軟件仿真速度有上千倍的提高,可達(dá)數(shù)百千赫茲,但和真實環(huán)境下的芯片運行的速度相比,還有上千倍的差距,因此要將硬件仿真器所仿真的芯片放在真實(live)的環(huán)境中,必須對真實環(huán)境到硬件仿真器的信號降速處理,相反從硬件仿真器到真實環(huán)境中的信號需做加速處理。在此,我們采用Cadence公司的Ethernet Speedbridge速度匹配橋(以太網(wǎng)橋)來完成這種轉(zhuǎn)換。
圖3是zx27x1的ICE模式驗證模型,圖4是zx27x1的SAT模式驗證模型。
圖3 ICE模式驗證模型 圖4 SAT模式驗證模型
由 于人力資源和時間的限制,與Zlink接口相關(guān)的目標(biāo)系統(tǒng)的降速實現(xiàn)存在一定的困難,故在ICE模式下,我們將Zlink接口屏蔽掉,只驗證MII接口功能。在驗證MII接口時,我們采用業(yè)界公認(rèn)的Smartbits儀器作為MII接口的激勵源和接收端,利用其提供的Smartwindow軟件自動產(chǎn)生各種各樣的以太幀發(fā)送到palladium中的ZX27x1芯片,并自動分析ZX27x1芯片轉(zhuǎn)發(fā)出的以太幀的正確性。圖3是zx27x1的ICE模式驗證模型,
但是,僅僅MII接口的驗證是不夠的。為了驗證整個芯片的功能,我們搭建了SAT驗證環(huán)境。同ICE模式一樣,MII接口的驗證仍然是通過 Smartbits驗證,Zlink接口的驗證則是由驗證工程師用verilog語言編寫testbench在ncsim中實現(xiàn)。圖4是zx27x1的 SAT模式驗證模型。
5 實驗結(jié)果
表2 四種工作模式實驗結(jié)果
試驗結(jié)果見表2,其中,ICE模式可長時間連續(xù)驗證,直到Smartbits停止發(fā)包,目標(biāo)系統(tǒng)關(guān)閉。因此,運行時間未測。
由于palladium具有FullVision功能,設(shè)計的內(nèi)部節(jié)點全部可見,并且具有ncsim類似的force/release功能,故調(diào)試能力也很強(qiáng)。
雖然跟ncsim比,基于硬件的驗證模式編譯速度較慢,但由于palladium是基于cpu的硬件仿真器,其編譯速度相對其他基于fpga的硬件仿真器的編譯速度快的很多。
另外,在ICE模式下,除了接Smarbits的驗證方法外,我們還將palladium中的DUT通過以太網(wǎng)橋的RJ45接口接入公司局域網(wǎng)中,正確地實現(xiàn)了網(wǎng)絡(luò)互連。
同時,palladium系統(tǒng)支持多用戶方式,我們的SA模式,SAT模式和ICE模式同時獨立并發(fā)實現(xiàn),大大加快了驗證速度。
6 結(jié)論
通過4種驗證模式的實驗,我們建立了基于CADENCE硬件仿真器Palladium的多種驗證平臺,得出這樣的經(jīng)驗,對于大規(guī)模芯片和功能復(fù)雜芯片的驗證:
a. 系統(tǒng)設(shè)計階段,要全盤考慮驗證計劃,特別是硬件加速驗證中的ICE環(huán)境。因為系統(tǒng)驗證時期采用ICE驗證可大大提高驗證效率和覆蓋率。
b. 當(dāng)用Ncsim純軟件驗證調(diào)試整個系統(tǒng)時,驗證速度很慢且需要很長時間才能找出新bug時,要開始采用SA,ICE和SAT等基于硬件大驗證加速模式;
c. 硬件加速模式的選擇:
1) 當(dāng)芯片的目標(biāo)應(yīng)用系統(tǒng)可以降頻時,應(yīng)首選采用ICE模式;
2) 當(dāng)目標(biāo)系統(tǒng)降頻太困難無法實現(xiàn)時,應(yīng)盡量編寫可綜合的testbench,采用STB驗證模式以獲得與ICE相同的驗證速度。
3) 當(dāng)編寫可綜合的testbench也無法做到時,采用SA或SAT方式獲得驗證加速。
試驗證明,基于Cadence硬件仿真器Palladium的高效驗證平臺的建立,可以大大加快功能驗證速度,提高功能測試覆蓋率,縮短IC研發(fā)周期,加快產(chǎn)品投放市場的進(jìn)程,提高芯片的一次性投片成功率。
評論