# {py:mod}`pyuvm._reg.uvm_reg_field` ```{py:module} pyuvm._reg.uvm_reg_field ``` ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`uvm_reg_field ` - ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.__all__ :summary: ``` * - {py:obj}`logger ` - ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.logger :summary: ``` * - {py:obj}`_PREDEFINED_POLICIES ` - ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field._PREDEFINED_POLICIES :summary: ``` ```` ### API ````{py:data} __all__ :canonical: pyuvm._reg.uvm_reg_field.__all__ :value: > ['uvm_reg_field'] ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.__all__ ``` ```` ````{py:data} logger :canonical: pyuvm._reg.uvm_reg_field.logger :value: > 'getLogger(...)' ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.logger ``` ```` ````{py:data} _PREDEFINED_POLICIES :canonical: pyuvm._reg.uvm_reg_field._PREDEFINED_POLICIES :type: set[str] :value: > 'set(...)' ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field._PREDEFINED_POLICIES ``` ```` `````{py:class} uvm_reg_field(name: str = 'uvm_reg_field') :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field Bases: {py:obj}`pyuvm._s05_base_classes.uvm_object` ````{py:attribute} _max_size :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field._max_size :type: typing.ClassVar[int] :value: > 0 ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field._max_size ``` ```` ````{py:attribute} _policy_names :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field._policy_names :type: typing.ClassVar[set[str]] :value: > None ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field._policy_names ``` ```` ````{py:attribute} _reg_field_registry :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field._reg_field_registry :type: typing.ClassVar[dict[str, pyuvm._reg.uvm_reg_field.uvm_reg_field]] :value: > 'dict(...)' ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field._reg_field_registry ``` ```` ````{py:method} configure(parent: pyuvm._reg.uvm_reg.uvm_reg, size: int, lsb_pos: int, access: str, volatile: bool, reset: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, has_reset: bool = None, is_rand: bool = None, individually_accessible: bool = None, **kwargs) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.configure ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.configure ``` ```` ````{py:method} get_full_name() -> str :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_full_name ```` ````{py:method} get_parent() -> pyuvm._reg.uvm_reg.uvm_reg :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_parent ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_parent ``` ```` ````{py:method} get_register() -> pyuvm._reg.uvm_reg.uvm_reg :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_register ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_register ``` ```` ````{py:method} get_lsb_pos() -> int :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_lsb_pos ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_lsb_pos ``` ```` ````{py:method} get_n_bits() -> int :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_n_bits ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_n_bits ``` ```` ````{py:method} get_max_size() -> int :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_max_size :staticmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_max_size ``` ```` ````{py:method} set_access(mode: str) -> str :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_access ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_access ``` ```` ````{py:method} set_rand_mode(rand_mode: bool) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_rand_mode ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_rand_mode ``` ```` ````{py:method} define_access(name: str) -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.define_access :staticmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.define_access ``` ```` ````{py:method} get_access(map: pyuvm._reg.uvm_reg_map.uvm_reg_map = None) -> str | None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_access ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_access ``` ```` ````{py:method} is_known_access(map: pyuvm._reg.uvm_reg_map.uvm_reg_map = None) -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.is_known_access ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.is_known_access ``` ```` ````{py:method} set_volatility(volatile: bool) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_volatility ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_volatility ``` ```` ````{py:method} is_volatile() -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.is_volatile ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.is_volatile ``` ```` ````{py:method} get_field_by_full_name(name: str) -> pyuvm._reg.uvm_reg_field.uvm_reg_field :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_field_by_full_name :staticmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_field_by_full_name ``` ```` ````{py:method} set_field(value: int) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_field ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_field ``` ```` ````{py:method} set(value: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, fname: str = '', lineno: int = 0) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set ``` ```` ````{py:method} get(fname: str = '', lineno: int = 0) -> pyuvm._reg.uvm_reg_model.uvm_reg_data_t :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get ``` ```` ````{py:method} get_mirrored_value(fname: str = '', lineno: int = 0) -> pyuvm._reg.uvm_reg_model.uvm_reg_data_t :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_mirrored_value ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_mirrored_value ``` ```` ````{py:method} reset(kind: str = 'HARD') -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.reset ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.reset ``` ```` ````{py:method} get_reset(kind: str = 'HARD') -> pyuvm._reg.uvm_reg_model.uvm_reg_data_t :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_reset ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_reset ``` ```` ````{py:method} has_reset(kind: str = 'HARD', delete: bool = False) -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.has_reset ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.has_reset ``` ```` ````{py:method} set_reset(value: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, kind: str = 'HARD') -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_reset ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_reset ``` ```` ````{py:method} needs_update() -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.needs_update ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.needs_update ``` ```` ````{py:method} write(value: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, path: pyuvm._reg.uvm_reg_model.uvm_door_e = uvm_door_e.UVM_DEFAULT_DOOR, map: pyuvm._reg.uvm_reg_map.uvm_reg_map = None, parent: pyuvm._s14_15_python_sequences.uvm_sequence_base = None, prior: int = -1, extension: pyuvm._s05_base_classes.uvm_object = None, fname: str = '', lineno: int = 0) -> pyuvm._reg.uvm_reg_model.uvm_status_e :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.write :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.write ``` ```` ````{py:method} read(path: pyuvm._reg.uvm_reg_model.uvm_door_e = uvm_door_e.UVM_DEFAULT_DOOR, map: pyuvm._reg.uvm_reg_map.uvm_reg_map = None, parent: pyuvm._s14_15_python_sequences.uvm_sequence_base = None, prior: int = -1, extension: pyuvm._s05_base_classes.uvm_object = None, fname: str = '', lineno: int = 0) -> tuple[pyuvm._reg.uvm_reg_model.uvm_status_e, pyuvm._reg.uvm_reg_model.uvm_reg_data_t] :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.read :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.read ``` ```` ````{py:method} poke(value: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, kind: str = '', parent: pyuvm._s14_15_python_sequences.uvm_sequence_base = None, extension: pyuvm._s05_base_classes.uvm_object = None, fname: str = '', lineno: int = 0) -> pyuvm._reg.uvm_reg_model.uvm_status_e :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.poke :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.poke ``` ```` ````{py:method} peek(kind: str = '', parent: pyuvm._s14_15_python_sequences.uvm_sequence_base = None, extension: pyuvm._s05_base_classes.uvm_object = None, fname: str = '', lineno: int = 0) -> tuple[pyuvm._reg.uvm_reg_model.uvm_status_e, pyuvm._reg.uvm_reg_model.uvm_reg_data_t] :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.peek :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.peek ``` ```` ````{py:method} mirror(check: pyuvm._reg.uvm_reg_model.uvm_check_e = uvm_check_e.UVM_NO_CHECK, path: pyuvm._reg.uvm_reg_model.uvm_door_e = uvm_door_e.UVM_DEFAULT_DOOR, map: pyuvm._reg.uvm_reg_map.uvm_reg_map = None, parent: pyuvm._s14_15_python_sequences.uvm_sequence_base = None, prior: int = -1, extension: pyuvm._s05_base_classes.uvm_object = None, fname: str = '', lineno: int = 0) -> pyuvm._reg.uvm_reg_model.uvm_status_e :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.mirror :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.mirror ``` ```` ````{py:method} set_compare(check: pyuvm._reg.uvm_reg_model.uvm_check_e) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_compare ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_compare ``` ```` ````{py:method} get_compare() -> pyuvm._reg.uvm_reg_model.uvm_check_e :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_compare ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_compare ``` ```` ````{py:method} is_indv_accessible(path: pyuvm._reg.uvm_reg_model.uvm_door_e, local_map: pyuvm._reg.uvm_reg_map.uvm_reg_map) -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.is_indv_accessible :abstractmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.is_indv_accessible ``` ```` ````{py:method} predict(value: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, be: pyuvm._reg.uvm_reg_model.uvm_reg_byte_en_t = -1, kind: pyuvm._reg.uvm_reg_model.uvm_predict_e = uvm_predict_e.UVM_PREDICT_DIRECT, path: pyuvm._reg.uvm_reg_model.uvm_door_e = uvm_door_e.UVM_FRONTDOOR, map: pyuvm._reg.uvm_reg_map.uvm_reg_map = None, fname: str = '', lineno: int = 0) -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.predict ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.predict ``` ```` ````{py:method} _predict(cur_val: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, wr_val: pyuvm._reg.uvm_reg_model.uvm_reg_data_t, map: pyuvm._reg.uvm_reg_map.uvm_reg_map) -> pyuvm._reg.uvm_reg_model.uvm_reg_data_t :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field._predict ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field._predict ``` ```` ````{py:method} _update() -> pyuvm._reg.uvm_reg_model.uvm_reg_data_t :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field._update :abstractmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field._update ``` ```` ````{py:method} _check_access(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item, map_info: pyuvm._reg.uvm_reg_map.uvm_reg_map_info) -> bool :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field._check_access :abstractmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field._check_access ``` ```` ````{py:method} do_write(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.do_write :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.do_write ``` ```` ````{py:method} do_read(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.do_read :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.do_read ``` ```` ````{py:method} do_predict(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item, kind: pyuvm._reg.uvm_reg_model.uvm_predict_e = uvm_predict_e.UVM_PREDICT_DIRECT, be: pyuvm._reg.uvm_reg_model.uvm_reg_byte_en_t = -1) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.do_predict ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.do_predict ``` ```` ````{py:method} pre_randomize() -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.pre_randomize :abstractmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.pre_randomize ``` ```` ````{py:method} post_randomize() -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.post_randomize :abstractmethod: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.post_randomize ``` ```` ````{py:method} pre_write(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.pre_write :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.pre_write ``` ```` ````{py:method} post_write(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.post_write :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.post_write ``` ```` ````{py:method} pre_read(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.pre_read :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.pre_read ``` ```` ````{py:method} post_read(rw: pyuvm._reg.uvm_reg_item.uvm_reg_item) -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.post_read :abstractmethod: :async: ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.post_read ``` ```` ````{py:method} field_lock() -> None :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.field_lock ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.field_lock ``` ```` ````{py:method} get_value() -> pyuvm._reg.uvm_reg_model.uvm_reg_data_t :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_value ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_value ``` ```` ````{py:method} set_response(f_response) :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_response ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_response ``` ```` ````{py:method} get_response() :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.get_response ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.get_response ``` ```` ````{py:method} set_throw_error_on_read(teor=False) :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_throw_error_on_read ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_throw_error_on_read ``` ```` ````{py:method} set_throw_error_on_write(teow=False) :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_throw_error_on_write ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_throw_error_on_write ``` ```` ````{py:method} set_debug(error_on_read=None, error_on_write=None) :canonical: pyuvm._reg.uvm_reg_field.uvm_reg_field.set_debug ```{autodoc2-docstring} pyuvm._reg.uvm_reg_field.uvm_reg_field.set_debug ``` ```` `````