国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于VMM方法的SOC集成驗(yàn)證

2011-01-26 08:09:18羅勝欽
電子與封裝 2011年1期
關(guān)鍵詞:測試用例總線芯片

李 磊,羅勝欽

(同濟(jì)大學(xué)電子科學(xué)與技術(shù)系,上海 201804)

1 引言

隨著集成電路設(shè)計(jì)向超大規(guī)模發(fā)展,芯片驗(yàn)證工作的難度在不斷增大,驗(yàn)證的工作量已經(jīng)占到整個SOC研發(fā)的70%左右,芯片驗(yàn)證直接影響到芯片上市的時間,因此提高芯片驗(yàn)證的效率已變得至關(guān)重要[1]。

VMM是synopsys公司推出的基于system verilog的一套驗(yàn)證方法學(xué),繼承于RVM。利用VMM的層次化、隨機(jī)約束等特點(diǎn),能有效提升現(xiàn)有的驗(yàn)證方法,快速搭建具有目標(biāo)模塊的驗(yàn)證環(huán)境[2]。

2 SOC集成驗(yàn)證

SOC驗(yàn)證可以分為集成驗(yàn)證IV(Integrated Verification)和系統(tǒng)驗(yàn)證SV(System Verification)。本文主要介紹SOC集成驗(yàn)證,采用VMM驗(yàn)證方法學(xué)和DesignWare VIP,Master例化為VIP Interface模型,通過約束VIP Transaction參數(shù)產(chǎn)生各種定向激勵;通過約束Scenario Class產(chǎn)生各種隨機(jī)激勵。

2.1 集成驗(yàn)證的功能

集成驗(yàn)證需要完成的任務(wù)包括:

(1)驗(yàn)證各功能模塊是否正常連接;

(2)驗(yàn)證各模塊對片外IO是否連接正常;

(3)驗(yàn)證各模塊間的互聯(lián)是否正常,例如DMA請求信號和VIC請求信號;

(4)驗(yàn)證各層總線的地址映射是否正常;

(5)Memory地址遍歷和隨機(jī)測試;

(6)多Master沖突檢測等。

集成驗(yàn)證是基于時鐘周期的測試,能夠基于時序非常方便地發(fā)送各種不同的操作,可以彌補(bǔ)系統(tǒng)驗(yàn)證的不足;同時由于不需要啟動系統(tǒng),集成驗(yàn)證具有運(yùn)行速度快的特點(diǎn)。集成驗(yàn)證在芯片驗(yàn)證中極其重要。

2.2 集成驗(yàn)證平臺

在SOC集成驗(yàn)證中需要將每個Master替換為VIP Interface模型,通過例化的模型訪問所有的IP寄存器和Memory地址空間,驗(yàn)證架構(gòu)互連的正確性。項(xiàng)目的集成驗(yàn)證平臺采用VMM方法。圖1顯示了VMM層次化驗(yàn)證平臺的結(jié)構(gòu)[3]。

圖1 VMM層次化驗(yàn)證平臺結(jié)構(gòu)圖

VMM驗(yàn)證平臺有多個層組成,主要包括圖1中的測試層、場景層、功能層、命令層和信號層,反映了設(shè)計(jì)所處理數(shù)據(jù)的抽象層次。驗(yàn)證平臺能滿足不同測試用例的各種要求,測試用例的編寫位于該驗(yàn)證平臺的頂層,每個層次都能給上層提供一系列的服務(wù),并通過抽象將低層次的細(xì)節(jié)隱藏起來[4]。

3 集成驗(yàn)證環(huán)境

3.1 可歸一化的集成驗(yàn)證環(huán)境

集成驗(yàn)證是否高效,跟集成驗(yàn)證環(huán)境的優(yōu)劣密切相關(guān)。其中,集成驗(yàn)證環(huán)境的歸一化對集成驗(yàn)證工作具有重要意義。

集成驗(yàn)證環(huán)境的搭建是需要花費(fèi)很多人力時間才能完成的。在追求芯片快速上市的今天,一個項(xiàng)目搭建一個全新的驗(yàn)證環(huán)境已經(jīng)無法讓人接受[5]。集成驗(yàn)證環(huán)境的歸一化主要體現(xiàn)在一些公有目錄和文件的存放具有統(tǒng)一性,可被其他項(xiàng)目重用,從而避免一個項(xiàng)目一個驗(yàn)證環(huán)境的情況,對于新的項(xiàng)目只需修改一小部分文件即可。

本項(xiàng)目采用可歸一化的驗(yàn)證環(huán)境,在驗(yàn)證環(huán)境搭建中減少了很多工作量。

可歸一化SOC驗(yàn)證環(huán)境文件的存放如下:

|—Verification // 驗(yàn)證的總目錄

|—common // 系統(tǒng)驗(yàn)證和集成驗(yàn)證公共目錄

|—bin // 公共腳本

|—testbench //存放公共的測試文件

|—vfilelists //存放所有的RTL代碼

|—pmap //存放IP的pmap文件

|—mem-model //存放存儲器模型

……

|—iv // 集成驗(yàn)證目錄

|—env //驗(yàn)證環(huán)境文件的存放

|—sim //仿真開始目錄

|—log //仿真log文件夾|—wave //仿真波形文件夾

|—output //編譯仿真過程文件

……

|—tc //驗(yàn)證用例目錄

|—reg //寄存器測試用例目錄

|—mem //Memory測試用例目錄

……

|—script //腳本文件目錄

|—vmt_bfm //Vmtmaster的bfm目錄

……

其中,env文件下存放著VMM驗(yàn)證代碼模板。Ahb_env.sv主要用于把各個Master、slave和他們各自的數(shù)據(jù)通道連接起來,起到貫穿所有組件的作用。Ahb_gen.sv用于產(chǎn)生各種激勵,通過約束Vip transaction參數(shù)來定義上層激勵函數(shù)。Ahb_defines.sv包含系統(tǒng)使用的宏定義。

對于架構(gòu)、功能等不同的片上系統(tǒng),SOC驗(yàn)證環(huán)境的修改不可避免,但是有了可歸一化的SOC驗(yàn)證環(huán)境,其繼承性就大大加強(qiáng)。根據(jù)歸一化驗(yàn)證平臺,就可快速搭建一個新項(xiàng)目的SOC驗(yàn)證環(huán)境。

3.2 基于VMM和DW VIP的集成驗(yàn)證環(huán)境

AMBA總線是ARM公司推出的SOC總線,應(yīng)用廣泛。本項(xiàng)目也是基于AMBA總線架構(gòu),采用ARM9處理器,SOC的集成驗(yàn)證環(huán)境是基于VMM和DesignWare VIP。

V M M提供了用于實(shí)現(xiàn)驗(yàn)證環(huán)境的基本類vmm_env,任何驗(yàn)證環(huán)境都從該類繼承,該類控制著整個仿真的進(jìn)程,用于控制其他類的實(shí)例化,進(jìn)程啟動和結(jié)束[6]。

Vmm_env提供的基本函數(shù)和方法使得環(huán)境的搭建到仿真的完成只需9步操作。這9步操作均在ahb_env.sv中定義和配置,分別是:env.gen_cfg,env.build,env.reset_dut,env.cfg_dut,env.start,env.wait_for_end,env.stop,env.cleanup,env.report。

在這9步操作中,我們可以根據(jù)具體驗(yàn)證的要求和任務(wù),在 env.build、env.start、env.wait_for_end、env.stop這幾個步驟中進(jìn)行設(shè)定。圖2是SOC系統(tǒng)芯片結(jié)構(gòu)簡圖。

圖2 SOC系統(tǒng)芯片結(jié)構(gòu)簡圖

在SOC集成驗(yàn)證中我們將每個Master替換為AHB VIP Interface模型,通過例化的模型訪問所有的IP寄存器和Memory地址空間[7]。

測試層testcase主要是驗(yàn)證用例的編寫。而VMM_SCENARIO_GEN類由宏生成,根據(jù)指定的VMM_DATA類來生成場景發(fā)生器。

本文的測試用例構(gòu)造最常用的方式是:`ARMD.write_32(`asicSYSCTRL,32’h00000010)。此語句是Master ARMD訪問系統(tǒng)控制器SYS CTRL的一個寄存器。其中,`ARMD是一個宏定義,為場景層的generator發(fā)生器的一個通道。在write_32函數(shù)中,運(yùn)用了VMM_channel類out_chan.put(item),主要作用是generator將數(shù)據(jù)包放入通向transactor的channel中。

AHB VIP模型在VMM驗(yàn)證中起著重要的作用,在VMM中實(shí)現(xiàn)的是功能層和命令層的功能。這里采用的是DW_Vip_ahb_master_rvm類,此類具有事務(wù)處理器(transacor)的功能。構(gòu)造函數(shù)為:

Function new(

string Instname,

AhbmasterPort portconnect,

dw_vip_ahb_master_configration cfg,

dw_vip_ahb_transaction_channel in_chan,

dw_vip_ahb_transaction_channel out_chan,

從in_chan輸入的transaction,經(jīng)過transactor解析后,轉(zhuǎn)換成AHB Masterport的信號。通過AHB Masterport interface和DUT交互,從而完成了從測試層到DUT接口的激勵傳輸。

從測試層到達(dá)信號層的過程很好地體現(xiàn)了VMM驗(yàn)證方法的核心。

VMM驗(yàn)證與傳統(tǒng)的功能驗(yàn)證區(qū)別在于:傳統(tǒng)的功能驗(yàn)證是在DUT的接口上直接輸入激勵,通過DUT檢查響應(yīng)。這種方法抽象級別低,在復(fù)雜的SOC中不容易定位錯誤,驗(yàn)證耗時也長;VMM驗(yàn)證如上述的過程,是抽象級別高的驗(yàn)證方法,testcase采用面向?qū)ο蟮膕ystem verilog語言,有豐富的類庫支持,能有效提高驗(yàn)證的功能覆蓋率和驗(yàn)證的效率[8]。

4 結(jié)論

在越來越高的抽象層次上進(jìn)行驗(yàn)證是驗(yàn)證方法學(xué)不斷發(fā)展的趨勢。本文以AMBA總線架構(gòu)系統(tǒng)芯片的集成驗(yàn)證為例,采用VMM和DW VIP的集成驗(yàn)證方法。驗(yàn)證環(huán)境歸一性強(qiáng),進(jìn)行簡單修改即可被新項(xiàng)目繼承,同時驗(yàn)證環(huán)境采用大量的腳本文件,自動化程度高,節(jié)省了人力資源和時間,可顯著地提高驗(yàn)證的工作效率,從而縮短整個復(fù)雜SOC的研發(fā)時間。

[1]Chris Spear. SystemVerilog for Verification[M].Springer,2006,1-18.

[2]Verification Methodology Mannual[P].Synopsys,Inc,&ARM,Inc.

[3]Janick Bergeron,Eduard Cemy,Alan Hunter等著,夏宇聞等譯. System Verilog驗(yàn)證方法學(xué)[M].北京:北京航空航天大學(xué)出版社,2007.

[4]Jinbin Hu,Xiaoguang Li.System verification based on VMM and SOPC[C].Computer Science and Information Technology (ICCSIT), 2010 3rd IEEE International Conference.2010:41-43.

[5]孫海平,丁健. 系統(tǒng)芯片驗(yàn)證方法與技術(shù)[M].北京:電子工業(yè)出版社,2005.

[6]Keaveney Martin ,McMahon Anthony,O’Keeffe Niall,et al..The development of advanced verification environments using System Verilog[C]. Signals and Systems Conference,208. (ISSC 2008). IET Irish.2008:325-330.

[7]Lu Kong,Wu-Chen Wu,Yong He,et al.. Design of SoC verification platform based on VMM methodology[C]. ASIC,2009. ASICON ’09. IEEE 8th International Conference.2009:1272-1275.

[8]Janick Bergeron.Writing Testbenches using SystemVerilog[M].Springer,2006.

猜你喜歡
測試用例總線芯片
基于SmartUnit的安全通信系統(tǒng)單元測試用例自動生成
基于PCI Express總線的xHC與FPGA的直接通信
機(jī)載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計(jì)
基于混合遺傳算法的回歸測試用例集最小化研究
芯片測試
多通道采樣芯片ADS8556在光伏并網(wǎng)中的應(yīng)用
基于依賴結(jié)構(gòu)的測試用例優(yōu)先級技術(shù)
多通道ARINC429總線檢查儀
基于EtherCAT總線的ROV控制系統(tǒng)設(shè)計(jì)
河南科技(2014年16期)2014-02-27 14:13:22
74HC164芯片的應(yīng)用
河南科技(2014年10期)2014-02-27 14:09:18
屏山县| 江陵县| 兴仁县| 延安市| 定结县| 福鼎市| 宣武区| 黑水县| 临澧县| 邯郸县| 广昌县| 错那县| 特克斯县| 汉川市| 兴业县| 思茅市| 房山区| 玛曲县| 泊头市| 扎兰屯市| 慈溪市| 漳平市| 竹溪县| 阜新市| 汽车| 惠水县| 贺州市| 达拉特旗| 达孜县| 集安市| 荣昌县| 红桥区| 新津县| 尖扎县| 宁国市| 遂溪县| 修文县| 中宁县| 民丰县| 锡林郭勒盟| 卫辉市|