Esempio n. 1
0
    def __init__(self, name, parent):
        UVMMonitor.__init__(self, name, parent)
        #    cov_trans = new()
        #    cov_trans.set_inst_name({get_full_name(), ".cov_trans"})
        #    cov_trans_beat = new()
        #    cov_trans_beat.set_inst_name({get_full_name(), ".cov_trans_beat"})
        self.trans_collected = ubus_transfer()
        self.item_collected_port = UVMAnalysisPort("item_collected_port", self)
        self.state_port = UVMAnalysisPort("state_port", self)
        self.status = ubus_status("status")

        # The following property is used to store slave address map
        # slave_address_map_info slave_addr_map[string]
        self.slave_addr_map = {}

        self.checks_enable = True
        self.coverage_enable = True
Esempio n. 2
0
 def __init__(self, name, parent=None):
     UVMMonitor.__init__(self, name, parent)
     #    cov_trans = new()
     #    cov_trans.set_inst_name({get_full_name(), ".cov_trans"})
     #    cov_trans_beat = new()
     #    cov_trans_beat.set_inst_name({get_full_name(), ".cov_trans_beat"})
     self.trans_collected = ubus_transfer()
     self.item_collected_port = UVMAnalysisPort("item_collected_port", self)
     self.addr_ph_imp = UVMBlockingPeekImp("addr_ph_imp", self)
     # The following two bits are used to control whether checks and coverage are
     # done both in the monitor class and the interface.
     self.checks_enable = True
     self.coverage_enable = True
     self.vif = None
     self.master_id = 0
Esempio n. 3
0
 def __init__(self, name, parent=None):
     UVMMonitor.__init__(self, name, parent)
     #    cov_trans = new()
     #    cov_trans.set_inst_name({get_full_name(), ".cov_trans"})
     #    cov_trans_beat = new()
     #    cov_trans_beat.set_inst_name({get_full_name(), ".cov_trans_beat"})
     self.trans_collected = ubus_transfer()
     self.item_collected_port = UVMAnalysisPort("item_collected_port", self)
     self.addr_ph_imp = UVMBlockingPeekImp("addr_ph_imp", self)
     # The following two bits are used to control whether checks and coverage are
     # done both in the monitor class and the interface.
     self.checks_enable = True
     self.coverage_enable = True
     self.vif = None
     self.address_phase_grabbed = Event("address_phase_grabbed")
     #  // The following two unsigned integer properties are used by
     #  // check_addr_range() method to detect if a transaction is for this target.
     self.min_addr = 0x0000
     self.max_addr = 0xFFFF
Esempio n. 4
0
 def __init__(self, name, parent=None):
     super().__init__(name, parent)
     self.ap = UVMAnalysisPort("ap", self)  # uvm_analysis_port#(apb_rw)
     self.cfg = None  # apb_config
     self.tr = None  # apb_rw
     self.sigs = None
Esempio n. 5
0
 def __init__(self, name, parent):
     super().__init__(name, parent)
     self.analysis_export = UVMAnalysisPort("analysis_imp", self)