When I place BRAMs in the R0C0/X0Y0 location, BitGen writes the "<file>_bd.bmm" file incorrectly. As a result, DATA2BRAM cannot properly update the BRAM contents.
This problem is fixed in the latest 5.1i Service Pack, available at:
The first service pack containing the fix is 5.1i Service Pack 5.1i.
Alternately, to avoid this problem, add the following constraint to your UCF file:
For Virtex-II/Virtex-II Pro devices:
CONFIG PROHIBIT = RAMB16_X0Y0;
For all other families:
CONFIG PROHIBIT = RAMB4_R0C0;