Table of Contents

XILINX Virtual Cable client software

Klientský program pro obsluhu JTAG programátoru XVC_FT220X01A.

Windows

Program pro obsluhu XVC_FT220X01A z Windows se jmenuje mlab_xvcd.exe. Program se neinstaluje (je to jediný exe soubor), ale potřebuje aby na počítači byly nainstalované drivery FTDI.

Program při prvním spuštění potřebuje povolit ve firewallu Windows síťovou komunikaci (ve Win7 si o to systém sám řekne, ve starších verzích Windows je třeba spustit konfiguraci systému firewall ručně a povolit programu síťování). Připomínám, že nastavení je třeba zopakovat, když program přesunete do jiného adresáře, nebo přejmenujete, protože nastavení platí pro konkrétní program na konkrétním místě v systému.

Použití mlab_xvcd

Program po spuštění vypíše informace a nalezené obvody FTDI a spojí se se zadaným zařízením, a když není zadáno tak s prvním nalezeným. Na příkazové řádce lze zadat spojení podle názvu, sériového čísla, umístění na USB sběrnici nebo podle pořadí nalezených obvodů FTDI.

Listen znamená, že je program připraven k navázání spojení ze strany vývojového systému. Současně se rozsvítí LED indikace aktivity (na plošném spoji označená ACT).

Nastavení iMPACT

Nyní je třeba ve vývojovém prostředí spustit program iMPACT a v něm nastavit plugin pro XVC protokol. Program mlab_xvcd.exe vypisuje přesně to, co je třeba v programu iMPACT nastavit. Lze použít clipboard, ale pozor aby na začátku nebyla mezera (není vidět, ale plugin se nenajde a nespustí). Nastavení je v položce Output / Cable Setup.

Po potvrzení dojde k navázání spojení a program mlab_xvcd.exe začne do terminálu vypisovat tečky (program IMPACT každou sekundu pošle data po síti). Současně zhasne indikační LED a jen poblikává při zpracování dat.

Linux

Pro použití XVC potřebujeme mít nainstalované vývojové prostředí Xilinx ISE. Modernější vývojové prostředí Vivado zatím není otestované.

Spuštění XVC serveru

XVC server spustíme nejlépe na nějakém ARM počítači pro architekturu ARM je připravena binárka v SVN mlab, kterou lze přímo spustit. Nejprve je ale potřeba od připojeného modulu XVC_FT220X02A v systému odpojit driver kernelu. Pokud nemáme ke stejnému počítači připojených víc USB převodníků. tak můžeme jednoduše odebrat modul z kernelu.

sudo rmmod ftdi_sio

Pak můžeme přímo spustit XVC server.

$ sudo ./mlab_xvcd_arm926vfp 
[sudo] password for odroid: 

Xilinx Virtual Cable Network Server
===================================
(c) miho 2013 v 1.08

FTDI Connect
  Library Version   0x10112
  Devices Found     1
  JTAG Port Pins    TCK->DBUS0(TXD)
                    TDI->DBUS1(RXD)
                    TDO->DBUS2(RTS)
                    TMS->DBUS3(CTS)
                    LED->CBUS3+DBUS7(RI) 

Device 0
  Description       "XVC_FT220X"
  SerialNumber      "DAWK5P9H"
  Location          0x110

Selected Device
  Description       "XVC_FT220X"
  SerialNumber      "DAWK5P9H"
  Device Driver Ver 0x10112
  Baud Rate         1000000
  USB Latency       1

Starting Network Server
  Host Name         SOCIS1
  Host Address      eth0: 10.1.1.201
  Bound Socket      2542
  Set in IMPACT     xilinx_xvc host=SOCIS1:2542 disableversioncheck=true

  Listen

Pokud program vygeneruje takovýto výpis, tak se k serveru můžeme připojit z vývojového nástroje Xilinx.

Spuštění vývojového prostředí

Vývojové prostředí budeme spouštět ze složky, kam bylo nainstalované. Obvykle něco jako /opt/Xilinx/14.7/ISE_DS V této složce spustíme inicializační skript který aktivuje proměnné prostředí.

source settings64.sh

Nyní můžeme spustit program iMPACT.

impact

V něm je potřeba otevřít, nebo vytvořit nový projekt a nastavit připojení k FPGA přes XVC. To lze udělat v záložce Output → Cable Setup.

V otevřeném dialogu je potřeba zapnout Cable Plug-in a do konfiguračního řádku nakopírovat nastavení, které vypíše mlab_xvcd_arm926vfp při spuštění. V našem případě je to: xilinx_xvc host=SOCIS1.local:2542 disableversioncheck=true

Všimně te si, že vložená konfigurační řádka “xilinx_xvc host=SOCIS1.local:2542 disableversioncheck=true” je mírně modifikovaná od výpisu XVC serveru “xilinx_xvc host=SOCIS1:2542 disableversioncheck=true”. Konkrétně je za hostname přidáno “,local” to umožní použití překladu adres pomoci zero-conf.

Program impact při správném nastavení do stavového řádku vypíše:

INFO:iMPACT - Socket opened successfully

A XVC server začne čekat na příkazy a periodicky vypisovat tečky.

Listen
Accepted          10.1.1.230:54919
Handle Data       .........................................

Reference