• uvm_monitor——借我一双慧眼


      monitor 用来捕获(监视)和检查总线的信号是否满足预期的要求。所有的user_monitor 继承自uvm_monitor,uvm_monitor继承自uvm_component,从源代码来看里面没有做什么工作,那为什么又费力去做这么一件事,这么做的原因是让不同的模块做不同事,从名字就可以区分开该模块的功能,提供代码的可阅读性。
    A monitor should have the following functions :
      • Collect bus information through a virtual interface
      • Collected data can be used for protocol checking and coverage
      • Collected data is exported via an analysis port

    //-----------------------------------------------------------------------------
    // CLASS: uvm_monitor
    //
    // This class should be used as the base class for user-defined monitors. 
    //
    // Deriving from uvm_monitor allows you to distinguish monitors from generic
    // component types inheriting from uvm_component.  Such monitors will
    // automatically inherit features that may be added to uvm_monitor in the future.
    //
    //-----------------------------------------------------------------------------
    
    virtual class uvm_monitor extends uvm_component;
    
      // Function: new
      //
      // Creates and initializes an instance of this class using the normal
      // constructor arguments for <uvm_component>: ~name~ is the name of the
      // instance, and ~parent~ is the handle to the hierarchical parent, if any.
    
      function new (string name, uvm_component parent);
        super.new(name, parent);
      endfunction
    
      const static string type_name = "uvm_monitor";
    
      virtual function string get_type_name ();
        return type_name;
      endfunction
    
    endclass

    参考文献:

    1 uvm_monitor. http://www.chipverify.com/uvm/monitor

  • 相关阅读:
    Python open 读和写
    Sublime Text的使用
    解决MySQL Workbench导出乱码问题
    统计学(一)
    pymysql使用(二)
    使用pymysql(使用一)
    2个Excel表格核对技巧
    用Python读写Excel文件的方式比较
    从零上手Python关键代码
    php面试
  • 原文地址:https://www.cnblogs.com/dpc525/p/7921073.html
Copyright © 2020-2023  润新知