基于UVM驗(yàn)證方法學(xué)的RF基帶模塊驗(yàn)證_第1頁
基于UVM驗(yàn)證方法學(xué)的RF基帶模塊驗(yàn)證_第2頁
基于UVM驗(yàn)證方法學(xué)的RF基帶模塊驗(yàn)證_第3頁
基于UVM驗(yàn)證方法學(xué)的RF基帶模塊驗(yàn)證_第4頁
基于UVM驗(yàn)證方法學(xué)的RF基帶模塊驗(yàn)證_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于UVM驗(yàn)證方法學(xué)的RF基帶模塊驗(yàn)證引言驗(yàn)證最根本的目的在于測試被測對象DUT的正確性,其最常用的方法就是給D U T施加各種不同的鼓勵,并觀測DUT的輸出結(jié)果,把此結(jié)果與期望值相比較,判斷DUT正確與否。近年來,隨著集成電路設(shè)計(jì)向超大規(guī)模開展,芯片驗(yàn)證工作變得越來越復(fù)雜和困難,根據(jù)許多業(yè)內(nèi)文獻(xiàn)報道,驗(yàn)證的工作量已經(jīng)占到整個芯片開發(fā)的70%左右,因此進(jìn)步芯片驗(yàn)證的效率已變得至關(guān)重要。UVM驗(yàn)證方法學(xué)由Accelera組織于2021年推出,它以O(shè)VMOpen Verification Methodology為核心,吸收了AVMAdvancedVerification Methodology、O

2、VM和VMMVerification MethodologyManual等諸多主流驗(yàn)證方法學(xué)的優(yōu)點(diǎn),并新增了一些新技術(shù)如Phasing等。UVM采用了最好的驗(yàn)證框架去實(shí)現(xiàn)覆蓋率驅(qū)動驗(yàn)證,其有效結(jié)合了自動測試產(chǎn)生、自檢查平臺和覆蓋率度量等特點(diǎn),能大大縮減驗(yàn)證時間。作為芯片的非接觸式通信控制部分,該RF基帶模塊采用ISO/IEC 1444 3A協(xié)議,工作頻率為13.56MHz,通信速率最高支持106kb/s,并支持7字節(jié)長的兩級抗沖突。它具有高度的數(shù)據(jù)完好性:16位CRC、奇偶校驗(yàn)、位編碼和位計(jì)數(shù)。本文將以R F基帶模塊作為驗(yàn)證對象,使用U VM驗(yàn)證方法學(xué),對其進(jìn)展調(diào)制和解調(diào)過程的驗(yàn)證。UVM驗(yàn)證

3、環(huán)境UVM class library提供了所需的根本單位,以便于快速開發(fā)用SystemVerilog描繪的具有良好構(gòu)造的、可重用的驗(yàn)證組件verificationcomponent和測試環(huán)境。UVM驗(yàn)證平臺是由稱為驗(yàn)證組件的可重用驗(yàn)證環(huán)境組成。對于接口協(xié)議、設(shè)計(jì)子模塊或者全系統(tǒng)而言,驗(yàn)證部件是一個封裝成型、易于使用、可配置的驗(yàn)證環(huán)境。每個驗(yàn)證部件都擁有固定的構(gòu)造,包括了一套完好的元件去完成針對某一特定協(xié)議或設(shè)計(jì)的仿真、檢查和覆蓋項(xiàng)信息搜集。驗(yàn)證組件用在被測對象以驗(yàn)證協(xié)議實(shí)現(xiàn)或設(shè)計(jì)架構(gòu)。圖1所示為一個使用class library根本類的典型UVM環(huán)境。在uvm_env中,它例化了一個moni

4、tor組件,一個config模塊和四個agent組件。monitor組件負(fù)責(zé)驗(yàn)證環(huán)境的功能覆蓋項(xiàng)監(jiān)測;config模塊完成對驗(yàn)證環(huán)境中各個組件的配置;四個agent組件各自完成不同的驗(yàn)證功能,每個組件中都有獨(dú)立的sequencer、driver和monitor。在每一個agent組件中,sequencer通過傳輸級模型TLM將隨機(jī)約束好的sequence發(fā)送給driver,driver將這些sequence按照一定的協(xié)議標(biāo)準(zhǔn)驅(qū)動驗(yàn)證對象的輸入信號,同時monitor會按照相應(yīng)的協(xié)議標(biāo)準(zhǔn)對驗(yàn)證對象的輸入輸出信息進(jìn)展采樣,并將采樣的結(jié)果傳輸給uvm_env外的比對組件。通常比對組件會采用一定的方式

5、對采樣數(shù)據(jù)的正確性進(jìn)展判斷。功能覆蓋率是用來衡量那些設(shè)計(jì)特征已經(jīng)被測試程序測試過的一個指標(biāo),它可以是面向控制時域的覆蓋率,也可以是面向數(shù)據(jù)信息的覆蓋率。從設(shè)計(jì)標(biāo)準(zhǔn)著手,創(chuàng)立一個驗(yàn)證方案,詳細(xì)列出要測試什么、如何進(jìn)展測試以及相應(yīng)的測試用例。功能覆蓋率通常在UVM驗(yàn)證環(huán)境的monitor組件、interface或者驗(yàn)證頂層中進(jìn)展采樣。面向控制的覆蓋率可貫穿于各個測試用例,面向數(shù)據(jù)的覆蓋率常用于采集在驗(yàn)證平臺或者DUT內(nèi)部信號的數(shù)據(jù)覆蓋情況。RF基帶模塊本RF基帶模塊的構(gòu)造圖如圖2所示。命令解釋器通過命令參數(shù)存放器,將輸入的串行數(shù)據(jù)變換成并行,以便于處理,另外它對命令字進(jìn)展解調(diào),得到輸入的命令編碼。

6、根據(jù)ISO/IE C 14443A,抗沖突功能允許在場內(nèi)同時操作多個非接觸式卡,抗沖突算法分別選中每個非接觸式卡并能確保被選中的芯片可以正確工作,并沒有受到場內(nèi)其他卡的數(shù)據(jù)損壞。EEPROM接口模塊提供了與EEPROM的通信,包括數(shù)據(jù)、地址和控制信號的交互。根據(jù)ISO/IEC 14443A協(xié)議,RF基帶模塊的解調(diào)信號采用修正的Miller編碼方式,該方式定義了三種序列,如圖3所示。序列X:一個PauseA在半個位周期后產(chǎn)生。它用來表示邏輯“1。序列Y:在整個位周期間,不產(chǎn)生調(diào)制。一般用它來表示邏輯“0。序列z:在位周期的開始處,產(chǎn)生一個PauseA。有些例外情況需用它來表示邏輯“0。調(diào)制返回信

7、號采用Manchester編碼方式,該方式也定義了三種序列,如圖4所示。序列D:在位寬度的前半部50%,載波被副載波調(diào)制。它用來表示邏輯“1。序列E:在位寬度的后半部50%,載波被副載波調(diào)制。它用來表示邏輯“0。序列F:在整位寬度內(nèi)載波不被副載波調(diào)制。它用來表示通信完畢。基于UVM的RF基帶模塊驗(yàn)證平臺搭建1 RF基帶模塊驗(yàn)證策略該R F基帶模塊驗(yàn)證的根本思路是使用隨機(jī)約束鼓勵與自動檢測比較的思路,驗(yàn)證策略如圖5所示。首先將RF基帶模塊數(shù)據(jù)工程中的變量做隨機(jī)約束,然后將該數(shù)據(jù)工程傳輸給Rddriver組件;Rd driver組件使用隨機(jī)約束好的數(shù)據(jù)分別驅(qū)動RF基帶模塊及其參考模型的輸入信號;而

8、后DUTmonitor組件采樣RF基帶模塊的輸出信號,Model monitor組件采樣參考模型的期望數(shù)據(jù),它們各自打包發(fā)送給Scoreboard組件;最后Scoreboar姐件通過比較兩者的一致性來判斷結(jié)果的正確性。2 基于LWM的RF基帶模塊驗(yàn)證平臺基于UVM驗(yàn)證方法學(xué)的R F基帶模塊驗(yàn)證平臺如圖6所示。DUT是待測對象,Ref model為待測對象的參考模型,它們均通過rd_if和rd env實(shí)現(xiàn)輸入鼓勵信息的驅(qū)動和采樣,通過mod_if和mod env實(shí)現(xiàn)輸出結(jié)果的搜集。rd_env例化了一個配置為active類型的agent,它內(nèi)部包括sequencer、driver和monitor

9、,其中driver將隨機(jī)約束鼓勵轉(zhuǎn)化為信號級并用于驅(qū)動DUT和Ref model,monitor用于采樣鼓勵信息的覆蓋情況。mod_env例化了兩個配置為passive類型的agent,其中mod_duCagent中的monitor用于將DUT的信號級輸出轉(zhuǎn)化為傳輸級輸出,并通過TLM發(fā)送給ctrl_env的monitor中,同時用于檢查輸出覆蓋情況;mod_refagent中的monitor用于獲得Ref model的傳輸級輸出,并通過TLM發(fā)送給ctrl env的monitor。ctrlenv內(nèi)的monitor將DUT和Ref model傳來的數(shù)據(jù)再發(fā)送給scoreboard,scoreb

10、oard用于比較兩者結(jié)果是否一致,coverage用于檢查DUT特定內(nèi)部信號的覆蓋情況。 RF基帶模塊的測試用例testcase庫通過例化uvm_test而來,它包含了用戶編寫的各測試用例,這些測試用例可以調(diào)用virtualsequencer中對應(yīng)的序列對DuT數(shù)據(jù)工程做隨機(jī)約束,從而得到預(yù)期鼓勵。還可以根據(jù)后續(xù)的需求進(jìn)一步擴(kuò)大測試用例庫的用例,RF基帶模塊的根本測試用例列舉如表1所示。RF基帶模塊的數(shù)據(jù)工程定義了需要鼓勵的各輸入變量,這些根本變量如表2所示。RF基帶模塊的仿真讀寫操作時序如圖7所示,在可靠上電后,芯片依次并行從EEPROM讀取工作形式、系統(tǒng)參數(shù)配置等信息,上電周期完畢后進(jìn)入相

11、應(yīng)的工作形式,圖中payload_pcd為指令的隨機(jī)約束鼓勵,它通過rddriver和rd_if進(jìn)一步發(fā)送給芯片的正/負(fù)級RF端口rf_p、rf_n。片內(nèi)RF基帶模塊的解調(diào)信號datain接收到符合修正的Miller編碼的序列,正常情況下會產(chǎn)生符合Manchester編碼的調(diào)制返回信號dataout,讀指令時將dataout返回數(shù)據(jù)讀至EEPROM,寫指令時通過擦寫時序?qū)?shù)據(jù)寫入EEPROM。UVM驗(yàn)證平臺會分別搜集DUT和參考模型的返回數(shù)據(jù),然后通過Scoreboard組件對它們做一致性地比較。3 驗(yàn)證結(jié)果分析以active_1測試用例分析仿真結(jié)果,此測試用例通過REQA指令先使芯片工作在R

12、EADY1狀態(tài),再通過READ Ox00指令使芯片跳換至A CTIVE狀態(tài),隨后執(zhí)行寫讀等操作驗(yàn)證返回結(jié)果正確與否。此處的讀寫地址被定義為rand類型,可通過constraint對它們的隨機(jī)地址加以約束,使它們處于有效的地址范圍。從仿真日志文件看到,此測試用例比對成功。在此處仿真過程中總共打印了140條仿真信息,沒有警告、一般錯誤或者致命錯誤信息,在RNTST、SCRBD、TEST_DONE等處分別打印了測試用例、比對結(jié)果、測試完畢等信息。假設(shè)測試用例失敗,這些打印信息便是至關(guān)重要的調(diào)試參考信息。另外,各測試用例跑仿真后會產(chǎn)生相應(yīng)的覆蓋數(shù)據(jù)文件,然后用EDA工具對這些文件進(jìn)展合并,并對結(jié)果進(jìn)展檢查分析。此處面向控制的功能覆蓋項(xiàng)涉及各指令的FDT、EEPROM擦寫時序、PauseA等共30項(xiàng),面向數(shù)據(jù)的功能覆蓋項(xiàng)涉及各指令及其parity、CRC的覆蓋組合、返回各標(biāo)志信息等共175項(xiàng)。從報告結(jié)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論