03-08-2009 07:09 PM
Hi I'm running ISE Web edition for Spartan3AN.
I have a design, I want to change the contents of RAMs ( RAMB16_S18_S18 ), much more often than I want to change the RTL design.
The normal way is just to restart a compilation.
This will do synthesis / place and route . . . and will only then create a programming file.
I wondered whether there is a way to convince the tools to just change the contents for a RAM in the programming file without having to
perform all the other steps? (changing a RAM contents doesn't really require a new place and route, as all cells can stay exactly where they are)
Thanks in advance for any suggestions
03-08-2009 07:16 PM
03-08-2009 07:16 PM
03-09-2009 11:24 AM
thanks a lot for the answer.
I was reading a lot, but frankly speaking I'm a little stuck.
1.) How to create the .bmm file
I have a design with only one RAMB16_S18_S18 ?
I found some info in one of Ken's articles from 2005 ( http://preview.tinyurl.com/cps944 )
, but I'm not sure, that all steps are still valid.
xdl -ncd2xdl to generate a .xdl file.
Then I grepped for the instantiation:
> inst "pbram/xilram/ram_1024_x_18" "RAMB16BWE",placed BRAMSITE2_BRK_X36Y9 RAMB16_X1Y2 ,
So I assume (but am not sure) my .bmm file should be this:
ADDRESS_SPACE pb1_data RAMB18 INDEX_ADDRESSING [0x00000000:0x000003FF]
pbram/xilram/ram_1024_x_18 [17:0] LOC=X1Y2;
at least calling
data2mem.exe -bm bla.bmm
shows no errors.
2.) how to create a new bit file
Now the next step should be simple, but obviously I'm missing something.
I call from a DOS prompt:
data2mem.exe -bm bla.bmm -bd pb1_ramdata.mem -bt p001_xil.bit -o b new_p001_xil.bit
I get no error message (in fact no output at all)
Searching the directory I do not find the file new_p001_xil.bit
Trying the same from a cygwin prompt gives following error message:
ERROR:Data2MEM:1 - File 'p001_xil.bit' can not be found, or is busy.
However I have no application accessing this memory (at least not hat I know).
What I will do is reboot the system, but I'm afraid, there's still something else which is wrong.
The .mem file has been created manually and looks like:
03-09-2009 11:28 AM
The problem seems to be something completely different.
It seems, that data2mem has problems with following line:
If I remove it, I get a new .bit file
Alternatively I can hange the line to
and I have also success.
This seems really weired.
P.S. I just tried the generation of the bit file.
Whether the contents is ok is something I'll try later on