When the depth of SPRAM, SPROM relates to the input address width (a_w) in the following way: 2^(a_w-1)<depth<2^(a_w), the SysGen SPRAM and SPROM block should generate the core using the depth value I entered. This change would reduce the numbers of Block RAM primitives needed by the design.
Also, the Resource Estimator for Single-Port Block RAM and ROM should use the depth value specified in the GUI instead of deriving it from the address width. However, this is not happening.
This has been fixed in System Generator 3.1 Service Pack 1, available at: