首先創建register model ral_model_h;
可以使用下面的方式來讀寫寄存器:
uvm_reg temp_reg;
uvm_status_e status;
$cast(temp_reg, ral_model_h.get_reg_by_name("REG_NAME"));
temp_reg.write(status, write_data);
temp_reg.read(status,read_data);
還可以對寄存器的各比特進行設置:
uvm_reg_field temp_field_h;
temp_field_h=temp_reg.get_field_by_name("FIELD_NAME");
temp_field_h.set(write_value);
tempreg.update(status);
temp_field_h.read(status, read_data);
需要注意的是,需要事先調用ral_model_h.reset(),否則寄存器比特位可能不對。