fpgadeveloper / ethernet-fmc-zynq-gem

Example design for the Ethernet FMC using the hard GEMs of the Zynq
http://ethernetfmc.com
MIT License
52 stars 50 forks source link

Build scripts don't work with alternate locations of Vivado #1

Open busfault opened 7 years ago

busfault commented 7 years ago

The build batch files are hard-coded to the default location of Vivado. I would recommend adding to the Build Instructions to run "\Xilinx\Vivado\2016.4\settings64.bat" (e.g.: E:\Apps\Xilinx\Vivado\2016.4\settings64.bat)

Also, The current design is limited to the exact board definition in the tcl file. (set_property "board_part" "em.avnet.com:microzed_7020:part0:1.1" $obj) Part of the instructions should indicate that the files in ...\ethernet-fmc-zynq-gem-master\Vivado\boards\board_files... Need to be copied to: \Xilinx\Vivado\2016.4\data\boards\board_files...

fpgadeveloper commented 7 years ago

On my setup, I have Vivado installed on C: and my project files are on E:, which is why I don't use the generic location for the Vivado script. Your proposition wouldn't quite work for me. Do you have any other ideas to fix this?

As for the instructions, in fact there are already some instructions in the README file concerning the installation of the board files. If they aren't adequate or clear, please let me know.

busfault commented 7 years ago

What I ended up having to do is run from a command prompt in the directory. I ended up running: E:\Apps\Xilinx\Vivado\2016.4\settings64.bat which adds the bin to the front of the PATH. and then: vivado -mode batch -source build-mz-7z020.tcl

I'm not exactly sure how you could put that into one-click batch file. Maybe one option would be to check if it fails and provide a message in the running window and issue a pause. This may be helpful because when I ran it the screen just flashed and I wasn't sure what was causing the failure until I opened the batch file and ran it from the commandline.

Also, I did run into an issue where if the script failed and then was run again it wouldn't complete because the folder already existed.

Maybe moving the board file installation under the requirements would be beneficial. It was my fault for not reading the entire document and just running through the installation steps. I knew how to put the files in from previous experience with board_part files and didn't review the rest of the instructions before indicating that. thanks, tom BTW. thank you for this project it really helped me out. I was having some timing issues trying to get the ethernet Phy on the Avnet FMC board running through the gmii2rgmii and this project helped me sanity check some things.

fpgadeveloper commented 7 years ago

OK I see the problem.

I'll rewrite the script so that it checks if the build failed, and it cleans up the mess if it did fail as well as spitting out an error message. That should prevent the same confusion.

Yes the board file thing should probably be in the requirements section, I'll fix that up.

Thanks for the feedback and I'm glad that I was able to help you out.