When synthesizing an instantiated RAMB16_S1_S1 with language template in Project Navigator, XST fails:
Analyzing hierarchy for entity <my_entity> in library <work> (architecture <my_arch>).
ERROR:Xst - Xst_HdlType_Imp_Matrix::GetRightDynamic : Right bound is not constrained for dimension 0.
ERROR:Xst:2683 - Unexpected error found while building hierarchy.
The INIT and SRVAL value are written as a "0" in a generic map instead of X"0" as in a component declaration. XST should support this syntax.
To work around the problem, add "x" before "0" as detailed below::
RAMB16_S1_inst : RAMB16_S1_S1
generic map (
INIT => x"0", -- Value of output RAM registers at startup
SRVAL => x"0",
This will be fixed in a future version of XST.