驗證FPGA設計:模擬,仿真,還是碰運氣?
優(yōu)點(diǎn)和缺點(diǎn)
多數人討論驗證流程時(shí),首先會(huì )比較模擬和在FPGA內驗證的優(yōu)劣。盡管有經(jīng)驗的讀者可能會(huì )覺(jué)得乏味,本文也還是采用類(lèi)似的模式。
模擬的一個(gè)很大的優(yōu)點(diǎn)自然是它的訪(fǎng)問(wèn)能力。該方法可以以時(shí)鐘周期分辨率觀(guān)察RTL (寄存器傳輸層)設計中任何信號。只要有必要,對設計狀態(tài)的控制可以達到任何水平。達到可觀(guān)性和可控性的唯一限制就是對RTL的了解程度和對模擬環(huán)境的掌握程度。你可以在有限的設計領(lǐng)域交互式地工作,也可以構建運行好幾天的大型試驗。構建的模擬項目運行相對較快,所以可以快速地對很多東西進(jìn)行試驗。
模擬的另一優(yōu)點(diǎn)是現在的多數模擬環(huán)境都可以很好地使用OVL(開(kāi)放驗證庫,Open Verification Library)或SystemVerilog斷言。經(jīng)??梢哉业街苯拥姆椒▽⑦@些斷言輸入到模擬環(huán)境中。隨著(zhù)基于斷言的驗證日益普遍,這點(diǎn)就越發(fā)重要。此外,通過(guò)模擬環(huán)境還可以將設計的激勵和測量部分與設計本身分割開(kāi)。這看起來(lái)似乎不是主要問(wèn)題,但是,在密集驗證工作中,這一特點(diǎn)對于保證設計的完整性會(huì )很重要。
但是,模擬比較慢?!叭绻阍谧鲆粋€(gè)有2百萬(wàn)或3百萬(wàn)個(gè)門(mén)的塊,模擬非常好,” 硬件仿真設備廠(chǎng)商Eve的營(yíng)銷(xiāo)副總裁Lauro Rizzatti說(shuō)?!暗?,在有多個(gè)塊的層次,模擬會(huì )變慢,最終達到完全不可用的程度?!?
設計的復雜度并不是唯一的限制因素。Altera公司技術(shù)營(yíng)銷(xiāo)高級經(jīng)理Phil Simpson指出,如果設計本身就需要大量數據來(lái)進(jìn)行驗證,即使在塊的級別模擬也會(huì )變得不實(shí)用。他以視頻編解器為例說(shuō)明這個(gè)問(wèn)題。在視頻編解器中內部狀態(tài)非常之多,所以可能只有在15分鐘的視頻短片中間才能表露出問(wèn)題。但是,對15分鐘高清視頻壓縮和解壓的模擬會(huì )非常費勁。
評論