FC2カウンター FPGAの部屋 Vivado

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

Vivado スタートアップ・チュートリアル2日目

今日はVivado スタートアップ・チュートリアルの2日目です。

今日のお題目は、

Vivadoプロジェクトの新規作成
論理合成用Verilog-HDLコードの作成
ブロックデザインの作成
テストベンチ用Verilog-HDLコードの作成
RTLシミュレーション
論理合成
制約ファイルの作成(配置制約とタイミング制約)
インプリメンテーション、ビット・ファイルの生成
Implemented Design(FPGA内部素子への割り当ての確認)
Project Summary
実機テスト(Lチカ)


です。

なお、Vivado スタートアップ・チュートリアル1日目のお題は、
Vivadoプロジェクトの新規作成

論理合成用Verilog-HDLコードの作成
テストベンチ用Verilog-HDLコードの作成
RTLシミュレーション
論理合成
制約ファイルの作成
インプリメンテーション、ビット・ファイルの生成
Implemented Design(FPGA内部素子への割り当ての確認)
Project Summary
実機テスト(AND回路)


でした。

今回は、ブロックデザインを作成して、RTL IP を作成する手順と、制約ファイルを作るところでタイミング制約を GUI で作成する方法が追加されています。
今回のVivado スタートアップ・チュートリアルはVivado HLS を使う前に初めてVivado を使う人のためのチュートリアルとしてFPGAの内部構造を覚えることを目的としています。言わば、Vivado HLS を使うための第一歩としてのチュートリアルとなります。この後、Vivado をもっと勉強しても良いですし、Vivado HLS を使って C 言語でIP を作成するようになっても良いと思います。

Vivado HLS のチュートリアルも去年受講した元B4 生に聞いたところ、AXI4 MasterとAXI4-Streamで急に例題が難しくなって分からなくなったという声があったので、初心者用のAXI4 MasterとAXI4-Stream のチュートリアルを追加しようと思います。
  1. 2018年05月02日 06:09 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Ubuntu 16.04.3 LTS 上のVivado 2017.3 のLaunch Runs ダイアログが透明になってしまう

Ubuntu 16.04.3 LTS 上のVivado 2017.3 のLaunch Runs ダイアログが透明になってしまうバグがあって、論理合成ができなくなってしまった。

状況はUltraZed-EG Starter Kit のVivado プロジェクトを新規作成して、IP Integrator でブロック・デザインを作成した。
Vivado2017_3_bug_1_171129.png

出来上がったので、Flow Navigator からGenarate Bitstream をクリックして、論理合成、インプリメント、ビットストリームの生成を行おうとした。

No Implementation Results Available ダイアログが表示された。Yes ボタンをクリックした。
Vivado2017_3_bug_2_171129.png

次に、Launch Runs ダイアログが表示された。このダイアログが透明で何も選べなかった。
Vivado2017_3_bug_3_171129.png

解決方法がわかる方は情報をお待ちしています。コメント欄でお知らせください。よろしくお願いいたします。
もしかして、パッケージが何か足りないのかな?

(追記)
その後、Ubuntu を使っていたら、全く反応しなくなって、どうしようもなくなり電源OFF。
再度、電源ONして、Ubuntu を起動し、Vivado を起動して、もう一度、やってみたら、Launch Runs の表示が正常にできました。
Vivado2017_3_bug_4_171129.png

何かUbuntu がおかしくなっていたようです。皆さん、ありがとうございました。自己解決できました。
ダイアログの中が透明になったら、リブートしたほうが良さそうです。。。
  1. 2017年11月29日 05:00 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Windows 10 Fall Creators Update をかけるとVivado 2017.3 が起動しない

今朝、Windows のUpdate があって、Vivado 2017.3 が動かなくなった。
今回のアップデートは、Windows 10 Fall Creators Update がかかってしまい、Vivado 2017.3 が起動しなかった。
これはなひたふさんのツィートで知ったのだが、Windows 10 Fall Creators Update をかけてしまうと、Vivado 2017.3 が起動しないということだ。
解決策はツィートにあるように、”AR# 69908 2017.3 - Windows 10 Fall Creators Update で Vivado が起動しない”を参照のこと。
AR#69908 を引用しておく。

1.(Vivado インストール ディレクトリ)\2017.3\bin\unwrapped\win64.o に移動する。
2.vivado.exe を vivado.exe.backup に名前を変更してバックアップをとる。
3.vivado-vg.exe をコピーして同じフォルダーに貼り付ける。
4.vivado-vg - Copy.exe を vivado.exe に名前を変更する。

  1. 2017年11月16日 14:40 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

白線追従走行用畳み込みニューラルネットワーク・システムをVivado 2017.3にアップデート

白線追従走行用畳み込みニューラルネットワーク・システムの製作7(白線間を走行)”で白線間を走行した白線間走行用畳み込みニューラルネットワークをVivado 2017.2 からVivado 2017.3 にアップデートしてみた。

ZYBO_0_172_8 フォルダのZYBO_0_153 プロジェクトをZYBO_0_173_8 フォルダにコピーして、Vivado 2017.3 でプロジェクトを読み込んだ。
IP Status 画面からIP をアップグレードして、論理合成、インプリメントしたところでエラー発生。
Vivado_2017_3_1_171022.png

エラー内容を貼っておく

[Place 30-640] Place Check : This design requires more Slice LUTs cells than are available in the target device. This design requires 19586 of such cell types but only 17600 compatible sites are available in the target device. Please analyze your synthesis results and constraints to ensure the design is mapped to Xilinx primitives as expected. If so, please consider targeting a larger device. Please set tcl parameter "drc.disableLUTOverUtilError" to 1 to change this error to warning.



結局、LUTのリソース使用量が 100 % を超えているということだった。

Vivado 2017.2 を立ち上げてみてみるとLUT は87 % だった。
Vivado_2017_3_2_171022.png

正確には 87.36 % だった。
Vivado_2017_3_3_171022.png

どのIP がそんなに増えてしまったのか?調査するためにOpen Synthesized Design をクリックして、Tools -> Report -> Report Utilization... をクリックして各IP のリソース使用量を調査した。
その画面を示す。
Vivado_2017_3_4_171022.png

ps7_0_axi_periph が 6043 LUTs は多い。
Vivado 2017.2 のプロジェクトと比べてみよう。
Vivado_2017_3_5_171022.png

Vivado 2017.2 はps7_0_axi_periph の使用LUT 数は1379 だった。
Vivado 2017.3 のps7_0_axi_periph のリソース使用量はVivado 2017.2 の ps7_0_axi_periph のリソース使用量に比べて約4.4 倍だった。

これはおかしいので、ps7_0_axi_periph をいったん削除して、もう一度、入れなおした。
その後、論理合成、インプリメント、ビットストリームの生成を行った。
成功した。レポートを示す。
Vivado_2017_3_6_171023.png

ハードウェアをエクスポートして、SDK を立ち上げて、cam_disp3_axis アプリケーション・プロジェクトを作成した。
Vivado_2017_3_7_171023.png

Program FPGA してから、cam_disp3_axis.elf を走らせたところカメラ画像が表示された。動作した。成功だ。

しかし、Vivado 2017.2 から Vivado 2017.3 へのアップデートでも危ないということが分かった。
2016 でもそうだったし、.2 から .3 へのアップデートが危ないということだろうか?
  1. 2017年10月23日 04:58 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Vivado 2017.3 をインストールした

遅ればせながら、Vivado 2017.3 をインストールした。
白線間走行畳み込みニューラルネットワーク・システムをZYBO Z7-20で動作させる3(ガボール・フィルタの追加)”のZYBO_Z7_0 プロジェクトをインプリメントしてみたが、問題なかった。
VirtualBox 上の Ubuntu 16.04 にもインストールしたが問題なくインストールできた。下はWindows のVivado 2017.3 のZYBO_Z7_0 プロジェクトと右側にVirtualBox 上の Ubuntu 16.04 にインストールしたVivado 2017.3 が見えているところだ。
Vivado_2017_3_1_171016.png

今のところ別に問題はないが、Vivado HLS の性能はCNN のコンパイルに関する限りでは、まだ Vivado HLS 2016.4 の方が良いと思う。
  1. 2017年10月16日 05:16 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Bash on Windows 10にVivado WebPACK 2017.2をインストールした2(日本語表示)

Bash on Windows 10にVivado WebPACK 2017.2をインストールした”の続き。

前回は、Xmingを起動してから、Bash on Windows 10 からVivado を起動したところ GUI 上でLinux バージョンのVivado を起動することができた。今回は、日本語を表示できるようにしてみた。

Xming の日本語表示についてはXfont をインストールしたり、いろいろとやってみたが、うまく行かなかった。ツィッターで聞いたところ、tethys さんが教えてくれた。ありがとうございました。

その方法は、「 [WSL]BashOnWindows(WSL)のGUIの日本語表示」の Windows10 に入ってる Windows フォントを使う方法だ。
下の2つのコマンドをBash on Windows 10 上で実行する。
sudo ln -s /mnt/c/Windows/Fonts /usr/share/fonts/WindowsFonts
sudo fc-cache -fv

Win10_Ubuntu_Vivado_14_170718.png

その後、vivado を立ち上げたところ、日本語が表示できるようになった。
Win10_Ubuntu_Vivado_15_170718.png

次に、X サーバーだが、Xming だとVivado を立ち上げてもWindow 10 のタスクバーに表示されるアイコンはXming のX のアイコンなのだが、VcXsrv というX サーバーを使用すると、Vivado のアイコンがタスクバーに表示されるようになった。(「WindowsでリモートのLinuxのGUIアプリを表示させる-Xサーバ VcXsrv」参照)
これも善し悪しで、Windows のアイコンと見分けがつかなくなるという欠点はあるのだが、VcXsrv を使うことにした。

次に日本語入力だが、結論から言うと、GUI 上での日本語入力は諦めて、Windows の方からSublime text 上で日本語入力することにした。
Bash on Windows 10 のroot は「【シェル芸人への道】Bash on Windowsを探検する」によると、

C:\Users\Masaaki\AppData\Local\lxss

にありました。
Win10_Ubuntu_Vivado_16_170719.png

Vivado のトップHDL のあるC:\Users\Masaaki\AppData\Local\lxss\home\marsee\HDL\project_1\project_1.srcs\sources_1\bd\base_zynq\hdl フォルダに行った。
Win10_Ubuntu_Vivado_17_170719.png

base_zynq_wrapper.vhd をWindow 10 上のSublime text で編集し、日本語を書きこんだ。
Win10_Ubuntu_Vivado_18_170719.png

Vivado 2017.2 上でbase_zynq_wrapper.vhd を開いてみると、Sublime text で編集した日本語が表示されている。
Win10_Ubuntu_Vivado_19_170719.png

日本語はWindow 10 上のSublime text で入力してもよいと思った。ただし、入力してもVivado には追加入力されたということを認識できないので、自分で論理合成結果をクリアする必要があるようだ。
  1. 2017年07月19日 05:06 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Bash on Windows 10にVivado WebPACK 2017.2をインストールした

Vengineerの戯言」ブログの「Bash on Windows 10でVivado 2017.2」でWindows 10のPowerShell で動作するUbuntu 16.04 上でVivado 2017.2 をインストールするという記事が載っていた。それを参照して、自分でもWindows 10 のUbuntu 16.04 にVivado WebPACK 2017.2 をインストールしてみた。

まずは、左下のウインドウアイコンを右クリックして、右クリックメニューからWindows PowerShell を起動した。
update, upgrade コマンドを入力する。
sudo apt-get update
sudo apt-get upgrade

Win10_Ubuntu_Vivado_1_170717.png

Xming は既にインストールしてあるので、Xming を立ち上げた。次に、x11-apps をインストールした。続けてJava をインストールした。
sudo apt-get install x11-apps
sudo apt-get install default_jre
sudo apt-get install default_jdk


カレント・ディレクトリにXilinx_Vivado_SDK_2017.2_0616_1_Lin64.bin を貼り付けて
sudo ./Xilinx_Vivado_SDK_2017.2_0616_1_Lin64.bin
を実行するとDISPLAY 変数をセットしないといわれてエラーだった。
export DISPLAY=:0.0
を実行して、もう一度、
sudo ./Xilinx_Vivado_SDK_2017.2_0616_1_Lin64.bin
を実行するとVivado のインストーラーが上がってきた。
Win10_Ubuntu_Vivado_3_170717.png

その後はLinuxでのインストールと同様に、インストール画面を表示されたので、WebPACKを選択して、インストールを開始した。
Win10_Ubuntu_Vivado_2_170717.png

インストール途中でエラーが出てしまった。今のインストール先は、/mnt/d/Xilinx ディレクトリだ。
Win10_Ubuntu_Vivado_4_170717.png

D: ドライブは十分に容量があるので、たぶん、行先のディレクトリが長すぎるのでは?と思う。
Win10_Ubuntu_Vivado_5_170717.png

今度はデフォルトのディレクトリパスの /opt/Xilinx にした。
Win10_Ubuntu_Vivado_6_170717.png

Win10_Ubuntu_Vivado_7_170717.png

インストール終了。成功した。
Win10_Ubuntu_Vivado_8_170717.png

Ubuntu16.04にVivado 2016.4をインストール”を参考に設定を行った。

gedit が無いのでインストールした。
sudo apt install gedit

gedit で .bashrc を編集する。
gedit .bashrc

.bashrc の下に以下の3行を追加した。
source /opt/Xilinx/Vivado/2017.2/settings64.sh
alias xsdk='env SWT_GTK3=0 xsdk'
alias vivado='env SWT_GTK3=0 vivado'

(2017/07/18:追記 export DISPLAY=:0.0 も追加しておいた方が良い)
Win10_Ubuntu_Vivado_9_170717.png

.bashrc の内容を反映。
source .bashrc

.Xilinx のオーナーを自分に変更する。
sudo chown -R marsee:marsee .Xilinx/

Vivado を起動した。
Vivado &
Win10_Ubuntu_Vivado_10_170717.png

Vivado が起動した。
Win10_Ubuntu_Vivado_11_170717.png

ZC702 のExample Project を生成してみた。
Win10_Ubuntu_Vivado_12_170717.png

論理合成、インプリメント、ビットストリームの生成も通った。
Win10_Ubuntu_Vivado_13_170718.png

ただし、日本語の表示と入力はまだできない。日本語を表示させるとトーフになってしまう。
  1. 2017年07月17日 08:00 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0
»