FPGA tools

From Robin

(Difference between revisions)
Jump to: navigation, search
(FPGA tools on Linux)
(MAC or other systems)
(54 intermediate revisions not shown)
Line 1: Line 1:
-
= FPGA tools on Linux =
+
= FPGA tools on LISP (2428)=
 +
Vivado and Vitis is installed locally on the computers in LISP. To launch Vivado go to ''Applications->Education-> '''Vivado'''
-
'''First time initialization'''
+
Alternatively, you can find it by searching for apps using the ''super''-key (Windows key):
-
cd
+
-
nano .bashrc
+
-
Append the following lines to the end of the .bashrc file:
+
[[Image:Xilinx_suit.png]]
-
<pre>
+
-
# Questa 10.6c
+
-
export LM_LICENSE_FILE=5370@lisens.ifi.uio.no
+
-
export PATH=$PATH:/projects/nanus/eda/Mentor/2017_2018/Questa/questasim/bin
+
-
# Modelsim library
 
-
export MODELSIM=/projects/robin/CADlib/modelsimCADLIB.ini
 
-
# Vivado 16.4 64-bit version
+
'''Launch in terminal'''
-
source /projects/robin/programs/Vivado/2016.4/settings64.sh
+
-
export PATH=$PATH:/projects/robin/programs/Vivado/2016.4/bin
+
-
</pre>
+
-
'''Restart the terminal.'''
+
Launching the applications is done by entering the following commands in the terminal:
-
 
+
-
'''Launch'''
+
Questa with GUI:
Questa with GUI:
Line 28: Line 16:
Vivado with GUI:
Vivado with GUI:
  vivado
  vivado
 +
 +
Vitis with GUI:
 +
vitis
 +
 +
Vitis HLS with GUI
 +
vitis_hls
Vlog (terminal only):
Vlog (terminal only):
Line 35: Line 29:
  vcom
  vcom
 +
Help:
 +
<command> -h
 +
 +
= FPGA tools via share on Linux =
 +
<!--
 +
{{note|Vivado 2020.2 install is currently in BETA. }}
 +
-->
 +
 +
'''First time initialization'''
 +
 +
If you need to use Xilinx' software other places than the RHEL7 machines at LISP, utilize the following guide:
 +
 +
cd
 +
nano .bashrc
 +
 +
Append the following lines to the end of the .bashrc file:
 +
<pre class="brush: bash">
 +
# Questa 2019.4
 +
if ! [ -x "$(command -v vsim)" ]; then
 +
  export PATH=$PATH:/projects/nanus/eda/Mentor/2019_2020/Questa/questasim/bin
 +
fi
 +
 +
# Vitis Unified 2020.2 64-bit version
 +
if ! [ -x "$(command -v vivado)" ]; then
 +
  source /projects/robin/programs/Vivado/2020.2/settings64.sh
 +
  export PATH=$PATH:/projects/robin/programs/Vivado/2020.2/bin
 +
fi
 +
 +
# License file
 +
export LM_LICENSE_FILE=5370@lisens.ifi.uio.no
 +
 +
# Modelsim library
 +
export MODELSIM=/projects/robin/CADlib/modelsimCADLIB.ini
 +
 +
# Remove duplicants in the PATH variable
 +
PATH=$(printf "%s" "$PATH" | awk -v RS=':' '!a[$1]++ { if (NR > 1) printf RS; printf $1 }')
 +
</pre>
 +
 +
After you have added the latter and saved the .bashrc file, restart the terminal or 'source' the .bashrc file.
 +
 +
'''Other versions'''
 +
 +
If needed, you can also make use of older or newer versions of the Xilinx products. As of August 2020, we have 2016.4, 2018.3, 2019.1, 2019.2 and 2020.2 available.
 +
 +
<!---
= FPGA tools on Windows =
= FPGA tools on Windows =
-
Vivado 2016.4 is situated on /uio/kant/ifi-project06/robin/programs/vivado
+
Vivado 2019.1 is situated on /uio/kant/ifi-project06/robin/programs/vivado
it can be accessed from any Windows machine, but it does need to have
it can be accessed from any Windows machine, but it does need to have
the LM_LICENSE_FILE environment variable set to 5370@lisens.ifi.uio.no
the LM_LICENSE_FILE environment variable set to 5370@lisens.ifi.uio.no
-
Vivado, ISE and Questa is currently installed locally on LISP (2428) and Questa is installed on SED (1454) and CHILL (3443).
+
Questa is installed on SED (1454) and CHILL (3443).
Please notify the engineer in ROBIN if there are issues.
Please notify the engineer in ROBIN if there are issues.
Line 56: Line 95:
  C:\users\<username>
  C:\users\<username>
-
for storing project files, but be ware that there is no backup and you need to move your files to M:\ before leaving the client.  
+
for storing project files, but be ware that there is no backup and you need to move your files to M:\ before log out of the client.  
-
You can also use X-Win32 to get Linux with GUI on IFIs Windows clients: https://termvakt.uio.no/Fjerninnlogging#Xterm_via_X-Win32
+
You may also use X-Win32 to get Linux with GUI on IFIs Windows clients: https://termvakt.uio.no/Fjerninnlogging#Xterm_via_X-Win32
 +
 
 +
--->
= Digilent Adept on Linux =
= Digilent Adept on Linux =
Line 81: Line 122:
  setx LM_LICENSE_FILE 5370@lisens.ifi.uio.no
  setx LM_LICENSE_FILE 5370@lisens.ifi.uio.no
-
= Robin Peripheral Repository =
+
= Academic Xilinx FPGA tools =
-
The ROBIN EDK repository is located at:
+
Python interface to Xilinx/EDK MHS: https://github.com/EPiCS/reconos/tree/master/tools
-
/projects/robin/CADlib/spartan3EDK2012/  
+
Bitstream Intepretation Library (Virtex5): https://github.com/florianbenz/bil
-
It contains BSP for the Spartan3 Starter Board.
+
DeBit: http://code.google.com/p/debit/
-
Set "Project Peripheral Reposotory Search Path" in XPS to enable it.
+
TORC: http://torc-isi.sourceforge.net/
-
= Academic Xilinx FPGA tools =
+
ReconOS: http://www.reconos.de
-
Python interface to Xilinx/EDK MHS: https://github.com/EPiCS/reconos/tree/master/tools
+
-
XDL Format description: http://www.mn.uio.no/ifi/english/research/projects/cosrecos/publications/paper/recosoc11beckhoff.pdf
+
= Having problems? =
-
Bitstream Intepretation Library (Virtex5): https://github.com/florianbenz/bil
+
If you are having problems running the tools as mentioned, please ask a group teacher or send an mail to: robin-engineer at ifi.uio.no.
-
DeBit: http://code.google.com/p/debit/
+
== "command not found"  => Not running .bashrc? ==
-
GoAhead: http://www.mn.uio.no/ifi/english/research/projects/cosrecos/goahead/
+
When running ssh from another linux system or Mac, it is possible that only .bash_profile is read, not .bashrc. This will typically lead to "command not found" when trying to launch vsim or any other program that should have been found in the path. This can be further confirmed by listing PATH or the MODELSIM variable
 +
>>echo $PATH
 +
>>echo $MODELSIM
 +
If they don't show traces of what you have put into .bashrc, it has not been run, or the variables have over-written later.  
-
Creating Hard Macros (guide): http://wiki.eng.iastate.edu/reconfigurable-computing-wiki/index.php/Creating_Hard_Macros
+
To ensure that the .bashrc is run when opening a new xterm or ssh'ing into a new server, append the following to your .bash_profile:
 +
if [ -f ~/.bashrc ]; then
 +
  source ~/.bashrc
 +
fi
-
TORC: http://torc-isi.sourceforge.net/
+
You can also manually source .bashrc and then open a new xterm that can use vsim
 +
>>source ~/.bashrc
 +
>>xterm &
 +
 
 +
This last solution will of course be a one-time only approach, since it doesn't change any configuration file.
 +
 
 +
Here is an article on how it became two configuration files rather than just one:
 +
[http://www.joshstaiger.org/archives/2005/07/bash_profile_vs.html www.joshstaiger.org/archives/2005/07/bash_profile_vs.html ]
-
ReconOS: https://github.com/EPiCS/reconos
+
== Remote access with GUI ==
 +
X11 forwarding is required to be able to see windows opened on a linux server. On windows, X-win32 can be used. For linux ssh -X or ssh -Y can be used, while on MAC you may need XQuartz or something similar to allow X11 forwarding. More on this can be found [https://robin.wiki.ifi.uio.no/Remote_access here].

Revision as of 14:31, 28 January 2021

Contents

FPGA tools on LISP (2428)

Vivado and Vitis is installed locally on the computers in LISP. To launch Vivado go to Applications->Education-> Vivado

Alternatively, you can find it by searching for apps using the super-key (Windows key):

Image:Xilinx_suit.png


Launch in terminal

Launching the applications is done by entering the following commands in the terminal:

Questa with GUI:

vsim

Vivado with GUI:

vivado

Vitis with GUI:

vitis

Vitis HLS with GUI

vitis_hls

Vlog (terminal only):

vlog

Vcom (terminal only):

vcom

Help:

<command> -h

FPGA tools via share on Linux

First time initialization

If you need to use Xilinx' software other places than the RHEL7 machines at LISP, utilize the following guide:

cd 
nano .bashrc

Append the following lines to the end of the .bashrc file:

# Questa 2019.4
if ! [ -x "$(command -v vsim)" ]; then
  export PATH=$PATH:/projects/nanus/eda/Mentor/2019_2020/Questa/questasim/bin
fi

# Vitis Unified 2020.2 64-bit version
if ! [ -x "$(command -v vivado)" ]; then
  source /projects/robin/programs/Vivado/2020.2/settings64.sh
  export PATH=$PATH:/projects/robin/programs/Vivado/2020.2/bin
fi

# License file
export LM_LICENSE_FILE=5370@lisens.ifi.uio.no

# Modelsim library 
export MODELSIM=/projects/robin/CADlib/modelsimCADLIB.ini

# Remove duplicants in the PATH variable
PATH=$(printf "%s" "$PATH" | awk -v RS=':' '!a[$1]++ { if (NR > 1) printf RS; printf $1 }')

After you have added the latter and saved the .bashrc file, restart the terminal or 'source' the .bashrc file.

Other versions

If needed, you can also make use of older or newer versions of the Xilinx products. As of August 2020, we have 2016.4, 2018.3, 2019.1, 2019.2 and 2020.2 available.


Digilent Adept on Linux

Digilent Adept to program the Atlys board can be obtained from the Digilent website.

Note that some Xilinx scripts require GNU BASH. Ubuntu (and possibly others) come with DASH. Disable DASH by reconfiguring it:

sudo dpkg-reconfigure dash

Note that the tools available on Windows, such as Xilinx ISE/PlanAhead and Modelsim are not supported by drift on Linux.

To enable autocompletion and history in XMD:

rlwrap xmd


License server

Licenses can be checked out from lisens.ifi.uio.no:

export LM_LICENSE_FILE=5370@lisens.ifi.uio.no

On Windows:

setx LM_LICENSE_FILE 5370@lisens.ifi.uio.no

Academic Xilinx FPGA tools

Python interface to Xilinx/EDK MHS: https://github.com/EPiCS/reconos/tree/master/tools

Bitstream Intepretation Library (Virtex5): https://github.com/florianbenz/bil

DeBit: http://code.google.com/p/debit/

TORC: http://torc-isi.sourceforge.net/

ReconOS: http://www.reconos.de

Having problems?

If you are having problems running the tools as mentioned, please ask a group teacher or send an mail to: robin-engineer at ifi.uio.no.

"command not found" => Not running .bashrc?

When running ssh from another linux system or Mac, it is possible that only .bash_profile is read, not .bashrc. This will typically lead to "command not found" when trying to launch vsim or any other program that should have been found in the path. This can be further confirmed by listing PATH or the MODELSIM variable

>>echo $PATH
>>echo $MODELSIM

If they don't show traces of what you have put into .bashrc, it has not been run, or the variables have over-written later.

To ensure that the .bashrc is run when opening a new xterm or ssh'ing into a new server, append the following to your .bash_profile:

if [ -f ~/.bashrc ]; then
  source ~/.bashrc
fi

You can also manually source .bashrc and then open a new xterm that can use vsim

>>source ~/.bashrc
>>xterm &

This last solution will of course be a one-time only approach, since it doesn't change any configuration file.

Here is an article on how it became two configuration files rather than just one: www.joshstaiger.org/archives/2005/07/bash_profile_vs.html

Remote access with GUI

X11 forwarding is required to be able to see windows opened on a linux server. On windows, X-win32 can be used. For linux ssh -X or ssh -Y can be used, while on MAC you may need XQuartz or something similar to allow X11 forwarding. More on this can be found here.

Personal tools
Front page