UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor vgimonkar
Visitor
730 Views
Registered: ‎07-06-2018

merge two microblaze elf files into one bit file

Jump to solution

Hello,

I am using Xilinx SDK2017.4. I have a system consisting of 3 microblazes. In the SDK I create 3 elf files. I want to know if there is a way to create one bitstream file by combing all the 3 elf files.

 

 

Tags (1)
0 Kudos
1 Solution

Accepted Solutions
Moderator
Moderator
741 Views
Registered: ‎09-12-2007

Re: merge two microblaze elf files into one bit file

Jump to solution

Yes,  you can use the vivado Associate ELF in tools to do this, then when you implement, this will place your elf into bram. However, everytime you need to update your elf, you will need to re-implement.

 

Or, you can use updatemem to place the elf for each mb into bram. The updatemem uses a file called MMI file. If you created your   design using the block design in vivado, then the mmi file will be created for you automatically ( or call write_mem_info test.mmi from the tcl console). The mmi file describes your bram topology. If you have 3 mb, then you likely have 3 lmb/dlmb bram. Each lmb section will have an instpath. You would use this instpath info to steer your relevant elf into its bram range using the -proc as shown below. 

 

Note, your instpath is likely, design-1/microblaze_0 for example...

 

so for example:

updatemem -meminfo test.mmi -data test1.elf -proc mb_0 -data test2.elf -proc mb_1 -data test3.elf -proc mb_2 -bit design_1_wrapper.bit -out download.bit

 

everytime you want to update the elf, just re-run the command above. 

 

Reference:

https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_1/ug898-vivado-embedded-design.pdf

0 Kudos
1 Reply
Moderator
Moderator
742 Views
Registered: ‎09-12-2007

Re: merge two microblaze elf files into one bit file

Jump to solution

Yes,  you can use the vivado Associate ELF in tools to do this, then when you implement, this will place your elf into bram. However, everytime you need to update your elf, you will need to re-implement.

 

Or, you can use updatemem to place the elf for each mb into bram. The updatemem uses a file called MMI file. If you created your   design using the block design in vivado, then the mmi file will be created for you automatically ( or call write_mem_info test.mmi from the tcl console). The mmi file describes your bram topology. If you have 3 mb, then you likely have 3 lmb/dlmb bram. Each lmb section will have an instpath. You would use this instpath info to steer your relevant elf into its bram range using the -proc as shown below. 

 

Note, your instpath is likely, design-1/microblaze_0 for example...

 

so for example:

updatemem -meminfo test.mmi -data test1.elf -proc mb_0 -data test2.elf -proc mb_1 -data test3.elf -proc mb_2 -bit design_1_wrapper.bit -out download.bit

 

everytime you want to update the elf, just re-run the command above. 

 

Reference:

https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_1/ug898-vivado-embedded-design.pdf

0 Kudos