Vivado synthesis supports unconstrained vectors in component declarations.
The main elements of a component instantiation statement are:
•Label: Identifies the instance.
•Association list: Introduced by the reserved port map keyword and ties formal ports of the component to actual signals or ports of the parent design unit. An optional association list is introduced by the reserved generic map keyword and provides actual values to formal generics defined in the component.