當(dāng)前位置:首頁 > EDA > 電子設(shè)計自動化
[導(dǎo)讀]本文介紹了目前國外各大芯片設(shè)計公司所采用的最新的驗證技術(shù)——基于e語言的自動驗證系統(tǒng)。

驗證技術(shù)的發(fā)展

    在目前的集成電路設(shè)計中,芯片的規(guī)模和復(fù)雜程度正呈指數(shù)增加,為保證所設(shè)計芯片功能的正確性,需要花費(fèi)比以往更多的時間和人力,困難度大幅增加。而且,目前的功能驗證能力已經(jīng)遠(yuǎn)遠(yuǎn)落后于設(shè)計能力,功能驗證正成為大規(guī)模芯片設(shè)計的瓶頸。設(shè)計人員通常需要花費(fèi)50%~70%的時間去驗證他們的設(shè)計。雖然有形式驗證等多種驗證方法可供選擇,但是設(shè)計者還是偏好基于仿真的驗證,本文中的驗證主要是指仿真。為了降低驗證的工作量和提高驗證的效率,越來越多的設(shè)計人員采用高級驗證語言(HLV)來進(jìn)行芯片驗證。

 

驗證技術(shù)的發(fā)展主要經(jīng)歷了以下幾個階段:

1. 基于HDL語言的驗證

    用HDL語言來建立測試平臺和編寫測試向量,將激勵輸入給設(shè)計,然后檢查設(shè)計的輸出。這種方法的缺點(diǎn)是測試平臺和測試向量的建立和編寫非常復(fù)雜和困難,并且驗證所需的激勵難以達(dá)到足夠的覆蓋率。

2. 面向?qū)ο蟮尿炞C

    由于采用HDL語言進(jìn)行驗證的局限性,設(shè)計人員可以使用面向?qū)ο蟮母呒壵Z言(如C++、Python)來建立驗證環(huán)境和編寫激勵。這種驗證方法可以使設(shè)計人員從比較抽象的設(shè)計高層,對設(shè)計的輸入和輸出進(jìn)行建模,然后通過驗證環(huán)境與仿真器的通信接口,將抽象的數(shù)據(jù)模型轉(zhuǎn)換成比特形式的數(shù)據(jù)。這種驗證方法大大降低了編寫激勵的工作量,但是驗證環(huán)境的建立相對復(fù)雜,比如驗證環(huán)境與仿真器的通信接口等。

3. 隨機(jī)產(chǎn)生激勵

    由于測試激勵編寫的工作量非常大,所以設(shè)計人員逐步采用隨機(jī)產(chǎn)生測試向量的方法,以減輕編寫激勵的工作量,并提高驗證的覆蓋率。但是它的缺點(diǎn)在于,由于激勵是隨機(jī)產(chǎn)生的,所以給驗證結(jié)果的檢查帶來了一定難度,并且設(shè)計者不能根據(jù)要驗證的設(shè)計屬性來產(chǎn)生所需的激勵,即不能根據(jù)約束來產(chǎn)生激勵。

4. 驗證平臺工具

    由于驗證環(huán)境的建立過于復(fù)雜,因此出現(xiàn)了驗證平臺工具,通過這種工具可以大大減少建立驗證環(huán)境的工作量。但是這類驗證工具不能使驗證人員通過設(shè)計的抽象層來編寫激勵,而且不能實現(xiàn)設(shè)計時序行為的檢查。

 

驗證自動化系統(tǒng)

    由于上述驗證方法都或多或少具有局限性,所以需要一種完善的驗證系統(tǒng)。根據(jù)上節(jié)所述,一種完善的驗證自動化系統(tǒng)需要具備以下幾個功能:首先它能夠定義驗證計劃;然后能夠提供接口,用高級語言從抽象的層次產(chǎn)生基于約束的激勵;并且能方便高效地建立驗證環(huán)境;最后能夠完成設(shè)計時序行為的驗證和基于斷言的功能覆蓋率的驗證。

    e語言是一種功能強(qiáng)大的驗證語言,它可以很好地實現(xiàn)一個驗證自動化系統(tǒng),如圖1所示。在這個驗證系統(tǒng)中,首先可以根據(jù)驗證者的需要,用e語言來制定一些約束,根據(jù)這些約束來產(chǎn)生驗證需要的激勵。由于e可以很好地與Verilog和VHDL仿真器通信,因此可以將這些用e語言抽象描述的數(shù)據(jù)轉(zhuǎn)換成比特形式,然后加載給設(shè)計;再通過和仿真器的通信,對系統(tǒng)進(jìn)行功能仿真,并將設(shè)計的輸出收集起來,這時可以將比特形式的數(shù)據(jù)轉(zhuǎn)換回e語言的抽象描述,以便于對設(shè)計行為與預(yù)期結(jié)果進(jìn)行檢查。除此之外,e語言還可以實現(xiàn)設(shè)計時序行為的檢查。如果一個中斷必須在請求后的5個周期后發(fā)出,可以通過e語言來描述這個設(shè)計屬性,通過仿真來檢查其是否滿足。最后,e語言還可以用來進(jìn)行基于斷言的功能覆蓋率驗證。

 

基于e語言的驗證環(huán)境與仿真器的交互

    在具體介紹基于e語言的驗證環(huán)境之前,先介紹一下基于e語言的驗證環(huán)境與仿真器的通信機(jī)理。目前,Cadence公司的工具Specman Elite支持用e語言來建立驗證自動化系統(tǒng),Specman Elite提供可配置、可再使用和可擴(kuò)展的驗證組件,這些組件被稱為eVC。eVC采用高級驗證語言e編寫,能夠產(chǎn)生足夠多的測試激勵訊號,并能對設(shè)計行為與預(yù)期結(jié)果進(jìn)行檢查確認(rèn)。eVC可以極大地縮短驗證時間,提高產(chǎn)品品質(zhì)。所以本文將以Specman為例來介紹基于e語言的驗證環(huán)境與仿真器是如何協(xié)同工作的。

    Specman和仿真器在仿真的過程中是兩個獨(dú)立并行的進(jìn)程,它們通過通信接口(stubs文件)來進(jìn)行通信,其結(jié)構(gòu)如圖2所示。

仿真環(huán)境包含以下各組成部分:

Specman:整個驗證環(huán)境是用e語言實現(xiàn)的,其中包括約束、激勵產(chǎn)生、驅(qū)動、檢查、覆蓋率等,所有的e文件都由Specman編譯和仿真。

仿真器:Verilog或VHDL仿真器,它通過stubs文件與Specman進(jìn)行通信。
外界庫:仿真用到的一些模型可能是基于C語言的,e語言可以很好地導(dǎo)入這些模型來進(jìn)行仿真。

設(shè)計:基于Verilog或VHDL的設(shè)計。

仿真文件:在仿真中可能用到的一些外部模型,如總線功能模型等。
頂層:包括設(shè)計和各種模型的例化和一些驅(qū)動輸入或收集輸出的寄存器。
Stubs文件:Specman讀入所有的e文件,然后用一個命令來生成所需要的Stubs文件,這個文件在仿真過程中是由仿真器編譯和仿真的。

基于e語言的驗證環(huán)境

    基于e語言的驗證環(huán)境包括許多組成部分,其基本結(jié)構(gòu)如圖3所示。

    其中數(shù)據(jù)對象代表固定格式的測試向量,如數(shù)據(jù)包、視頻中的一幀數(shù)據(jù),或CPU的一種指令。激勵產(chǎn)生會對數(shù)據(jù)對象添加一定的約束,隨機(jī)產(chǎn)生基于約束的激勵。輸入驅(qū)動中包括一個輸入程序,負(fù)責(zé)將數(shù)據(jù)輸入給設(shè)計,根據(jù)設(shè)計的不同,有可能對設(shè)計進(jìn)行重復(fù)多次的輸入。輸出采集中包括一個采集設(shè)計輸出的程序,并將采集到的數(shù)據(jù)轉(zhuǎn)換成數(shù)據(jù)對象定義的形式,然后送到數(shù)據(jù)檢查模塊進(jìn)行檢查。數(shù)據(jù)檢查部分產(chǎn)生所需要的數(shù)據(jù)和存儲收集到的數(shù)據(jù)的程序,并完成數(shù)據(jù)檢查。協(xié)議檢查通過定義一些時序上的斷言來監(jiān)控設(shè)計的協(xié)議,如果違反了協(xié)議將產(chǎn)生警告或錯誤提示。覆蓋率分析會分析設(shè)計中的斷言,給出設(shè)計的功能覆蓋率報告。

    Specman提供約束解釋器和通信信道來進(jìn)行e語言的仿真,界面對象(interface object)負(fù)責(zé)將數(shù)據(jù)對象驅(qū)動給設(shè)計的界面,系統(tǒng)對象(system object)包括各種不同的界面對象。界面對象和系統(tǒng)對象根據(jù)每個設(shè)計來編寫,如對CPU進(jìn)行驗證時,根據(jù)設(shè)計定義輸入給CPU的數(shù)據(jù)對象(指令格式等),因此驗證環(huán)境不需要隨著設(shè)計的改變而改變,所以一個設(shè)計的環(huán)境是可以重用的。不同的測試激勵通過約束數(shù)據(jù)對象、界面對象、系統(tǒng)對象來產(chǎn)生。驗證環(huán)境的劃分框圖如圖4所示。


 

    基于e語言的驗證環(huán)境的文件層次結(jié)構(gòu)如圖5所示,其最頂層文件名字固定為sys,在sys下例化所有的模塊。

結(jié)語

    本文介紹了目前國外各大芯片設(shè)計公司所采用的最新的驗證技術(shù)——基于e語言的自動驗證系統(tǒng)。采用e語言建立驗證環(huán)境、編寫測試激勵,可大大降低芯片驗證人員的工作量,提高驗證效率。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉