cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
3,934 Views
Registered: ‎07-11-2017

Embedding BRAM with hex/elf contents

Jump to solution

In my previous projects I was able to embedded hex file content into the Virtex 6 device through the *.bmm file -> ngdbuild -> Implementation run provides *_bd.bmm -> data2mem tool usage in order. Now for current project I am using Virtex 7. For this we have to use Vivado which doesn't take "*.bmm" and gives "*_bd.bmm" file. Even if I manually create the "*_bd.bmm" file and use it with data2mem, the bit seems to be corrupted. Not able to program this bit file into the device.

 

The questions that I have are:

1) Does data2mem support programming Virtex 7 device, in particular XC7V2000T?

2) If I don't use "microblaze" processor in my design and use some other processor. Does Vivado support "embedding BRAM memory with mem/hex/elf content" in my design? I see "write_bmm, write_mem_info, updatemem tools and commands not supporting this flow".

 

VinothS

Tags (1)
0 Kudos
1 Solution

Accepted Solutions
Highlighted
Moderator
Moderator
6,394 Views
Registered: ‎07-01-2015

Hi @vsekar,

 

You have to generate a .mmi file to define the address map. If it's not generated by tool you have to create the .mmi file manually.

Then you can make use of updatemem to load the elf file contents to BRAM.

Please go through https://www.xilinx.com/support/answers/63041.html 

It describes the complete steps. You can confirm BRAM contents using -debug option in updatemem which will generate a debug.txt file.

 

Thanks,
Arpan
----------------------------------------------------------------------------------------------
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.
----------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
6 Replies
Highlighted
Moderator
Moderator
6,395 Views
Registered: ‎07-01-2015

Hi @vsekar,

 

You have to generate a .mmi file to define the address map. If it's not generated by tool you have to create the .mmi file manually.

Then you can make use of updatemem to load the elf file contents to BRAM.

Please go through https://www.xilinx.com/support/answers/63041.html 

It describes the complete steps. You can confirm BRAM contents using -debug option in updatemem which will generate a debug.txt file.

 

Thanks,
Arpan
----------------------------------------------------------------------------------------------
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.
----------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
Highlighted
Visitor
Visitor
3,860 Views
Registered: ‎07-11-2017

I was not able to find about the devices supported by data2mem in the document that you provided. But was able to follow a link from your document to 13.4_data2mem.pdf which doesn't show the support to virtex 7.

 

VinothS

 

 

V7_Support.jpg
0 Kudos
Highlighted
Visitor
Visitor
3,849 Views
Registered: ‎07-11-2017
https://forums.xilinx.com/t5/Embedded-Development-Tools/MEM-file-in-vivado/m-p/654784/highlight/true#M37917

Tried this post's suggestion of creating a property and then using the tcl (after few modification that I needed for my design). I just had the doubt that "updatemem" will work without processor or not, which got cleared with your post. Thanks
0 Kudos
Highlighted
Explorer
Explorer
2,818 Views
Registered: ‎11-23-2017

This link is broken.

0 Kudos
Highlighted
Visitor
Visitor
2,812 Views
Registered: ‎07-11-2017

The link is still working for me. Probably some other login or cookies problem.

 

VinothS

0 Kudos
Highlighted
Newbie
Newbie
508 Views
Registered: ‎10-18-2019

the link isn't working. pls update it

0 Kudos