|
-
- class write_sequence_fixed extends uvm_sequence#(axi_seq_item);
- `uvm_object_utils(write_sequence)
- axi_seq_item txn;
- function new(string name = "write_sequence");
- super.new(name);
- endfunction
- virtual task body();
- `uvm_info(get_type_name(), $sformatf("//---------------- FIXED SEQUENCE is started -----------------//"), UVM_MEDIUM)
- txn = axi_seq_item::type_id::create("txn");
- start_item(txn);
- assert(txn.randomize() with {awburst=2'b00;awlen=3;awsize=4};} );//FIXED
- txn.wr_rd=1;
- finish_item(txn);
- endtask
- endclass
- class write_sequence_incremental extends uvm_sequence#(axi_seq_item);
- `uvm_object_utils(write_sequence)
- axi_seq_item txn;
- function new(string name = "write_sequence");
- super.new(name);
- endfunction
- virtual task body();
- `uvm_info(get_type_name(), $sformatf("//---------------- INCREMENTAL SEQUENCE is started -----------------//"), UVM_MEDIUM)
- txn = axi_seq_item::type_id::create("txn");
- start_item(txn);
- assert(txn.randomize() with {awburst=2'b10;awaddr==awaddr+2**awsize};} );//INCREMENTAL
- txn.wr_rd=1;
- finish_item(txn);
- endtask
- endclass
- class write_sequence_wrap extends uvm_sequence#(axi_seq_item);
- `uvm_object_utils(write_sequence)
- axi_seq_item txn;
- function new(string name = "write_sequence");
- super.new(name);
- endfunction
- virtual task body();
- `uvm_info(get_type_name(), $sformatf("//---------------- WRAP SEQUENCE is started -----------------//"), UVM_MEDIUM)
- txn = axi_seq_item::type_id::create("txn");
- start_item(txn);
- assert(txn.randomize() with {awburst=2'b10;awlen=3;awsize=4};} );//WRAP
- txn.write=1;
- finish_item(txn);
- endtask
- endclass
- class write_sequence extends uvm_sequence#(axi_seq_item);
- `uvm_object_utils(write_sequence)
- axi_seq_item txn;
- function new(string name = "write_sequence");
- super.new(name);
- endfunction
- virtual task body();
- `uvm_info(get_type_name(), $sformatf("//---------------- WRITE SEQUENCE is started -----------------//"), UVM_MEDIUM)
- txn = axi_seq_item::type_id::create("txn");
- start_item(txn);
- assert(txn.randomize() with {foreach(awlen[i]) if(i==awlen+1) wlast==1};} );//for last transfer
- txn.wr_rd=1;
- finish_item(txn);
- endtask
- endclass
|