| Author |
Message |
CADDevil
Joined: 26 Jun 2001 Posts: 122
|
03 Oct 2003 21:27 Xilinx Spartan2 BlockRAM initialisation ? |
|
|
|
Hello,
I have one problem.
I am trying to simulate and synthetise the PIC16F84 into Spartan2 FPGA. The implementation of the PIC (I got it from Opencores) use BlockRAM as a program memory.
I would like to know, how I can convert the PIC program (written in MPLAB) from HEX format into Verilog source which I can use for BlockRAM initialisation during emulation and during synthesis and bitstream generation.
I tried to search the Xilinx Web site, but I did not find any solution.
Thx for any help
CADDevil
|
|
| Back to top |
|
 |
Ace-X
Joined: 25 Jan 2002 Posts: 594 Helped: 26
|
04 Oct 2003 14:36 |
|
|
|
Hello!
Check these two links:
1. http://www.xilinx.com/bvdocs/appnotes/xapp173.pdf
2. http://support.xilinx.com/xlnx/xweb/xil_tx_display.jsp?sTechX_ID=krs_blockRAM
They have answers for your question.
Good luck!
Ace-X.
|
|
| Back to top |
|
 |
CADDevil
Joined: 26 Jun 2001 Posts: 122
|
04 Oct 2003 23:58 Re: Xilinx Spartan2 BlockRAM initialisation ? |
|
|
|
Thx,
maybe my question was a bit unclear.
I know, how to do it manually. But I am trying to find some way how to do it automatically.
I know that there is Xilinx utility DATA2BRAM, but I am not able to make it work.
Because DATA2BRAM accept either .elf or .mem files as an input, I wrote a simple utility, which convert PIC binary image to .MEM file, I wrote the BlockRAM definition file .BMM which is syntactically correct, but when I am trying to use DATA2BRAM, I am getting error:
C:\bin2map>data2mem -bm test.bmm -bd test.mem -o v test.v -u -p xc2s200 -log test.log
ERROR:Data2MEM:29 - Inconsistent address space size in ADDRESS_BLOCK 'test_rom'.
ADDRESS_BLOCK was defined as 0x000000400 bytes, but the devices total 0x000000000 bytes.
Do you have any idea what can be wrong ?
Thx CADDevil
|
|
| Back to top |
|
 |