Register editor is used to edit the details of a single register and the possible bit fields within the register. A bit field may contain just one bit, the whole register or something in between.
Name is a mandatory identifier for the register. The name must be unique within all the registers of the containing address block.
Display name is an optional and used for a more user-friendly identifier.
Description is an optional field for textual description of the register.
Offset is a mandatory value to specify the location of the register from the start of the containing address block expressed as address units.
Width is mandatory and defines the number of data bits the register contains. Width must be less or equal to the width of the containing address block.
Dimension is optional and assigns an array dimension to the register. The register will be repeated in the address block as many times as indicated by the dimension value. Dimension 0 means that the register is not an array and will appear exactly once.
Is present is optional and allows the enabling/disabling of a register presence in an address block. Value 1 indicates that the register is present in the address block whereas value 0 marks the register 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.
Volatile is optional and indicates whether the register value may change without a write operation to it.
Access is optional and specifies the accessability of the register. The possible values are:
The fields table enables the user to define the register bit fields. A register must contain at least one field.
Name is a mandatory identifier for the field.
Offset is a mandatory value to specify the starting bit of the field within the register.
Width is a mandatory value to specify how many bits are included in the field.
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 there is no guarantee that two consecutive read operations will return the same value, as the field may change its value without write operations i.e. as a result of an interrupt.
Access is optional and specifies the accessibility of the field. The possible values are:
Modified write value is optional anddescribes 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 possbile. The possible values are:
Read action specifies if some action happens to the field after a read operation. By default the register is unmodified. The possible values are:
Testable is optional and specifies if the field is testable by an automated register test.
Test constraint is optional and specifies the constraints for the automated tests for the field. The possible constraint values are:
Is present is optional and enables/disables a field's 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 did not exist. Is present can be given as a SystemVerilog expression, but it must evaluate to 1 or 0.
Description is an optional field for textual description of the field.