| @@ -0,0 +1,49 @@ | |||||
| // **************************************************************************************** | |||||
| // Directed Test Cases | |||||
| // **************************************************************************************** | |||||
| class burst_test extends uvm_test; | |||||
| `uvm_component_utils(burst_test) | |||||
| burst_env env_h; | |||||
| axi_fixed_sequence fixed_xtn; | |||||
| axi_incr_sequence incr_xtn; | |||||
| axi_wrap_sequence wrap_xtn; | |||||
| virtual apb_if vif; | |||||
| function new(string name="burst_test",uvm_component parent); | |||||
| super.new(name,parent); | |||||
| endfunction | |||||
| function void build_phase(uvm_phase phase); | |||||
| super.build_phase(phase); | |||||
| env_h=burst_env::type_id::create("env_h",this); | |||||
| if (!uvm_config_db#(virtual apb_if)::get(this, "", "vif", vif)) begin | |||||
| `uvm_fatal("build_phase", "No virtual interface specified for this test instance") | |||||
| end | |||||
| uvm_config_db#(virtual apb_if)::set( this, "*", "vif", vif); | |||||
| // `uvm_error("build_phase","top virtual interface failed") | |||||
| endfunction | |||||
| function void end_of_elaboration_phase(uvm_phase phase); | |||||
| uvm_top.print_topology(); | |||||
| endfunction | |||||
| task run_phase(uvm_phase phase); | |||||
| begin | |||||
| seq_h=apb_seq::type_id::create("seq_h"); | |||||
| phase.raise_objection(this); | |||||
| fork | |||||
| fixed_seq_h.start(env_h.agent_h.seqr_h); | |||||
| #100 | |||||
| incr_seq_h.start(env_h.agent_h.seqr_h); | |||||
| #200 | |||||
| wrap_seq_h.start(env_h.agent_h.seqr_h); | |||||
| join | |||||
| phase.drop_objection(this); | |||||
| end | |||||
| endtask | |||||
| endclass | |||||