AR# 10123

3.1i XST - ERROR: (VHP_0837) - Index size for dimension 1 of <port_name> is not ##.


Keywords: Foundation, ISE, XST, VHDL, generic, VHP_0837, index, size, dimension, exit, code, 0001, VHDL_0053, 0006, constant, value

Urgency: Standard

General Description:
If a generic is given a default value within a component declaration:

component foo (
generic ( width : integer := 24 );
port (
a : in std_logic_vector( width downto 0 );
b : out std_logic
end component;

this error will result:

ERROR: (VHP_0837). C:\my_code.vhd (Line ##). Index size for dimension 1 of 'a' is not 24.

Furthermore, if the default value for the generic is provided in the component declaration and NOT in the architecture description, the following error occurs:

ERROR: (VHDL_0053). C:\my_code.vhd (Line ##). Constant must have a value : 'width'


As of Foundation ISE release 3.2.03i, XST VHDL does not support the assignment of default values for generics inside component declarations. If a default value is to be specified, it must appear in the architecture description for that component. It is acceptable to forego default values, as long as a generic map is provided in the component instantiation.

NOTE: This problem is fixed in the 4.1i software release.
AR# 10123
Date 08/19/2002
Status Archive
Type General Article