深度解析Portable Stimulus:UVM集成
發(fā)布時(shí)間:2019-07-06 責(zé)任編輯:lina
【導(dǎo)讀】PSS和UVM的集成在一起不同于將兩種語(yǔ)言進(jìn)行集成。本文將列出這種集成的基本策略,以盡可能通用的語(yǔ)言來(lái)描述集成的六個(gè)步驟以及本文會(huì)詳細(xì)介紹前三個(gè)步驟。
PSS和UVM的集成在一起不同于將兩種語(yǔ)言進(jìn)行集成。本文將列出這種集成的基本策略,以盡可能通用的語(yǔ)言來(lái)描述集成的六個(gè)步驟以及本文會(huì)詳細(xì)介紹前三個(gè)步驟。
將便攜式刺激標(biāo)準(zhǔn)(Portable Stimulus Standard,PSS)功能與通用驗(yàn)證方法學(xué)(UVM)集成在一起不同于將兩種語(yǔ)言進(jìn)行集成。
在我們之前的專欄中,Aileen Honess提供了這樣一個(gè)背景,shuoming 為什么那些使用通用驗(yàn)證方法學(xué)(UVM)和SystemVerilog的團(tuán)隊(duì)會(huì)希望通過(guò)增加Portable Stimulus來(lái)擴(kuò)展他們的驗(yàn)證方法。通過(guò)結(jié)合不僅理解組合約束而且理解設(shè)計(jì)時(shí)間方面的約束求解器,可以生成針對(duì)特定驗(yàn)證意圖的更有效的測(cè)試。
本博客將列出這種集成的基本策略。需要注意的是,集成Portable Stimulus Standard (PSS)功能并沒有對(duì)現(xiàn)存的功能產(chǎn)生任何影響,現(xiàn)有的測(cè)試平臺(tái)仍然有效,繼續(xù)提供相同的覆蓋范圍。但若在嘗試達(dá)到理想覆蓋水平時(shí)碰到問(wèn)題,或者當(dāng)希望測(cè)試用例被重定向?yàn)榉抡婊虮挥糜谛酒瑔?dòng)時(shí),PSS增加的新功能就有用了。
隨著時(shí)間的推移,對(duì)PSS功能的信心逐步增強(qiáng),您可能會(huì)希望更改驗(yàn)證方法以支持PSS生成的測(cè)試用例,而不是來(lái)自現(xiàn)有UVM環(huán)境的簡(jiǎn)單、隨機(jī)的測(cè)試用例。此外,PSS還提供了新的比對(duì)和評(píng)估覆蓋范圍的方法,相信這種方法也更直觀。
還有一點(diǎn)需要注意,PSS和UVM的集成與兩種語(yǔ)言之間的集成不同。PSS定義了一個(gè)利用工具生成測(cè)試用例的模型。它是與UVM集成生成的測(cè)試用例。這意味著,當(dāng)談到集成,就不能使其獨(dú)立于特定供應(yīng)商的工具。我會(huì)以盡可能通用的語(yǔ)言來(lái)描述集成的步驟,其他供應(yīng)商可能也會(huì)有類似的步驟,但自動(dòng)化的細(xì)節(jié)或級(jí)別可能會(huì)有所不同。
集成的六個(gè)步驟如下:
1.識(shí)別UVM接口,包括事務(wù)級(jí)建模(TLM)接口、軟件接口和內(nèi)存。配置工具并集成到UVM。
2.創(chuàng)建PSS寄存器類型描述。這一步可以通過(guò)硬件/軟件接口(HSI)的寄存器定義來(lái)手工完成,也可以通過(guò)轉(zhuǎn)換IP-XACT描述來(lái)完成。
3.識(shí)別設(shè)計(jì)(包括組件、操作、資源等)的整體PSS模型/表示。
4.提供每個(gè)“操作”(action)的詳細(xì)信息。這些信息根據(jù)可合成TLM或軟件驅(qū)動(dòng)驗(yàn)證(SDV)測(cè)試的可移植基元定義。
5.編譯模型、合成測(cè)試用例,并運(yùn)行UVM仿真。
6.查看和調(diào)試結(jié)果,并分析覆蓋范圍。
下面我們將采用一個(gè)非常簡(jiǎn)單的設(shè)計(jì)來(lái)演示這些概念。該設(shè)計(jì)源自Breker發(fā)布的公共域示例,示例中有兩個(gè)CPUS、兩個(gè)UART、一個(gè)DMAC和一個(gè)AES加密塊。
圖1:本示例包括兩個(gè)CPUS、兩個(gè)UART、一個(gè)DMAC和一個(gè)AES加密塊。(來(lái)源:Breker)
每個(gè)UART都有一個(gè)驗(yàn)證IP(VIP),用于配置和發(fā)送/接收數(shù)據(jù)。此外,每個(gè)CPU都開放其由AMBA高級(jí)外設(shè)總線(APB)VIP驅(qū)動(dòng)的端口。為UART VIP定義TLM事務(wù)和TLM端口; 并在TLB模式中為APB VIP定義處理器代理。同時(shí)定義存儲(chǔ)器資源以供DMAC操作使用。
圖2:從Portable Stimulus工具生成的UVM代碼。(來(lái)源:Breaker)
圖3:生成的代碼用于將工具中的事務(wù)轉(zhuǎn)換為VIP使用的事務(wù),類似于uvm_reg_adapter。(來(lái)源:Breker)
圖4:生成的trek_sequence等待來(lái)自模型的數(shù)據(jù),使用上面的代碼轉(zhuǎn)換數(shù)據(jù),并將其發(fā)送給VIP。即該代碼用于實(shí)現(xiàn)兩種類型數(shù)據(jù)的轉(zhuǎn)換。這里也可以使用用戶創(chuàng)建的序列。當(dāng)監(jiān)視模塊捕獲動(dòng)作或與比對(duì)模塊一起使用時(shí),反方向也存在類似的代碼。(來(lái)源:Breker)
步驟2建立了VIP的寄存器和存儲(chǔ)器映射。通常情況下,該映射已經(jīng)以IP-XACT格式定義。IP-XACT是第三方IP模塊的通用格式,許多公司也用它來(lái)記錄其內(nèi)部IP。如果是這種情況,將采用實(shí)用程序執(zhí)行必要的轉(zhuǎn)換。Breker采用了建議的HSI,HSI在PSS標(biāo)準(zhǔn)第一版中并未獲得批準(zhǔn)。
三個(gè)組件(UART、DMAC、AES)中每個(gè)組件的寄存器描述都可以利用隨設(shè)計(jì)發(fā)布的IP-XACT文件中的trekhsi輕松創(chuàng)建,而且可以修改字段名稱以提高可讀性。
圖5:UART(hsi_uart.h)的HSI寄存器定義變?yōu)閔si :: reg_block。為了便于閱讀,原始IP-XACT規(guī)范中的字段名稱作了修改。(來(lái)源:Breker)
步驟3是識(shí)別系統(tǒng)組件。該設(shè)計(jì)中,主要的IP模塊是UART、DMA和AES,稱為“PSS組件”。每個(gè)模塊都具有稱為“操作”(action)的核心功能,并表示為“PSS操作”。這些模塊的關(guān)鍵功能(actions) 可以定義如下:
·UART - 配置、接收、發(fā)送
·DMAC - 輸出數(shù)據(jù)、輸入數(shù)據(jù)
·AES - 加密、解密
·CPU - 輸出數(shù)據(jù)、輸入數(shù)據(jù)
需要注意的是,首次編寫PSS模型時(shí),不一定要定義所有操作。首先,只用定義最重要的,隨著驗(yàn)證任務(wù)的進(jìn)展,再定義附加的、次級(jí)的操作。這不會(huì)對(duì)已執(zhí)行的驗(yàn)證有任何影響,只會(huì)造成更多的序列。
為每個(gè)計(jì)算元素(UART、DMAC、AES)創(chuàng)建資源池。
并使用流對(duì)象(FIFO,Reg)和為每個(gè)元素創(chuàng)建的相應(yīng)“池”來(lái)定義到塊的接口。
最后,PSS鎖定對(duì)共享資源或獨(dú)占資源使用的控制。調(diào)度程序?qū)⒗盟鼇?lái)確保不會(huì)嘗試使硬件同時(shí)執(zhí)行互斥操作。
圖6:Breker的TrekDesigner中顯示的PSS圖表創(chuàng)建了模型。在該模型中,“組件”是綠色框,“操作”是淺藍(lán)色框,“資源”是深藍(lán)色菱形,“鎖”是與“操作”相關(guān)聯(lián)的灰色框。“操作”塊的輸入和輸出用藍(lán)色輸入/輸出端口表示。 (來(lái)源:Breker)
Entry操作(頂部)同時(shí)安排了兩個(gè)UART場(chǎng)景,即加密和解密操作。UART場(chǎng)景(左下方)將為DUT選擇配置,配置VIP以匹配,同時(shí)并行執(zhí)行多個(gè)接收和發(fā)送操作。加密和解密操作由DMAC傳輸(右下)提供。資源鎖用于確保同一硬件塊上的兩個(gè)操作不會(huì)同時(shí)執(zhí)行。
整個(gè)模型的PSS代碼均由工具生成。每個(gè)生成的動(dòng)作都有一對(duì)//用戶代碼開始和//用戶代碼結(jié)束標(biāo)記,標(biāo)記中間即為動(dòng)作的詳細(xì)描述。重新生成模型時(shí),標(biāo)記間的代碼會(huì)保留。
特別推薦
- AMTS 2025展位預(yù)訂正式開啟——體驗(yàn)科技驅(qū)動(dòng)的未來(lái)汽車世界,共迎AMTS 20周年!
- 貿(mào)澤電子攜手安森美和Würth Elektronik推出新一代太陽(yáng)能和儲(chǔ)能解決方案
- 功率器件熱設(shè)計(jì)基礎(chǔ)(六)——瞬態(tài)熱測(cè)量
- 貿(mào)澤開售Nordic Semiconductor nRF9151-DK開發(fā)套件
- TDK推出用于可穿戴設(shè)備的薄膜功率電感器
- 日清紡微電子GNSS兩款新的射頻低噪聲放大器 (LNA) 進(jìn)入量產(chǎn)
- 中微半導(dǎo)推出高性價(jià)比觸控 MCU-CMS79FT72xB系列
技術(shù)文章更多>>
- 意法半導(dǎo)體推出首款超低功耗生物傳感器,成為眾多新型應(yīng)用的核心所在
- 是否存在有關(guān) PCB 走線電感的經(jīng)驗(yàn)法則?
- 智能電池傳感器的兩大關(guān)鍵部件: 車規(guī)級(jí)分流器以及匹配的評(píng)估板
- 功率器件熱設(shè)計(jì)基礎(chǔ)(八)——利用瞬態(tài)熱阻計(jì)算二極管浪涌電流
- AHTE 2025展位預(yù)訂正式開啟——促進(jìn)新技術(shù)新理念應(yīng)用,共探多行業(yè)柔性解決方案
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
生產(chǎn)測(cè)試
聲表諧振器
聲傳感器
濕度傳感器
石英機(jī)械表
石英石危害
時(shí)間繼電器
時(shí)鐘IC
世強(qiáng)電訊
示波器
視頻IC
視頻監(jiān)控
收發(fā)器
手機(jī)開發(fā)
受話器
數(shù)字家庭
數(shù)字家庭
數(shù)字鎖相環(huán)
雙向可控硅
水泥電阻
絲印設(shè)備
伺服電機(jī)
速度傳感器
鎖相環(huán)
胎壓監(jiān)測(cè)
太陽(yáng)能
太陽(yáng)能電池
泰科源
鉭電容
碳膜電位器