In reply to S.P.Rajkumar.V:
Here are more detailed analysis:
- Lest say I need only PASSIVE environment - RTL is driving apb, and lets say I just want to collect coverage on register fields
- Code example shows:
if(m_cfg.m_apb_agent_cfg.active == UVM_ACTIVE) begin
reg2apb = reg2apb_adapter::type_id::create(“reg2apb”);
… - So, due to Point 1, I will use PASSIVE apb agent to monitor apb bus. Due to Point 2, I will not have reg2apb_adapter (that contains predictor, and bus2reg virtual function) => Cannot use passive part of uvm registers for register shadow model and coverage…
So this shows that we should create adapter regardless if apb agent is PASSIVE or ACTIVE, correct?