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: 
Newbie emergent
Newbie
3,911 Views
Registered: ‎12-07-2016

Associate .elf not working

Jump to solution

Tool version Vivado 2017.2 - just upgraded from 2016.3.

All was fine in 2016.3 but not in 2017.2.

 

Have mb in block and through sdk have .elf and used Associate Elf Files feature

to have .bit/.bin auto update with .elf changes when mb code is changed and Write Bitstream run.

 

If full Implementation run then elf is associated and built into .bit/.bin correctly.

If only Write Bitstream run then it is not and somehow grabbing some old/previous

data which cannot be some other .elf which is hanging around.

 

elf is definitely updated since loading .bit and then using sdk to load .elf 

is correct. So, write bitstream seems to not update .bit/.bin with elf

as it used to.

 

I tried manually updating using 

exec updatemem ....

and no errors created and top_out.bit created but still

.bit is not updated as if input .elf is not even used by updatemem.

======================

Loading bitfile C:/work/firmware/top.bit
Loading data files...
Updating memory content...
Creating bitstream...
Writing bitstream C:/work/firmware/top_out.bit...
0 Infos, 0 Warnings, 0 Critical Warnings and 0 Errors encountered.
update_mem completed successfully
update_mem: Time (s): cpu = 00:00:20 ; elapsed = 00:00:20 . Memory (MB): peak = 522.289 ; gain = 470.797
INFO: [Common 17-206] Exiting updatemem at Sat Jul 15 11:38:59 2017...

 

Again, if full Implementation run then .bit is updated but Write Bitstream does not update .bit.

 

0 Kudos
1 Solution

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

Re: Associate .elf not working

Jump to solution

Hi @emergent,

 

Say you have write_bitstream complete for the design. Using below commands will make bitstream to go out of date.

 

set_property SCOPED_TO_REF base_mb [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/memory/Debug/memory.elf}]
set_property SCOPED_TO_CELLS { microblaze_0 } [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/memory/Debug/memory.elf}]
set_property SCOPED_TO_REF "" [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/hello/Debug/hello.elf}]
set_property SCOPED_TO_CELLS { } [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/hello/Debug/hello.elf}]

 

Then try below commands and see if the bitfile is updated.

reset_run impl_1 -prev_step 
launch_runs impl_1 -to_step write_bitstream

 

Alternatively please try updatemem command.

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
5 Replies
Scholar pratham
Scholar
3,714 Views
Registered: ‎06-05-2013

Re: Associate .elf not working

Jump to solution

@emergent I believe this issue is reported already. You can reimplement the entire design for now which I understand is a time consuming or you can use this method to regenerate bitstream and running updatemem which should work.

 

https://forums.xilinx.com/t5/Vivado-TCL-Community/Post-implement-Loading-an-ELF-file-and-compressing-the-bitstream/td-p/701095

 

You were not regenerating bitstream, please try that and rest of the steps as discussed in the thread.

 

-Pratham

----------------------------------------------------------------------------------------------
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
Moderator
Moderator
6,134 Views
Registered: ‎07-01-2015

Re: Associate .elf not working

Jump to solution

Hi @emergent,

 

Say you have write_bitstream complete for the design. Using below commands will make bitstream to go out of date.

 

set_property SCOPED_TO_REF base_mb [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/memory/Debug/memory.elf}]
set_property SCOPED_TO_CELLS { microblaze_0 } [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/memory/Debug/memory.elf}]
set_property SCOPED_TO_REF "" [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/hello/Debug/hello.elf}]
set_property SCOPED_TO_CELLS { } [get_files -all -of_objects [get_fileset sources_1] {/project_1/project_1.sdk/hello/Debug/hello.elf}]

 

Then try below commands and see if the bitfile is updated.

reset_run impl_1 -prev_step 
launch_runs impl_1 -to_step write_bitstream

 

Alternatively please try updatemem command.

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
Newbie bconant
Newbie
2,094 Views
Registered: ‎05-25-2018

Re: Associate .elf not working

Jump to solution

I assume this was marked "solved" since there was a link to a workaround.

 

Did the original problem with Vivado get fixed in a later version?

 

0 Kudos
Moderator
Moderator
2,036 Views
Registered: ‎03-19-2014

Re: Associate .elf not working

Jump to solution

Yes, the original issue was fixed in Vivado 2017.3

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
921 Views
Registered: ‎07-27-2015

Re: Associate .elf not working

Jump to solution

Hi,

I do not have a memory.elf file, but I am dealing with the same issue referenced in this thread.

Additionally, do you mean that I set the SCOPED_TO_REF and SCOPED_TO_CELLS to empty?  Or do you mean I set them to empty and then back to their original values and then launch the write_bitstream step?

0 Kudos