Failing to connect analysis port

Hi, I am failing to connect an analysis port of sequencer with monitor.

I’ve an agent with following member:

my_sequencer sequencer

my_sequencer has an analysis port implemented with uvm_analysis_imp_decl

From my environment, I am trying to connect the analysis port of a monitor with the port declared in my sequencer.

my_agent.my_monitor.transaction_port.connect(my_agent2.sequencer.rec_port)

I get a message that “sequencer” is not a class item.

Can you post the error message ?

-BR
Hash

In reply to Hash:

The error message is ““sequencer” is not a class item.”

Is it illegal to connect two ports like this?

In reply to newbie_to_UVM:

Certainly the error message is more text than what you have posted.

It would also help to show the actual declarations of every involved identifier: my_agent2, sequencer, rec_port.

Hi,

I saw an explanation on port/export connectivity. The data is expected to be sent from env.comp1.leaf1 to env.comp2.subcomp2.leaf2.

port-to-port : leaf1’s out port is connected to its parent’s(comp1) out port
port-to-export : comp1’s out is connected to comp2’s in export
export-to-export : comp2’s in export is connected to its child’s(subcomp2) in export
export-to-imp : subcomp’s in export is connected leaf2’s in imp port
imp-to-implementation: leaf2’s in imp port is connected to its implementation, leaf2

Can this do any help?

Regards,
Yao He