OpenCores
URL https://opencores.org/ocsvn/uart2bus_testbench/uart2bus_testbench/trunk

Subversion Repositories uart2bus_testbench

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /uart2bus_testbench
    from Rev 10 to Rev 11
    Reverse comparison

Rev 10 → Rev 11

/trunk/tb/agent/coverage/uart_coverage.svh
89,9 → 89,11
extern function void build_phase(uvm_phase phase);
 
extern function void connect_phase (uvm_phase phase);
extern task run_phase (uvm_phase);
 
 
extern task run_phase (uvm_phase);
endclass:uart_coverage
 
 
120,6 → 122,7
if(trans._mode == text)
begin
text_mode_cov.sample();
uvm_resource_db#(int)::write_by_name("coverage_cloud","text_coverage",text_mode_cov.get_coverage());
end
else if (trans._mode == binary)
begin
126,4 → 129,4
binary_mode_cov.sample();
end
end
endtask:run_phase
endtask:run_phase
/trunk/tb/test/uart_test.svh
108,6 → 108,7
printer.knobs.depth = 3;
uvm_resource_db#(int)::set("Reporting","matched_packets",0,null);
uvm_root::get().set_timeout(10s);
uvm_root::get().finish_on_completion=1'b0;
endfunction // TE_configuration
task run_phase (uvm_phase phase);
126,7 → 127,11
$display("--------------------------------------------------");
`uvm_info("FINAL STATUS",$sformatf("The number of matched packets are %0d",matched),UVM_NONE);
endfunction // report_phase
 
function void final_phase (uvm_phase phase);
$stop;
endfunction // final_phase
endclass:uart_base_test
 
//-------------------------------------------------------------------------------------------------
425,6 → 430,8
rand int unsigned command_number;
 
bit coverage_hit = 1'b0;
seq_1p1 seq1;
seq_1p2 seq2;
seq_1p3 seq3;
492,12 → 499,14
seq24 = seq_2p11::type_id::create("seq24");
seq25 = seq_2p12::type_id::create("seq25");
seq26 = seq_2p13::type_id::create("seq26");
uvm_resource_db #(int)::set("coverage_cloud","text_coverage",0,null);
//uvm_resource_db #(int)::set("coverage_cloud","text_coverage",0,null);
endfunction:build_phase
 
task run_phase (uvm_phase phase);
super.run_phase(phase);
phase.raise_objection(this);
repeat (100)
while (coverage_hit==1'b0)
begin
randomize();
case (command_number)
609,8 → 618,16
begin
`uvm_fatal("OUT OF RANGE","Command Number is Out of Range")
end
endcase
endcase // case (command_number)
evaluate_coverage();
end
phase.drop_objection(this);
endtask:run_phase
 
function void evaluate_coverage();
int text_coverage;
uvm_resource_db#(int)::read_by_name("coverage_cloud","text_coverage",text_coverage);
if(text_coverage >= 95) coverage_hit=1'b1;
endfunction // evaluate_coverage
endclass:text_mode_test
/trunk/tb/uart_top.sv
104,9 → 104,9
uvm_config_db#(virtual rf_interface)::set(uvm_root::get(), "*", "rf_inf",rf_inf);
 
uvm_config_db#(virtual uart_arbiter)::set(uvm_root::get(),"*","arb_inf",arb_inf);
run_test("write_command_mode");
run_test("text_mode_test");
end
endmodule:uart_top_tb
endmodule:uart_top_tb

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.