在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

聊一聊所謂的Objection機制

sanyue7758 ? 來源:芯片學堂 ? 2023-06-09 11:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Objection是UVM框架中用來同步不同組件的相同phase,以及決定當前測試用例什么時候結束(end-of-test)的機制,這也是用戶在拿到UVM之后最直白的使用場景。本篇文章除了介紹Objection的工作原理和常規(guī)使用方式,還會介紹Objection的一些非常規(guī)用法。

01 Objection工作原理

為什么把同步phase或者說管理仿真結束的機制叫做Objection?這是個沒有多少實際意義的問題,不過理清楚之后,也許你再也不會忘了Objection機制的用途。

按照UVM reference的介紹:“Objections provide a facility for coordinating status information between two or more participating components, objects, and even module-based IP. ” 這個描述還是比較抽象,說Objection用于協(xié)調多個對象之間的狀態(tài)信息,不過可以簡單理解成就是“同步”。

本系列前面的文章【深入Phase機制,看懂Phase機制實現(xiàn)原理】介紹到,基于UVM的仿真程序執(zhí)行嚴格按照Phase來執(zhí)行,而每一級phase都按照UVM定義的狀態(tài)機做跳轉,其中有一個狀態(tài)比較特殊,叫UVM_PHASE_READ_TO_END。

這個狀態(tài)的特點是:只有當同級phase的所有objection都被撤銷(drop)之后(通過計數(shù)器實現(xiàn)),才會進入該狀態(tài);進入該狀態(tài)之后,會遍歷執(zhí)行驗證組件中定義的phase_ready_to_end回調函數(shù),待執(zhí)行完成之后且沒有objection被置起(raise),才會跳轉到下一個狀態(tài)UVM_PHASE_ENDED。

54e20b0e-05e7-11ee-962d-dac502259ad0.png

按照這個邏輯,以耗時(time-consuming)phase為例,這里忽略pre_*和post_*的phase,可以得到下面這個執(zhí)行流圖。圖中從左往右表示執(zhí)行的先后順序,可以看到,相同phase都是在同一時刻開始往后執(zhí)行,也就實現(xiàn)了“同步”。

5517994a-05e7-11ee-962d-dac502259ad0.png

最后怎么去理解“Objection”這個詞?可以這么說,仿真執(zhí)行過程中,仿真程序會不停地問:“我要進入下一個phase了,還有誰有意見?”,那些還沒有執(zhí)行完的phase線程就會大喊:“我反對我反對!”,于是仿真程序就等在那了,最終只有等到所有人都執(zhí)行完了,才得以退出當前phase。Objection也符合“a feeling or expression of disapproval”的釋義了。

02 Objection常規(guī)用法

Objection的常規(guī)用法很簡單,在很多文章中都會提到,即raise_objection(),drop_objection() 和 set_drain_time()。這三件套是我們應用Objection機制時最常用到的方法。

Objection計數(shù)器在每次調用raise_objection()和drop_objection()會進行增減。在實際應用中,不建議在很多組件的耗時phase中都去raise-drop objection,兩個原因:一個是objection的控制會比較分散,不便于objection的管理;另一個是反復的調用會使得仿真效率比較低。可以考慮在測試用例頂層和sequence中進行objection的控制。示例代碼如下:

552bf732-05e7-11ee-962d-dac502259ad0.png

以上是UVM 1.1對objection的用法。到了UVM 1.2,棄用了uvm_sequence_base:: starting_phase這個變量,改用set_starting_phase和get_starting_phase兩個方法;棄用了raise_objection和drop_objection兩個方法,改用uvm_sequence_base:: set_automatic_phase_objection。這些改進的目的是優(yōu)化objection的使用體驗,UVM library幫你多省掉了一些代碼和出錯的機會。示例代碼如下:

55609898-05e7-11ee-962d-dac502259ad0.png

set_drain_time()方法的使用場景是在objection都撤銷了之后,往后延長仿真結束的時間。這么做的目的是讓DUT有多余的時間去完成動作,使其完整響應我們輸入的測試激勵。

除了set_drain_time()方法可以解決這個問題,我們還可以在撤銷objection之前去做一些有意義的條件判斷,也可以在test的phase_ready_to_end回調函數(shù)中去實現(xiàn)一些檢查邏輯。不過還是set_drain_time()用的多。

03 Objection非常規(guī)用法

非常規(guī)用法指的是平時不怎么用得到的使用場景,但這些使用方法在有些場景下會有用,比如調試。

追蹤Objection狀態(tài)用的命令行參數(shù)+UVM_OBJECTION_TRACE。當仿真命令加上該參數(shù),就可以在仿真日志中看到誰誰誰置起了objection,誰誰誰撤銷了objection,以及objection計數(shù)器的數(shù)值等等。

另外我們可以通過phase.get_objection()拿到負責同步當前phase的objection句柄,之后就可以調用該句柄有的一些方法。比如get_drain_time()方法可以返回當前objection對象的排空時間(drain time);clear()方法可以直接清零當前objection對象的計數(shù)器,且釋放對當前phase的同步;display_objections()方法可以打印該objection對象的具體信息等。





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 比較器
    +關注

    關注

    14

    文章

    1842

    瀏覽量

    108760
  • 計數(shù)器
    +關注

    關注

    32

    文章

    2290

    瀏覽量

    96193
  • UVM
    UVM
    +關注

    關注

    0

    文章

    182

    瀏覽量

    19482
  • DUT
    DUT
    +關注

    關注

    0

    文章

    190

    瀏覽量

    12891

原文標題:SystemVerilog | UVM | 使用Objection管理仿真結束

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    從焊接角度,設計PCB的5個建議

    完成個電路板,需要PCB工程師、焊接工藝、焊接工人等諸多環(huán)節(jié)的把控。今天通過定位孔、MARK點、留邊、焊盤過孔、輔助工具這五個方面從畫板的角度跟大家PCB設計。
    的頭像 發(fā)表于 02-06 10:31 ?2214次閱讀
    從焊接角度<b class='flag-5'>聊</b><b class='flag-5'>一</b><b class='flag-5'>聊</b>,設計PCB的5個建議

    消息隊列技術選型的7種消息場景

    我們在做消息隊列的技術選型時,往往會結合業(yè)務場景進行考慮。今天來消息隊列可能會用到的 7 種消息場景。
    的頭像 發(fā)表于 12-09 17:50 ?1684次閱讀
    <b class='flag-5'>聊</b><b class='flag-5'>一</b><b class='flag-5'>聊</b>消息隊列技術選型的7種消息場景

    IC驗證“UVM驗證平臺加入objection機制和virtual interface機制“(七)

    在上節(jié)中,**《IC驗證"UVM驗證平臺加入factory機制"(六)》**雖然輸出了“main_phase is called”,但是“data is drived”并沒有
    發(fā)表于 12-09 18:28

    Altium中Fill,Polygon Pour,Plane的區(qū)別和用法

    Fill會造成短路,為什么還用它呢?來Altium中Fill,Polygon Pour,Plane的區(qū)別和用法
    發(fā)表于 04-25 06:29

    stm32的低功耗調試

    前言:物聯(lián)網(wǎng)的大部分設備都是電池供電的,設備本身低功耗對延長設備使用至關重要,今天就實際調試總結stm32的低功耗調試。1、stm32在運行狀態(tài)下的功耗上圖截圖自stm32l15x手冊
    發(fā)表于 08-11 08:18

    7系列FPGA的供電部分

    前幾篇咱們說了FPGA內部邏輯,本篇咱們再聊7系列FPGA的供電部分。首先咱們說spartan7系列,通常咱們需要使用以下電源軌:1,VCCINTFPGA內部核心電壓。其不損壞FPGA器件的范圍
    發(fā)表于 11-11 09:27

    平衡小車代碼的實現(xiàn)

    前言今天代碼,只有直立功能的代碼。代碼總體思路給定個目標值,單片機通過IIC和mpu6050通信,得知數(shù)據(jù)后,根據(jù)角度環(huán)計算出個P
    發(fā)表于 01-14 08:29

    FPGA的片內資源相關知識

    大家好,到了每日學習的時間了。今天我們來FPGA的片內資源相關知識。 主流的FPGA仍是基于查找表技術的,已經(jīng)遠遠超出了先前版本的基本性能,并且整合了常用功能(如RAM、DCM和DSP)的硬核
    的頭像 發(fā)表于 05-25 14:11 ?9207次閱讀
    <b class='flag-5'>聊</b><b class='flag-5'>一</b><b class='flag-5'>聊</b>FPGA的片內資源相關知識

    IIC總線設計

    大家好,又到了每日學習的時間了,今天咱們來 IIC 總線設計。 、概述: IIC 是Inter-Integrated Circuit的縮寫,發(fā)音為eye-squared cee
    的頭像 發(fā)表于 06-22 10:32 ?9558次閱讀

    小米米2月19日停止服務 米宣布關閉服務器

    v8.8.70 及以上版本支持批量導出。 2010年12月10日,反應迅速的小米僅僅用了不到2個月的時間,發(fā)布了中國第款模仿kik的產品——米。Kik是款基于手機通信錄的社交軟件,用戶可以免費短信聊天。 2012年5月,
    的頭像 發(fā)表于 01-20 05:43 ?6987次閱讀

    復活了 能維持多久?

    2021年2月19日,米宣布停服,2021年2月26日,米重新上線。不過這次,米卻是以全新的面貌與大家相見。
    發(fā)表于 03-08 16:32 ?1252次閱讀

    FPGA中的彩色轉灰度的算法

    大家好,又到了每日學習的時間了,今天我們來FPGA學習中可以遇到的些算法,今天就
    的頭像 發(fā)表于 04-15 15:47 ?2178次閱讀

    【職場雜談】與嵌入式物聯(lián)網(wǎng)架構師幾個話題

    【職場雜談】與嵌入式物聯(lián)網(wǎng)架構師幾個話題
    的頭像 發(fā)表于 08-23 09:19 ?1659次閱讀
    【職場雜談】與嵌入式物聯(lián)網(wǎng)架構師<b class='flag-5'>聊</b><b class='flag-5'>一</b><b class='flag-5'>聊</b>幾個話題

    簡單DPT技術-double pattern technology

    今天想來簡單DPT技術-double pattern technology,也就是雙層掩模版技術,在目前先進工藝下,這項技術已經(jīng)應用的很普遍了。
    的頭像 發(fā)表于 12-05 14:26 ?2931次閱讀

    芯片設計的NDR是什么?

    今天突然想route相關的問題,講講NDR是什么,我也梳理總結下我對NDR的認識。
    的頭像 發(fā)表于 12-06 15:14 ?3121次閱讀
    主站蜘蛛池模板: 五月婷婷丁香在线观看 | 国产精品成人一区二区三区 | 伊人天伊人天天网综合视频 | 人人干天天干 | 日本特黄特色大片免费播放视频 | 女攻各种play男受h | 国产成人永久免费视频 | 日本污污视频 | 啪啪福利视频 | 日本高清视频色www在线观看 | 色婷婷六月 | 九九热国产| 有一婷婷色 | 四虎网站最新网址 | 天天襙| 国产高清精品自在久久 | 四只虎免费永久观看 | 国产一区精品视频 | 狠狠干精品 | 一级毛片免费全部播放 | 黑粗硬大欧美视频 | 欧美日韩精品乱国产538 | 四虎在线精品免费高清在线 | 日本黄色www | 国产精品网址你懂的 | 少妇被按摩 | 天天艹| 亚洲综合激情网 | 巨臀中文字幕一区二区翘臀 | 天堂在线最新版在线www | 日本视频一区二区 | 亚洲精品视频区 | 午夜在线观看免费高清在线播放 | 8090yy理论三级在线观看 | 国产成人毛片视频不卡在线 | 黄网站色在线视频免费观看 | 在线一区观看 | 亚洲国产精品久久久久婷婷软件 | 久久综合狠狠综合狠狠 | 在线观看日本亚洲一区 | 曰韩高清一级毛片 |