End Of Test Mechanisms(从Objections开始)

上一篇 / 下一篇  2018-12-28 16:38:45

Objections

    Objections

       uvm_objection类提供了一种在参与组件和sequences之间共享计数器的方法。 每个参与者可以异步地提起撤销异议,这会增加或减少计数器值。 当计数器达到零(意思是从非零值到零)时,出现全部撤销状态。 “全撤销事件的含义取决于特定objection object的预期应用。 例如,UVM phasing机制使用uvm_objection object来协调每个运行时阶段的结束。 用户流程在phase中启动以提起objection为触发条件,且在phase中结束以撤销objection为触发条件。 phaseobjection计数变为零时,它向phase机制指示每个参与者都同意应该结束phase
       objection
处理的细节相当复杂,并且会产生很高的开销。 通常,建议仅使用控制UVM结束的内置object 建议不要创建和使用您自己的objection
      
注意:objection计数传播仅限于组件和sequence 其他object类型可以参与,但它们必须使用组件或sequence object对象作为context

  Interfaces

       uvm_objection类有三个接口或API。

    Objection Control

       提起和撤销objection以及设定 drain time的方法:

  • raise_objection ( uvm_object bj = null, string description = "" , int count = 1).
    按count计算源object的objection数,默认为1.objection的提升沿层次结构向上传播;
  • drop_objection ( uvm_object bj = null, string description = "" , int count = 1).
    按计数撤销源object的objection数,默认为1。objection的撤销在层次结构中向上传播。 如果任何组件的objection计数降为0,则首先执行可选的drain_time和该组件的all_dropped()回调。 如果此后objection计数仍为0,则传播进入层次结构中的下一级别;
  • set_drain_time ( uvm_object bj = null, time drain).
    设置给定object的drain time。

    建议:

  • 在组件的phase method中使用phase.raise_objection / phase.drop_objection,使该组件参与管理phase结束;
  • 始终提供描述 - 它有助于调试;
  • 通常使用默认计数值;
  • 将drain_time的使用限制在uvm_top或顶层test(如果使用的话)。

   Objection Status

       用于获得关于objection的状态信息的方法:

  • get_objection_count ( uvm_object obj)
    返回给定object显式提起的objection计数值;
  • get_objection_total ( uvm_object bj = null)
    返回object和所有子类的objection计数值;
  • get_drain_time ( uvm_object obj)
    返回object的 drain time(默认值:0ns)。
  • display_objections ( uvm_object bj = null, bit show_header = 1)
    显示有关object的objection信息。

     建议:

  • 通常只对调试有用;
  • 将+ UVM_OBJECTION_TRACE添加到vsim命令行以打开详细的run-time objection跟踪。 这样可以在不必修改代码和重新编译的情况下进行调试;
  • 在调试phase间跳转的问题时,还要添加+ UVM_PHASE_TRACE以增强objection跟踪。

    



TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2019-01-11  
  12345
6789101112
13141516171819
20212223242526
2728293031  

数据统计

  • 访问量: 19128
  • 日志数: 75
  • 建立时间: 2018-09-03
  • 更新时间: 2018-12-29

RSS订阅

Open Toolbar
魔域私服 魔域私服 魔域私服 魔域私服 魔域私服

  • <tr id='si9n7'><strong id='72c0x'></strong><small id='t1hnh'></small><button id='rnsw9'></button><li id='05e8i'><noscript id='0cg5h'><big id='zpf26'></big><dt id='g0c5n'></dt></noscript></li></tr><ol id='r9kwk'><option id='qo26h'><table id='5vq79'><blockquote id='0d8fz'><tbody id='x3e6u'></tbody></blockquote></table></option></ol><u id='0ztse'></u><kbd id='x6zgn'><kbd id='2vb5c'></kbd></kbd>

    <code id='2onve'><strong id='dg7lo'></strong></code>

    <fieldset id='6bb6z'></fieldset>
          <span id='yqcfb'></span>

              <ins id='fil38'></ins>
              <acronym id='a0a71'><em id='fjj93'></em><td id='hgqk2'><div id='7m7ex'></div></td></acronym><address id='3ugp5'><big id='714ik'><big id='ulc0p'></big><legend id='d72ws'></legend></big></address>

              <i id='ereui'><div id='22bpi'><ins id='uahho'></ins></div></i>
              <i id='9q5sw'></i>
            1. <dl id='0o8v7'></dl>