In reply to chr_sue:
class apb_reg_block extends uvm_reg_block;
`uvm_object_utils(apb_reg_block)
rand load_register ld_reg;
uvm_reg_map apb_map;
function new(string name = "apb_reg_block");
super.new(name,UVM_NO_COVERAGE);
endfunction
virtual function void build();
//This is for APB_load_register
ld_reg =load_register::type_id::create("load_register");
ld_reg.configure(this);//,null,"");
ld_reg.build();
ld_reg.add_hdl_path_slice("load_register",0,32);
//creating address maps for the declared registers
apb_map = create_map("apb_map",'h0,4,UVM_LITTLE_ENDIAN);
default_map = apb_map;
apb_map.add_reg(ld_reg,'h0000,"RW");
add_hdl_path("top.DUT.u_apb_watchdog_frc","RTL");
lock_model();
endfunction
endclass