高位合成が可能なFPGAに興味を持ったので秋月電子で販売されているZynq-7000を搭載したボードを購入しました。

最新の開発環境はVivadoらしいですが、私が研究で利用しているモノは”Spartan-6″なので古いISEしか使えません。ISEは2013年でリリースが終わっており、Windows10だと不備が色々あるのでメインマシンにUbuntuを利用しています。

WindowsにVivadoはかんたんにインストールできるのですが、Linux系の場合依存関係があるので、すんなりとインストールができませんでした。一回のDLに21GB程度の通信を行うのですが、2回くらい失敗してしまいました…

症状

インストール時にgenerating installed device listが表示され、いくら待っても進まないという現象が生じました。

解決方法

UbuntuにICDライブラリをインストールしてから、Vivadoのインストーラを実行します。

sudo apt install ocl-icd-libopencl1 opencl-headers ocl-icd-opencl-dev git

はじめにDLしたインストーラを実行できるようにします。

sudo chmod +x ./ダウンロードしたインストーラファイル名.bin

Vivadoのツールは、/tools/Xilinx/ディレクトリにインストールされるので、インストーラは管理者権限で実行します。

sudo ./ダウンロードしたインストーラファイル名.bin

GUIインストーラが起動するので、自分の保有しているハードウェアを選択して進みましょう。 ここで注意する点としては、Linux版はケーブルドライバがインストールされませんので、手動でインストールします。

sudo /tools/Xilinx/Vivado/2020.2/data/xicom/cable_drivers/lin64/install_script/install_drivers/install_drivers

次に、インストールしたVivadoとVitisのパスを通します。私は.bashrcに追加していく方式が好きですので、テキストエディタでホームディレクトリ直下の.bashrcを開きます。そして、次の2行を一番下に追加します。

source /tools/Xilinx/Vivado/2020.2/settings64.sh
source /tools/Xilinx/Vitis/2020.2/settings64.sh

再起動すると、コンソールからvivadovitisと入力すると起動します。

2021年7月22日追記

仮想マシンに新しくUbuntuをインストールしたので再度、Vivadoを入れてみたところ、

application-specific initialization failed:
 couldn't load file "librdi_commontasks.so": libtinfo.so.5: cannot open 
shared object file: No such file or directory

と表示されGUIが起動しませんでした。少し調べると、ライブラリがなかったようです。次のコマンドで解決しました。

sudo apt install libtinfo-dev
sudo ln -s /lib/x86_64-linux-gnu/libtinfo.so.6 /lib/x86_64-linux-gnu/libtinfo.so.5