Hi,
i'm using Block Memory Generator 2.1 for a 16bit * 1024 RAM implemented in virtex4 BRAM and want to initialize the data with a *.coe file. But if i dump the data from the *.bit file with "data2mem -d" it doesn't match completely with the data from the *.ceo file. for example:
- .ceo file: memory_initialization_radix=16; memory_initialization_vector= FFFF, FFFF, 0201, 0403, 0605, 0807, 1009, ...
data2mem dump:
7F FF 7F FF 01 01 02 03 03 05 04 07 09 09It seems that the Block Memory Generator does a wrong mapping of the 16 bit wide ram into the 16 + 2 wide (due to parity bits) BRAM or is this an error of data2mem?
My *.bmm File looks like this: ADDRESS_SPACE bram1_space RAMB16 [0x00000000:0x000017FF] BUS_BLOCK ...BRAM[15:0] PLACED = X2Y12; END_BUS_BLOCK; END_ADDRESS_SPACE;
If i use data2mem to insert BRAM initialization data from a *.mem file into the
*.bit file, the data seems to be correct.