element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
MiniZed Hardware Design How to re-create .bin and .elf file?
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 5 replies
  • Subscribers 324 subscribers
  • Views 558 views
  • Users 0 members are here
Related

How to re-create .bin and .elf file?

hs15
hs15 over 7 years ago

Hello everyone,

I've re-created the "Python Web Server on MiniZed" hardware project by sourcing the "make_minized_petalinux.tcl" in Vivado. Now, I'm trying change a few things in the hardware block design and re-create the corresponding .bin and .elf and program the board through xsct. 

Can someone please help me with this?

  • Sign in to reply
  • Cancel
  • stefanrousseau
    0 stefanrousseau over 7 years ago

    Your question indicates that you may have been able to run the Python web server on MiniZed.  For the "FPGA" (PL) side you have been able to re-create the block diagram and I assume you are able to modify it in Vivado.  Once you have been able to export the .HDF file to the sdk directory, your efforts on the Vivado side will be over and you have to move to PetaLinux.  You will have to follow the guides on the Reference Designs page in terms of creating a VM on which you can build your PetaLinux project.  Typically you would create your PetaLinux project using a BSP such as the "minized_qspi" BSP that is also on teh Reference Designs page.  That projject has an HDF from Vivado in it.  To replace the HDF with your own, you would use
    petalinux-config --get-hw-description <location-of-your-new-HDF-file>

    On the Reference Designs page there is also a document that may be of interest:

    Prebuilt Platforms Using Hardware Definition Files (HDFs)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • hs15
    0 hs15 over 7 years ago

    Thank you for your response. Yes, I've done all of those. Is HDF the only file that I should replace compared to the previous project? How about .bit and .dtb?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • stefanrousseau
    0 stefanrousseau over 7 years ago in reply to hs15

    The HDF file is like a special zip file and it includes the .bit file that Vivado generated.  When you import the HDF with the command given above, PetaLinux takes it as part of the dts/dti file inputs for the device tree.  As part of the build process, a dts file is compiled to be a dtb file.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • hs15
    0 hs15 over 7 years ago in reply to stefanrousseau

    Thanks for your response. So, I don't need to recreate the device tree in sdk, the new device tree containing new modified physical addresses and etc will be included by importing HDF file? 

    I have another question: When I build the new Petalinux (including new hardware architecture) and run it on the board, how can I check in Petalinux's terminal whether the defined AXI master/slave ports are included or not (whether the new hardware design is reflected in Petalinux)? How to check the corresponding physical addresses too? For example, if I add two more GPIO via AXI_GP.

     

    Thanks!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • stefanrousseau
    0 stefanrousseau over 7 years ago

    Yes when you import the .hdf, the device tree will be re-created an when compiles, a new dtb will be generated.  I am no expert on this, but this is what I understand: After running petalinux-build, you could look in the <your project>/components/plnx/device-tree directory.  There are the various device tree inputs (dtsi files - I miss-wrote "dti" above) and created dts files that finally result in the .dtb file.  The system-user.dtsi file in <your project>/project-spec/meta-user/recipes-bsp/device-tree/files/ is one of these inputs.  You can analyze these files to see whether your hardware is structured as you expect.  Physical addresses are shown and should correspond with what you see in the Vivado address editor.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube