# Specman UVM: What is the difference between write_reg { .field == 2;}; and write_reg_fields?

I'm working with vr_ad package for e. My question is: What is the difference between 2 following macros for modifying registers (suppose foo register consists of 2 fields field1 and field2):

1)

write_reg foo {.field1 == 1;};


2)

write_reg_fields foo {.field1 = 1};


I really appreciate any help