blob: 37f557c19d89413ad07d476d9597356587411ad9 [file]
// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
class key_sideload_item #(
parameter type KEY_T = keymgr_pkg::hw_key_req_t
) extends uvm_sequence_item;
localparam int KeyWidth = ($bits(KEY_T)-1)/keymgr_pkg::Shares;
// random variables
rand bit valid;
rand bit [KeyWidth-1:0] key0;
rand bit [KeyWidth-1:0] key1;
rand int unsigned rsp_delay = 1;
constraint rsp_delay_constraint_c {rsp_delay inside {[1:10]};}
`uvm_object_utils_begin(key_sideload_item#(KEY_T))
`uvm_field_int(valid, UVM_DEFAULT)
`uvm_field_int(key0, UVM_DEFAULT)
`uvm_field_int(key1, UVM_DEFAULT)
`uvm_field_int(rsp_delay, UVM_DEFAULT)
`uvm_object_utils_end
`uvm_object_new
endclass