What are the argument defines in uvm_top.find_all()?


function void iicBaseVseq::get_sequencers();

 uvm_component tmp[$];

 //find the IIC device sequencer in the testbench
 tmp.delete(); //Make sure the queue is empty
 uvm_top.find_all("*m_iic_agent.m_iic_sequencer", tmp);
 if (tmp.size() == 0)
  `uvm_fatal(m_name, "Failed to find iic device sequencer")
 else if (tmp.size() > 1)
  `uvm_fatal(m_name, "Matched too many components when looking for iic device2 sequencer")
 else
  $cast(m_device1Sequencer, tmp[0]);


 //find the wishbone  sequencer in the testbench
 tmp.delete(); //Make sure the queue is empty
 uvm_top.find_all("*m_wb_agent.m_wb_sequencer", tmp);
 if (tmp.size() == 0)
  `uvm_fatal(m_name, "Failed to find wishbone sequencer")
 else if (tmp.size() > 1)
  `uvm_fatal(m_name, "Matched too many components when looking for iic device2 sequencer")
 else
  $cast(m_dutMasterSequencer, tmp[0]);

endfunction


Why in argument list along the first argument of uvm_top.find_all(“m_wb_agent.m_wb_sequencer", tmp) "” is used?

In reply to Subhra Bera:
https://verificationacademy.com/verification-methodology-reference/uvm/docs_1.2/html/files/base/uvm_root-svh.html#uvm_root.find

Returns the component handle (find) or list of components handles (find_all) matching a given string. The string may contain the wildcards,