UVM_RAL Frontdoor write & write_reg

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