Hardware interview practice
P_sequencer type coupling
A virtual sequence declares p_sequencer as sys_vseqr, but a test accidentally starts it on a bus_sequencer. What is the expected failure mode?
Starting point
Question code
class sys_vseq extends uvm_sequence;
`uvm_declare_p_sequencer(sys_vseqr)
// body uses p_sequencer.bus_sqr
endclassChoose one
Answer choices
- A. UVM automatically creates a sys_vseqr adapter around bus_sequencer
- B. The macro's sequencer cast fails, normally producing a fatal before body can safely use p_sequencer
- C. The virtual sequence silently runs with p_sequencer set to null and all child sequences succeed
- D. The factory replaces bus_sequencer with sys_vseqr after start returns
