Zynq Vivado project
Verwendetes Board Trenz TE0720.
Installation
Vivado Installationsverzeichnis:
sudo mkdir /opt sudo chown <owner>:<owner> /opt
Für das Exportieren von *.xsa Dateien (für Petalinux) ist die mindest Version 2020.2 von Vivado erforderlich.
Download Vivado
sudo chmod +x Xilinx_Unified_2020.2_1118_1232_Lin64.bin ./Xilinx_Unified_2020.2_1118_1232_Lin64.bin
Installationverzeichnis /tools/Xilinx auswählen.
USB Treiber
Installation USB Treiber
cd /opt/Xilinx/Vivado/2020.2/data/xicom/cable_drivers/lin64/install_script/install_drivers sudo ./install_drivers
Tools
Installation der nötigen Tools.
sudo apt install -y git pkg-config flex bison curl
Verzeichnisstruktur anlegen
Anlegen der Verzeichnis Struktur für ein Zynq Projekt:
mkdir zynq_project mkdir zynq_project/vivado_project mkdir zynq_project/repositories mkdir zynq_project/board_files
Board Files
Wird ein Board von z.B. Trenz verwendet, können die board_files Vivado hinzugefügt werden.
Download board_files
Die board_files sind im Reference Designs enthalten. (Beispiel für TE0720 2020.2)
TE0720 ⇒ Reference_Design ⇒ 2020.2 ⇒ test_board ⇒ TE0720-test_board-vivado_2020.2-build_6_20210719131744.zip
cd zynq_project/board_files curl -O https://shop.trenz-electronic.de/trenzdownloads/Trenz_Electronic/Modules_and_Module_Carriers/4x5/TE0720/Reference_Design/2020.2/test_board/TE0720-test_board-vivado_2020.2-build_6_20210719131744.zip unzip TE0720-test_board-vivado_2020.2-build_6_20210719131744.zip
board_files nach Vivado speichern
Im Zip-File unter board_files den gewünschten Board-Ordner nach /<pfad>/Vivado/<version>/data/boards/boards_files kopieren.
cp -R te0720_board_files/test_board/board_files/* /opt/Xilinx/Vivado/2020.2/data/boards/board_files/
Vivado Project erstellen
- Projekt erstellen (Pfad: /home/BENUTZER/zynq_project/vivado_project)
- Board TE0720_1CFA
- Hinweis: Wurde das Board Repository aktualisiert, werden nicht die vorher heruntergeladenen board_files genutzt. (Lösung: löschen der xhub board_files)
- Create Block Design ⇒ + ⇒ processing system
- Wichtig! Jetzt Run Block Automation ausführen, NUR dann wird das preset von den board_files übernommen!
- Danach können weitere IPs wie gpio, axi usw. eingefügt werden ⇒ Run Block Automation
- TAB Sources ⇒ Design Sources ⇒ design_NAME ⇒ rechtsklick ⇒ Create HDL Wrapper
- rechtsklick ⇒ design_NAME_i ⇒ Generate Output Products
- Pinzuordnung ⇒ Open Elaborated Design
- Generate Bitstream
Jetzt kann die Hardware für das SDK oder Petalinux exportiert werden.
Petalinux export
- File ⇒ Export ⇒ Export Hardware... ⇒ Petalinux root folder (/tools/petalinux/2019.2/)
SDK export
- File ⇒ Export ⇒ Export Hardware... (include Bitstream)
- File ⇒ Launch SDK ⇒ OK
Probleme
| Fehler | Lösung |
|---|---|
application-specific initialization failed: couldn't load file "librdi_commontasks.so": libtinfo.so.5: cannot open shared object file: No such file or directory |
sudo apt update sudo apt install libtinfo-dev -y sudo ln -s /lib/x86_64-linux-gnu/libtinfo.so.6 /lib/x86_64-linux-gnu/libtinfo.so.5 |
| Vivado findet das Board über USB (FTDI) nicht |
cd /opt/Xilinx/Vivado/2020.2/data/xicom/cable_drivers/lin64/install_script/install_drivers sudo ./install_drivers |
Installer hängt bei generating installed device list
|
sudo apt-get install libncurses5 libncurses5:i386 |
| Das preset vom ausgwählten Board wird im "ZYNQ 7 Processing System" nicht angewendet. |
sudo update-locale LANG=en_GB.utf8 sudo update-locale LC_NUMERIC="en_GB.utf8" sudo update-locale LC_TIME="en_GB.utf8" sudo update-locale LC_MONETARY="en_GB.utf8" sudo update-locale LC_PAPER="en_GB.utf8" sudo update-locale LC_NAME="en_GB.utf8" sudo update-locale LC_ADDRESS="en_GB.utf8" sudo update-locale LC_TELEPHONE="en_GB.utf8" sudo update-locale LC_MEASUREMENT="en_GB.utf8" sudo update-locale LC_IDENTIFICATION="en_GB.utf8" |