How do I install and use a SmartLynq in a Linux VM on a ZCU102?

xilinx_logo_1

This post shows how to install and use a SmartLynq on a ZCU102 from Vivado 2019.1 running on a Ubuntu 16.04.5 VM managed by VMWare Workstation 14 Player running on Windows 10 Pro.

I also demonstrate that using a SmartLynq results in a 3x speed up over using the JTAG-to-USB device from Digilent.

Assumptions

You’ve install Vivado 2019.1 onto a Ubuntu 16.04.5 VM managed by VMWare Workstation 14 Player running on Windows 10 Pro

Steps

Step #1: Connect the SmartLynq USB cable

connect_smartlynq_usb_2

You should see something like:

smartlynq_display_3

Step #2: Connect to the Xilinx Smart JTAG Cable

connect_to_jtag_cable_4

Step #3: Run Vivado

run_vivado_5

Step #4: Click Open Hardware Manager

open__hardware_manager_6

Step #5: Click Open target

open_target_7

Step #6: Click Open New Target…

open_new_target_8

Step #7: Click Next >

click_next_on_dialouge_box_9

Step #8: (A) Select Remote server, (B) use 10.0.0.2 as shown on the SmartLynq, and (C) click Next >

set_server_settings_10

Step #9: Click OK to update if you see this

confirm_cable_edit_11

You should see:

smartlynq_firmware_updating_12

…and:

updating_smartlynq_firmware_13

…and on the SmartLynq:

smartlynq_display_14

Step #10: Connect the SmartLynq to the ZCU102

connect_smartlynq_to_zcu102_15

zcu102_connection_to_smartlynq_16

Step #11: Note the Hardware server address

hardware_server_adress_17

Step #12: (A) Select 60000000 (7 0’s) then you should be able to (B) click Next >

set_jtag_clock_frequency_18

Step #13: Click Finish

finish_hardware_target_setup_19

You should see:

hardware_target_loading_20

…and finally:

target_setup_compleat_21

Step #14: Test using a PetaLinux ZCU102 load:

Step #: Install PetaLinux 2019.1

mkdir -p $HOME/petalinux

cd ~/Downloads

./petalinux-v2019.1-final-installer.run $HOME/petalinux/2019.1

Step #: Build the xilinx-zcu102-v2019.1-final.bsp

mkdir -p ~/plxprjs

cd ~/plxprjs

source ~/petalinux/2019.1/settings.sh

petalinux-create -t project -s ~/Downloads/xilinx-zcu102-v2019.1-final.bsp

cd xilinx-zcu102-2019.1/

petalinux-build

petalinux-boot –qemu –kernel

Step #: Load it

time petalinux-boot –jtag –kernel –hw_server-url 10.0.0.2:3121

I got:

real 0m51.708s

user 0m3.221s

sys 0m4.290s

Test Using the JTAG-to-USB Connection

Step #1: Disconnect the SmartLynq

disconnect_smartlynq_22

Step #2: Connect the UART-to-USB and JTAG-to-USB

connect_uart_and_jtag_cables_23

connect_to_usb_hub_24

Step #3: Click OK

confirm_devices_connected_25

Step #4: Select Future Device Digilent USB Device

selected_future_device_digilent_usb_device_26

Step #5: Click Open New Target…

open_new_target_27

Step #6 Click Next >

next_on_hardwaare_target_28

Step #7: (1) Select Local server and (2) click Next >

select_local_server_29

You should see:

successful_hardware_target_30

Step #8: Run:

time petalinux-boot –jtag –kernel

I see:

real 3m15.098s

user 0m2.742s

sys 0m1.524s

References