Field editor

The field editor is used to edit the details of a field. For example user may define enumerated values that define the legal bit patterns of the field.

Name is a mandatory identifier for the field. The name must be unique within all the fields of the containing register.

Display name is an optional and used for a more user-friendly identifier.

Description is an optional field for textual description of the field.

Offset is mandatory and describes the starting bit of the field within the containing register.

Width is mandatory and speficies how many bits are included in the field.

Is present is optional and enables/disables a field presence in a register. Value 1 indicates that the field is present in the register whereas value 0 marks the field to be treated as if it does not exist. Is present can be given as a SystemVerilog expression, but it must evaluate to 1 or 0.

Reset value is optional and defines the actual reset value on reset. Reset value uses SystemVerilog syntax for binary values. The number of bits must be equal to the field size.

Reset mask is optional and defines the bits that have a known reset value. Bit value of 1 means that the corresponding bit has a known reset value whereas 0 means that the value is unknown. Reset mask uses SystemVerilog syntax for binary values e.g. 'b1011, 4'b1011, and 4'b10_11 are all valid values. The number of bits must be equal to the field size.

Volatile is optional and indicates that the field may change its value without write operations.

Access is optional and specifies the accessability of the field. The possible values are:

  • read-write. Both read and write transactions may have an effect on this field. Write transactions may affect the contents of the field, and read transactions return a value related to the field.
  • read-only. A read transaction to this field returns a value related to the value in the field. A write transaction to this field has undefined results.
  • write-only. A write transaction to this address affects the contents of the field. A read transaction to this field has undefined results.
  • read-writeOnce. Both read and write transactions may have an effect on this field. Only the first write transaction may affect the contents of the field, and read transactions return a value related to the values in the field.
  • writeOnce. Only the first write transaction affects the contents of this field.

Modified write value is optional and describes how the data in the field is manipulated on a write operation. The basic operation without any setting is to store the written value 'as is'. Moreover, both bitwise and field-wise set/clear/toggle is also possible. The possible values are:

  • oneToClear. Each written '1' bit will assign the corresponding bit to '0'.
  • oneToSet. Each written '1' bit will assign the corresponding bit to '1'.
  • oneToToggle. Each written '1' bit will toggle the corresponding bit.
  • zeroToClear, zeroToSet, zeroToToggle. Similar to previous ones, except that written '0' bit triggers the action.
  • clear. Each write operation will clear all bits in the field to '0'.
  • set. Each write operation will set all bits in the field to '1'.
  • modify. Indicates that after a write operation, all bits in the field can be modified.
  • '  ' (empty setting). Indicates that the value written to a field is the value stored in the field. This is the default value.

Read action is optional and specifies if some action happens to the field after a read operation. By default the field is unmodified. The possible values are:

  • clear. All bits in the field are cleared to '0' after a read operation.
  • set. All bits in the field are set to '1' after a read operation.
  • modify. Indicates that the bits of the field are modified in some way after a read operation.
  • '  ' (empty setting). Indicates that the field is not modified after a read operation. This is the default.

Testable is optional and specifies if the field is testable by an automated register test.

Test constraint is optional and specifies the constaints for the automated tests for the field. The possible values are:

  • unConstrained. There are no constraints for the written or read data. This is the default setting.
  • Restore. The field value must be restored to its original value before accessing another register.
  • WriteAsRead. The data written to a field must be same that was read previously from the field
  • ReadOnly. Indicates that the field can only be read.

The write value constraints are used to define what are the legal values user may write to a field. The possible values are:

  • No constraints. Indicates that there are no constraints to values to be written.
  • Write as read. Inidcates that only legal values to be written are the same that were previously read from the field.
  • Use enumerated values. Indicates that the defined enumerated values are the only legal values that can be written.
  • Set minimum and maximum limits. Indicates that the minimum and maximum limits can be set for the value written to the field.

Enumerations table

The enumerated values table enables the defining of bit patterns that can be identified by a name. This can be used to define the legal bit patterns for a field or to define some default settings to help configuration of the field.

Each enumeration contains a unique name of the enumeration (mandatory), an optional display name and description.

Value defines the value to assign to the specified name (mandatory).

Usage defines the software access condition under which this name value pair is valid. Possible values are: read, write and read-write.