30 lines
816 B
Systemverilog
30 lines
816 B
Systemverilog
`ifndef CALC_SIMPLE_SEQ_SV
|
||
`define CALC_SIMPLE_SEQ_SV
|
||
|
||
class calc_simple_seq extends calc_base_seq;
|
||
|
||
`uvm_object_utils (calc_simple_seq)
|
||
|
||
function new(string name = "calc_simple_seq");
|
||
super.new(name);
|
||
endfunction
|
||
|
||
virtual task body();
|
||
// simple example - just send one item
|
||
calc_seq_item calc_it;
|
||
// prvi korak kreiranje transakcije
|
||
calc_it = calc_seq_item::type_id::create("calc_it");
|
||
// drugi korak − start
|
||
start_item(calc_it);
|
||
// treci korak priprema
|
||
// po potrebi moguce prosiriti sa npr. inline ogranicenjima
|
||
assert (calc_it.randomize() with {calc_it.cmd==1; calc_it.operand1==3;});
|
||
// cetvrti korak − finish
|
||
finish_item(calc_it);
|
||
|
||
endtask : body
|
||
|
||
endclass : calc_simple_seq
|
||
|
||
`endif
|