<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > VMM驗(yàn)證方法在AXI總線系統(tǒng)中的實(shí)現(xiàn)

          VMM驗(yàn)證方法在AXI總線系統(tǒng)中的實(shí)現(xiàn)

          作者: 時(shí)間:2012-06-29 來源:網(wǎng)絡(luò) 收藏

          后文的敘述都將圍繞著這幾方面展開。

          -VIP的集成

          如前所述,方法具備抽象分層結(jié)構(gòu)、有九個(gè)執(zhí)行步驟等優(yōu)點(diǎn),但它只是一個(gè)通用的方法,能否符合前邊提出的四點(diǎn)判定標(biāo)準(zhǔn)還成問題。舉例來說,計(jì)算所的主設(shè)備(master)仿真模型是以Verilog編寫的,無法在短期內(nèi)實(shí)現(xiàn)與平臺(tái)的互聯(lián);完整的協(xié)議檢測(cè),對(duì)本所第一顆基于該總線的片上系統(tǒng)顯得尤為重要;由于時(shí)間倉促,AXI仿真模型還有待修正。這些都是項(xiàng)目進(jìn)程中無法回避的問題,而方法本身又沒有提供解決方法。

          1. 商用驗(yàn)證模型

          AXI驗(yàn)證模型(VIP)是Synopsys公司的商用模型,可配置、數(shù)據(jù)交易嚴(yán)格符合AXI協(xié)議,具備完整的協(xié)議檢查功能。最重要的一點(diǎn)是,AXI-VIP提供與VMM平臺(tái)的接口。實(shí)際上,這個(gè)VIP本身就實(shí)現(xiàn)了VMM平臺(tái)的驅(qū)動(dòng)部件(Driver)加監(jiān)控部件(Monitor)的功能:向下層是與DUT通過端口相聯(lián),向上層則有基于vmm_channel/vmm_xactor_callbacks的數(shù)據(jù)傳輸管道。如圖2所示,除Test、Generator和Scoreboard之外的部分,AXI-VIP都已實(shí)現(xiàn)。這個(gè)商用模型對(duì)開發(fā)進(jìn)度的實(shí)際貢獻(xiàn)將取決于工程師能否快速上手。換言之,VIP的易用性決定了它的價(jià)值。

          有鑒于此,Synopsys公司提供一個(gè)基于AXI-VIP的VMM范例。其中,DUT部分以AXI Bus VIP替代,TB部分實(shí)現(xiàn)了如圖2所示的分層架構(gòu)。工程師作為用戶只需做如下修改,便能得到包含有簡(jiǎn)單數(shù)據(jù)交易、自檢測(cè)、覆蓋率統(tǒng)計(jì)等功能的驗(yàn)證平臺(tái):替換DUT,并修改接口信號(hào)名;改寫測(cè)試?yán)齮est_1的約束條件,得到自己的測(cè)試?yán)辉黾訉?duì)DUT的配置操作。上述工作于一天內(nèi)完成,仿真輸出結(jié)果有波形文件、Log文件及覆蓋率報(bào)告。

          2. AXI-VIP支持的類

          AXI- VIP定義的類都有相同的前綴名“dw_vip_axi”,它們構(gòu)成vmm_env當(dāng)中的大部分:

          a. dw_vip_axi_master_rvm;

          b. dw_vip_axi_slave_rvm;

          c. dw_vip_axi_monitor_rvm;

          d. dw_vip_axi_master_transaction_scenario_gen;

          e. dw_vip_axi_port_model_configuration;

          f. dw_vip_axi_system_model_configuration;

          g. dw_vip_axi_master_transaction_channel;

          h. dw_vip_axi_slave_resp_transaction_channel;

          i. dw_vip_axi_monitor_transaction_channel。

          這些類將例化產(chǎn)生主設(shè)備部件、從設(shè)備部件、監(jiān)控部件、配置對(duì)象、數(shù)據(jù)對(duì)象和數(shù)據(jù)傳輸管道等等。它們有著各自的變量、函數(shù),提供了豐富的控制功能,涵蓋所有類型的操作。

          功能的完備并未損害AXI-VIP的易用性,這點(diǎn)在項(xiàng)目中得到了印證。通過三天的培訓(xùn)與實(shí)做,工程師們能夠通過修改約束條件來隨機(jī)產(chǎn)生測(cè)試向量,按照芯片測(cè)試規(guī)范改寫自動(dòng)比對(duì)機(jī)制,添加功能覆蓋點(diǎn),并利用AXI監(jiān)控部件自動(dòng)檢查協(xié)議并收集與AXI協(xié)議相關(guān)的覆蓋率。

          這當(dāng)中,按照芯片測(cè)試規(guī)范改寫“自動(dòng)比對(duì)機(jī)制”沒有現(xiàn)成的VMM基本類可用。我們是從Synopsys提供的簡(jiǎn)單范例入手,利用AXI-VIP提供的回調(diào)函數(shù)集,獲取數(shù)據(jù)交易信息,并實(shí)時(shí)地比對(duì)流出與流入數(shù)據(jù)。如同其他的驗(yàn)證系統(tǒng),這部分工作是最多樣化,也是最為核心的任務(wù),所以占用三天當(dāng)中的大部分時(shí)間,也在意料之中。

          基于VMM的Scoreboard實(shí)現(xiàn)

          本所驗(yàn)證組以VMM方法為指導(dǎo),利用AXI-VIP提供的回調(diào)函數(shù)集,快速建立了該測(cè)試平臺(tái)的自動(dòng)比對(duì)機(jī)制。盡管還不能最終應(yīng)用在十幾個(gè)主/從設(shè)備的全系統(tǒng)中,但是,由于這部分代碼封裝在自定義的Scoreboard類當(dāng)中,可重用、可擴(kuò)展,并且符合VMM平臺(tái)的接口要求,可以很方便地合入將來的系統(tǒng)中。該Scoreboard類的核心部分SystemVerilog代碼由Synopsys提供,如圖3所示。

          33.jpg

          圖3:自檢測(cè)單元的結(jié)構(gòu)框圖。

          左端是主設(shè)備數(shù)據(jù)緩沖及比對(duì),右端為從設(shè)備數(shù)據(jù)緩沖及比對(duì),中間的1到N和N到1轉(zhuǎn)換,實(shí)現(xiàn)數(shù)據(jù)比對(duì)任務(wù)的分配。N個(gè)從設(shè)備的比對(duì)代碼,都擴(kuò)展自相同的類。正因?yàn)檫@種設(shè)計(jì)它是可無限擴(kuò)展的?;诒卷?xiàng)目只有兩個(gè)主設(shè)備的特點(diǎn),我們對(duì)左邊的結(jié)構(gòu)做了大幅度簡(jiǎn)化。

          核心的比對(duì)部分之外,關(guān)鍵任務(wù)就是實(shí)時(shí)地獲取各主/從設(shè)備的數(shù)據(jù)流。這在AXI-VIP(也包括Synopsys公司的其他VIP)中,已經(jīng)有現(xiàn)成函數(shù)可用。本所工程師在兩天時(shí)間內(nèi)就學(xué)會(huì)使用,并結(jié)合實(shí)際完成了代碼的開發(fā)與調(diào)試。

          AXI-VIP包括主設(shè)備、從設(shè)備與監(jiān)控設(shè)備,它們?cè)跀?shù)據(jù)交易的幾個(gè)關(guān)鍵點(diǎn)將得到一次函數(shù)回調(diào)的機(jī)會(huì),如表1所示。

          1.jpg

          表1:回調(diào)函數(shù)與相應(yīng)管道的對(duì)應(yīng)關(guān)系表。

          依據(jù)這些回調(diào)函數(shù)對(duì)應(yīng)的數(shù)據(jù)交易階段,我們選取主設(shè)備的post_input_channel_get,從設(shè)備的pre_output_channel_put兩函數(shù)來獲取交易數(shù)據(jù)。

          其它函數(shù)也可以用來獲取數(shù)據(jù),如監(jiān)控設(shè)備的pre_activity_channel_put,就可以得到輸入、輸出兩方面的數(shù)據(jù)。具體請(qǐng)參看AXI-VIP使用手冊(cè)。另外,VMM回調(diào)函數(shù)還可以用于控制驗(yàn)證流程、插入錯(cuò)誤數(shù)據(jù)等等,限于篇幅,本文不再展開。

          本文小結(jié)

          因?yàn)樾酒?yàn)證工作的趨勢(shì)是需要更多的軟件知識(shí)和技巧。本文以中科院計(jì)算所的SoC項(xiàng)目為例,講解了如何充分利用專業(yè)的驗(yàn)證語言基本庫和商用的仿真模型快速建立測(cè)試平臺(tái)。文中詳細(xì)介紹了各部件的使用和AXI-VIP對(duì)象如何納入VMM框架,以及這樣做的實(shí)際意義。

          VMM方法基于SystemVerilog語言,提供了完整的函數(shù)庫,而作為補(bǔ)充的AXI-VIP,功能完備且易用性強(qiáng)。基于這一新方法,本所驗(yàn)證組工程師在五個(gè)工作日內(nèi)快速建立了一套可方便擴(kuò)展的測(cè)試平臺(tái)。建立新系統(tǒng)的過程中,發(fā)現(xiàn)一個(gè)設(shè)計(jì)的漏洞,充分體現(xiàn)了該方法的高效性。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();