vhdl_reference_93:predefined_attributes

Predefined attributes

Kind type
Prefix any type or subtype T
Result type base type of T
Restrictions This attribute can only be used as a prefix for the names of other attributes, e.g., T'BASE'LEFT.
Kind value
Prefix any scalar type or subtype T
Result type same type as T
Result left bound of T
Kind value
Prefix any scalar type or subtype T
Result type same type as T
Result right bound of T
Kind value
Prefix any scalar type or subtype T
Result type same type as T
Result upper bound of T
Kind value
Prefix any scalar type or subtype T
Result type same type as T
Result lower bound of T
Kind value
Prefix any scalar type or subtype T
Result type boolean
Result TRUE if T is defined with an ascending range; FALSE otherwise.
Kind function
Prefix any scalar type or subtype T
Parameter expression whose type is the base type of T
Result type string
Result The string of the parameter value. Preferably lower case letters are used without additional chars (Exception: Extended Identifier → \ ; Character Literal → `). Physical types are represented with the primary unit, except the type time. There the current resolution limit of the simulator determine the unit. Numbers of type real are represented up to R number right of the decimal point. Unnecessary zeros are left out. The replacement characters of See Replacing characters are not allowed.
Restrictions The type of the parameter have to be of the subtype of the Prefix.
Kind function
Prefix any scalar type or subtype T
Parameter expression of type string
Result type base type of T
Result Value of T whose string representation is X. Additional leading and trailing whitespaces are allowed and ignored. Numerical types are represented as numbers with any valid base. Physical types are represented with any valid unit. The replacement characters of See Replacing characters are allowed.
Restrictions The parameter have to be a valid string representation of a literal of type T.
Kind function
Prefix any discrete or physical type or subtype T
Parameter expression with a base type of T
Result type universal_integer
Result position of the parameter value
Kind function
Prefix any discrete or physical type or subtype T
Parameter expression of an integer type
Result type base type of T
Result value of the element whose positional number = X
Restrictions An error occurs if the result does not belong to the range T'LOW to T'HIGH.
Kind function
Prefix any discrete or physical type or subtype T
Parameter expression whose base type is of the type T
Result type base type of T
Result value of the element whose positional number = X+1
Restrictions An error occurs if X=T'HIGH or if X does not belong to the range T'LOW to T'HIGH.
Kind function
Prefix any discrete or physical type or subtype T
Parameter expression whose base type is of the type T
Result type base type of T
Result value of the element whose positional number = X-1
Restrictions An error occurs if X=T'LOW or if X does not belong to the range T'LOW to T'HIGH.
Kind function
Prefix any discrete or physical type or subtype T
Parameter expression whose base type is of the type T
Result type base type of T
Result value of the element which is left of the element which is addressed by X
Restrictions An error occurs if X=T'LEFT or if X does not belong to the range T'LOW to T'HIGH.
Kind function
Prefix any discrete or physical type or subtype T
Parameter expression whose base type is of the type T
Result type base type of T
Result value of the element which is right of the element which is addressed by X
Restrictions An error occurs if X=T'RIGHT or if X does not belong to the range T'LOW to T'HIGH.
Kind function
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter it defaults to 1.
Result type type of the left bound of the Nth index range of A
Result left bound of the Nth index range of A
Kind function
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter default value 1 is used.
Result type type of the right bound of the Nth index range of A
Result right bound of the Nth index range of A
Kind function
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter it defaults to 1.
Result type type of the upper bound of the Nth index range of A
Result upper bound of the Nth index range of A
Kind function
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter it defaults to 1.
Result type type of the lower bound of the Nth index range of A
Result lower bound of the Nth index range of A
Kind range
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter it defaults to 1.
Result type type of the Nth index range of A
Result The range A'RIGHT(n) to A'LEFT(n) for a rising or A'RIGHT(n) downto A'LEFT(n) for a descending direction of the Nth index range of A.
Kind range
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter it defaults to 1.
Result type type of the Nth index range of A
Result The range A'RIGHT(n) downto A'LEFT(n) for a rising or A'RIGHT(n) to A'LEFT(n) for a descending direction of the Nth index range of A.
Kind value
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter it defaults to 1.
Result type universal_integer
Result number of values in the Nth index range
Kind value
Prefix any prefix which is suitable as an array object, an alias of it or a conditional array-subtype
Parameter locally static expression of the type universal_integer whose value must not exceed the dimension of A. If there is no parameter it defaults to 1.
Result type boolean
Result TRUE if the Nth index range of A is defined with an ascending range; FALSE otherwise.
Kind signal
Prefix any signal
Parameter Static expression of the type TIME which provides a value > 0. If t is missing the it defaults to 0.
Result type base type of S
Result a signal delayed by t time units, equivalent to S
Kind signal
Prefix any signal
Parameter Static expression of the type TIME which provides a value > 0. If t is missing the it defaults to 0.
Result type boolean
Result A signal which has the value TRUE if there has been no event at S for t time units; otherwise it has the value FALSE.
Kind signal
Prefix any signal
Parameter Static expression of the type TIME which provides a value > 0. If t is missing the it defaults to 0.
Result type boolean
Result A signal that has the value TRUE when S has been quiet for t time units; otherwise it has the value FALSE.
Kind signal
Prefix any signal
Result type bit
Result A signal whose value is inverted in each simulation cycle in which the signal S is activated.
Restrictions A description must not depend on the initial value of S'TRANSACTION.
Kind function
Prefix any signal
Result type boolean
Result A signal which has the value TRUE when there has been an event at S in the current simulation cycle; otherwise it has the value FALSE
Kind function
Prefix any signal
Result type boolean
Result A signal which has the value TRUE when S is active in the current simulation cycle; otherwise it has the value FALSE.
Kind function
Prefix any signal
Result type time
Result The amount of time that has passed since the last event occurred on signal S.
Kind function
Prefix any signal
Result type time
Result The amount of time that has passed since S last was active.
Kind function
Prefix any signal
Result type base type of S
Result The value of S immediately before the last change
Kind function
Prefix any signal
Result type boolean
Result S = scalar: FALSE if the current value of the driver of S in the current process is determined by the null transaction; TRUE otherwise.
S = composite: TRUE if for every subelement R of S R'DRIVING is TRUE. FALSE otherwise.
S = null slice: S'DRIVING=TRUE.
Restrictions This attribute is available only from within a process, a concurrent statement with an equivalent process or a subprogram. Is S a port then the port must have the mode inout, out or buffer. If the attribute name appears in a subprogram body then it have to be a declarative item contained within a process statement and S have to be a formal parameter of the given subprogram or of a parent of that subprogram. The formal parameter of the subprogram has then to be of mode inout or out.
Kind function
Prefix any signal
Result type base type of S
Result S = scalar: Current value of the driver of S in the current process
S = composite: Corresponding aggregate.
S = null slice: null slice.
Restrictions This attribute is available only from within a process, a concurrent statement with an equivalent process or a subprogram. Is S a port then the port must have the mode inout, out or buffer. If the attribute name appears in a subprogram body then it have to be a declarative item contained within a process statement and S have to be a formal parameter of the given subprogram or of a parent of that subprogram. The formal parameter of the subprogram has then to be of mode inout or out. S'DRIVING has to be TRUE at the time S'DRIVING_VALUE is evaluated.
Kind value
Prefix any named entity (see See Attribute specification)
Result type string
Result The simple name, character literal or operator symbol of the named entity, without leading or trailing whitespace or quotations marks. (Exception: character literal → ' and extended identifier → \). Except for extended identifiers lower case characters are used.
Kind value
Prefix any named entity (see See Attribute specification)) other then the local ports and generics of a component declaration.
Result type string
Result The complete hierarchical path including instantiated entities beginning at the current level downto the name object.
Kind value
Prefix any named entity (see See Attribute specification)) other then the local ports and generics of a component declaration.
Result type string
Result The complete hierarchical path excluding instantiated entities beginning at the root level downto the name object.
Kind value
Prefix any block or entity architecture
Result type boolean
Result A value which is TRUE if the block or respectively the architecture contains no component instantiation; otherwise the value is FALSE.
Kind value
Prefix any block or entity architecture
Result type boolean
Result A value which is TRUE if the block or respectively the architecture contains neither a passive process statement nor a concurrent statement with a corresponding process statement; otherwise the value is FALSE.