cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
embedded
Advisor
Advisor
9,860 Views
Registered: ‎06-09-2011

Data2MEM doesn't initialize bit file correctly

Hi,

I am using ISE14.7 tool. I have a mixed ISE,EDK project. I am going to make mcs file so I need to initialize BRAM contents of bit file. I run DATA2MEM command as is described in user manual:

data2mem -bm my.bmm -bd code.elf -bt my.bit -o b new.bit

However, it doesn't change the BRAM contents of new bit file.

I am wondering how I can insert elf file information to my bit file. It seems that neither ISE nor SDK can do it properly.

 

I would appreciate any help and advice.

Hossein

 

Thanks,
Hossein
Tags (3)
0 Kudos
Reply
6 Replies
htsvn
Xilinx Employee
Xilinx Employee
9,836 Views
Registered: ‎08-02-2007

hi

 

there is a data2mem debugging guide that will be helpful in debugging this problem further.

 

did you get a chance to look at this? http://www.xilinx.com/Attachment/Xilinx_Answer_46945_Data2Mem_Usage_and_Debugging_Guide.pdf

 

-hem

----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos
Reply
Anonymous
Not applicable
9,829 Views

One quick test to try is to check that the BMM memory location matches what you have in your ELF.

In your data2mem command you are not using a tag, so this will assume you are usng the first block found in the BMM file.

Note: you may just have one anyway, which is fine too.

 

So, lets assume that this address range goes from 0x00000000 to 0x00001fff. If you dissassemble your ELF file

Note: you can disassemble usng the command below (or open the linker script):

mb-objdump -S path/to/elf/file -d > dump.txt

 

Check the location where your application is placed in BRAM. this needs to match the range in your BMM file.

 

Hope this helps?

0 Kudos
Reply
embedded
Advisor
Advisor
9,823 Views
Registered: ‎06-09-2011

Do I have to use tag microblaze_0 ?

I didn't see any note in this regard in Data2Mem user guide. However, when I look into the SDK log file I see that it uses this tag. What is it used for?

Thanks,
Hossein
0 Kudos
Reply
Anonymous
Not applicable
9,816 Views

The tag is used to identify what block memory to place the memory into. If you just have one block then you are ok. The tag will be whatever the range is called in the BMM file
0 Kudos
Reply
feed1885
Observer
Observer
2,983 Views
Registered: ‎10-27-2013

Hi, Hossein

    Do you have solved your problem,  I have the same question now.

Best Regards.

 

Pofeng1885

0 Kudos
Reply
embedded
Advisor
Advisor
2,971 Views
Registered: ‎06-09-2011

Sorry, it's been a long time. I don't remember what kind of workaround I used.

Thanks,
Hossein
0 Kudos
Reply