Microchip FPGA Tools Installation Guide#

Instructions for installing the Microchip FPGA tools on a Ubuntu 20.04 desktop.

Important

We will be providing instances of Libero that you can run from git.beagleboard.org’s gitlab-runners such that you do not need to install the tools on your local machine.

Install Libero 2023.2#

unzip Libero_SoC_v2023.2_lin.zip

cd Libero_SoC_v2023.2_lin/

./launch_installer.sh

Important

Do not use the default location suggested by the Libero installer. Instead of /usr/local/Microchip/Libero_SoC_v2023.2 install into ~/Microchip/Libero_SoC_v2023.2

Run the post installation script which will install missing packages:

sudo /home/<USER-NAME>/Microchip/Libero_SoC_v2023.2/Logs/req_to_install.sh

No need to run the FlashPro hardware installation scripts. This will be taken care of as part of the SoftConsole installation.

Install SoftConsole 2022.2#

sudo chmod +x Microchip-SoftConsole-v2022.2-RISC-V-747-linux-x64-installer.run

./Microchip-SoftConsole-v2022.2-RISC-V-747-linux-x64-installer.run

Accept the license, Click Forward, Finish.

Perform the post installation steps as described in the html file opened when you click Finish.

Important

Please pay special attention to the “Enabling non-root user to access FlashPro” section of the post-installation instructions. This will actually allow you to program the board using Libero.

Install the Libero licensing daemon#

Download the 64 bit Licensing Daemons from the Microchip’s daemons section

Copy the downloaded file to the Microchip directory within your home directory and untar it.

cd ~/Microchip

tar -xvf Linux_Licensing_Daemon_11.16.1_64-bit.tar.gz

Install the Linux Standard Base:

sudo apt-get update

sudo apt-get -y install lsb

Request a Libero Silver license#

Note

A MAC address looks something like 12:34:56::78:ab:cd when you use the “ip address” command to find out its value on your Linux machine. However, you need to enter it as 123456abcd in this dialog box.

You will get an email with a license.dat file. Copy it into the ~/Microchip/license directory. Edit the License.dat file to replace the <put.hostname.here> string with… localhost.

Execute tool setup script#

Download the script:

Listing 12 Libero environment and license setup script#
#!/bin/bash

#===============================================================================
# Edit the following section with the location where the following tools are
# installed:
#   - SoftConsole (SC_INSTALL_DIR)
#   - Libero (LIBERO_INSTALL_DIR)
#   - Licensing daemon for Libero (LICENSE_DAEMON_DIR)
#===============================================================================
export SC_INSTALL_DIR=/home/$USER/Microchip/SoftConsole-v2022.2-RISC-V-747
export LIBERO_INSTALL_DIR=/home/$USER/Microchip/Libero_SoC_v2023.2
export LICENSE_DAEMON_DIR=/home/$USER/Microchip/Linux_Licensing_Daemon
export LICENSE_FILE_DIR=/home/$USER/Microchip/license

#===============================================================================
# The following was tested on Ubuntu 20.04 with:
#   - Libero 2023.2
#   - SoftConsole 2022.2
#===============================================================================

#
# SoftConsole
#
export PATH=$PATH:$SC_INSTALL_DIR/riscv-unknown-elf-gcc/bin
export FPGENPROG=$LIBERO_INSTALL_DIR/Libero/bin64/fpgenprog

#
# Libero
#
export PATH=$PATH:$LIBERO_INSTALL_DIR/Libero/bin:$LIBERO_INSTALL_DIR/Libero/bin64
export PATH=$PATH:$LIBERO_INSTALL_DIR/Synplify/bin
export PATH=$PATH:$LIBERO_INSTALL_DIR/Model/modeltech/linuxacoem
export LOCALE=C
export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu:$LD_LIBRARY_PATH

#
# Libero License daemon
#
export LM_LICENSE_FILE=1702@localhost
export SNPSLMD_LICENSE_FILE=1702@localhost

$LICENSE_DAEMON_DIR/lmgrd -c $LICENSE_FILE_DIR/License.dat -l $LICENSE_FILE_DIR/license.log

setup-microchip-tools.sh

Source the script:

. ./setup-microchip-tools.sh

Important

Do not forget the leading dot. It matters. You will need to run this every time you restart your machine.

You can then start Libero to open an existing Libero project.

libero

However you will more than likely want to use Libero to run a TCL script that will build a design for you.

libero SCRIPT:BUILD_A_DESIGN.tcl