VHDL Language Support Exceptions - 2023.2 English

Vivado Design Suite User Guide: Logic Simulation (UG900)

Document ID
UG900
Release Date
2023-10-18
Version
2023.2 English

Certain language constructs are not supported by the Vivado simulator. The following table lists the VHDL language support exceptions.

Table 1. VHDL Language Support Exceptions
Supported VHDL Construct Exceptions
abstract_literal Floating point expressed as based literals are not supported.
alias_declaration

Alias to non-objects are in general not supported; particularly the following:

  • Alias of an alias
  • Alias declaration without subtype_indication
  • Signature on alias declarations
  • Operator symbol as alias_designator
  • Alias of an operator symbol
  • Character literals as alias designators
alias_designator

Operator_symbol as alias_designator

Character_literal as alias_designator

association_element Globally, the locally static range is acceptable for taking slice of an actual in an association element.
attribute_name Signature after prefix is not supported.
binding_indication Binding_indication without use of entity_aspect is not supported.
bit_string_literal Empty bit_string_literal (" ") is not supported.
block_statement Guard_expression is not supported. For example, guarded blocks, guarded signals, guarded targets, and guarded assignments are not supported.
choice Aggregate used as a choice in case statement is not supported.
concurrent_assertion_statement Postponed is not supported.
concurrent_signal_assignment_statement Postponed is not supported.
concurrent_statement Concurrent procedure call containing wait statement is not supported.
conditional_signal_assignment Keyword guarded as part of options is not supported as there is no supported for guarded signal assignment.
configuration_declaration Non locally static for generate index used in configuration is not supported.
entity_class Literals, unit, file, and group as entity class are not supported.
entity_class_entry Optional <> intended for use with group templates is not supported.
file_logical_name Although file_logical_name is allowed to be any wild expression evaluating to a string value, only string literal and identifier is acceptable as file name.
function_call Slicing, indexing, and selection of formals is not supported in a named parameter association within a function_call.
instantiated_unit Direct configuration instantiation is not supported.
mode Linkage and Buffer ports are not supported completely.
options Guarded is not supported.
primary At places where primary is used, allocator is expanded there.
procedure_call Slicing, indexing, and selection of formals is not supported in a named parameter association within a procedure_call.
process_statement Postponed processes are not supported.
selected_signal_assignment The guarded keyword as part of options is not supported as there is no support for guarded signal assignment.
signal_declaration The signal_kind is not supported. The signal_kind is used for declaring guarded signals, which are not supported.
subtype_indication Resolved subtype of composites (arrays and records) is not supported.
waveform Unaffected is not supported.
waveform_element Null waveform element is not supported as it only has relevance in the context of guarded signals.