FC2カウンター FPGAの部屋 Vivado

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

FPGAの部屋

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

Ubuntu16.04にVivado 2016.4をインストール

今日はUbuntu16.04にVivado 2016.4をインストールする覚書を書いておこうと思う。
ちなみに、私の環境は、VirtualBoxにUbuntu16.04をインストールしてある。

まずは、Xilinx Japan のサイトに行って、サポート→ダウンロードとライセンスを選択して、ダウンロードのサイトへ行く。

Vivado HLx 2016.4: WebPACK および Editions - Linux 用自己解凍型ウェブ インストーラー (BIN - 80.67 MB)をダウンロードする。
すると、Xilinx_Vivado_SDK_2016.4_0124_1_Lin64.bin がダウンロードできる。

Ubuntuでダウンロードしていれば、そのままだが、Windowsでダウンロードした場合は、Ubuntuに持っていく。

まずは、実行パーミッションを与える必要がある。
chmod +x Xilinx_Vivado_SDK_2016.4_0124_1_Lin64.bin

次に、Xilinx_Vivado_SDK_2016.4_0124_1_Lin64.bin を実行しよう。その際に、/opt/Xilinxに書くのでスーパーユーザーの権限が必要だ。
sudo ./Xilinx_Vivado_SDK_2016.4_0124_1_Lin64.bin

スーパーユーザーのパスワードを入力すると、Vivado 2016.4 Installer が起動する。
Ubuntu_Vivado_install_1_170311.png

Select Install Type では、Xilinx のUser ID とPassword を入れる。
Ubuntu_Vivado_install_2_170311.png

Accept License Agreements では、3つのチェックボックスにチェックを入れる。
Ubuntu_Vivado_install_3_170311.png

Select Ediition to Install では、私はVivado HL Webpack のラジオボタンを選択したが、これはお好みで。
Ubuntu_Vivado_install_4_170311.png

Vivado HL Webpack の画面では、Software Development Kit (SDK) のチェックを入れたほうが良い。
Ubuntu_Vivado_install_5_170311.png

後はデフォルトで良いと思うので、省略。
最初に5GB 以上ダウンロードしてからインストールを始めるので、時間がかかるのは覚悟した方が良い。

License Manager が起動するが、Vivado HL Webpack はライセンスは必要ないので、終了させておく。

インストールが終了しても、vivado コマンドを入れてもVivado は起動ないので、設定を行う。

LX Terminal から
gedit .bashrc
コマンドを実行する。

.bashrc の最後に
source /opt/Xilinx/Vivado/2016.4/settings64.sh
alias xsdk='env SWT_GTK3=0 xsdk'
alias vivado='env SWT_GTK3=0 vivado'

を追加する。
Ubuntu_Vivado_install_6_170311.png
なお、xsdk のスクリプトに関しては、「VivadoやXilinx SDKをLinux (Ubuntu) で動かすメモ (Ubuntu 16.04 LTS, Vivado 2016.4, 64bit環境)」から引用させて頂いた。これが無いと xsdk が起動できない。vivado もGTK3 を無効にしておかないと vivado から SDK を起動できない。

source .bashrc
で.bashrc の内容を反映する。これで、vivado コマンドが実行できるようになった。

ホームディレクトリの.Xilinx ディレクトリの一部がのユーザーとグループが root なので、ユーザーに変更する。ホームディレクトリに移動しておく(cd を実行すれば良い) なお、masaaki は自分のアカウント名に修正してください。
sudo chown -R masaaki:masaaki .Xilinx/

なお、ケーブル・ドライバがインストールされていないそうなので、下のコマンドでインストールした。これは、「VivadoやXilinx SDKをLinux (Ubuntu) で動かすメモ (Ubuntu 16.04 LTS, Vivado 2016.4, 64bit環境)」から引用させて頂いた。私のとディレクトリが違っているので、コマンドを書き換えた。
sudo /opt/Xilinx/Vivado/2016.4/data/xicom/cable_drivers/lin64/install_script/install_driverst/install_drivers
Ubuntu_Vivado_install_8_170311.png
エラーになってしまった。これは、ビットストリームのダウンロードに影響するので、最悪Windowsに持って行ってダウンロードすればよいと思うので、とりあえずはこのままとした。

LX Termnal 上で vivado とタイプすると Vivado 2016.4 が起動する。
Ubuntu_Vivado_install_7_170311.png

.bashrc で vivado を起動するときにGTK3 を無効にしておいたので、vivado でFile メニューから Launch SDK でSDK を起動しても起動できた。
Ubuntu_Vivado_install_9_170311.png

Ubuntu_Vivado_install_10_170311.png

ちなみにSDK単体は xsdk で、Vivado HLS は vivado_hls コマンドで起動できる。
  1. 2017年03月11日 08:06 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Vivado 2016.2 からVivado 2016.4 へアップグレード

昨日、Vivado 2016.4 が出たので、インストールを行った。

Vivado 2016.4 をインストールしたので、超音波距離センサで使っていたZYBO_0_162_7 フォルダのプロジェクトをVivado 2016.2 からVivado 2016.4 にアップグレードしてみることにした。Vivado 2016.2 から Vivado 2016.3 へのアップグレードは失敗しているので慎重に進めた。

まずは、ZYBO_0_162_7 フォルダのプロジェクトをコピー&ペーストして、ZYBO_0_164_7 フォルダと名前を変えた。

プロジェクトファイル xpr ファイルをダブルクリックして起動するとVivado 2016.4 が立ち上がった。

IP のアップグレードを行った。
Vivado_2016_4_ZYBO_0_1_161220.png

このまま、ビットストリームの生成を行った。やはり、リソース使いすぎエラーが出た。Vivado 2016.3 と同じようだ。この辺は直す気がないのかな?
Vivado_2016_4_ZYBO_0_2_161220.png

まずは、ブロックデザインを作り直してみようと思う。ブロックデザインをTCLスクリプトにエクスポートしてから、いったん削除して、TCLスクリプト起動して再度作り直してみよう。

File メニューからExport -> Export Block Design を選択してTCLスクリプトを作成する。
Vivado_2016_4_ZYBO_0_3_161220.png

Export Block Design ダイアログ。
Vivado_2016_4_ZYBO_0_4_161220.png

これでTCLスクリプトがエクスポートしできたので、ZYBO_0_wapper.v とZYBO_0 ブロックデザインを削除しよう。その2つを選択して、右クリックメニューからRemove File form Project... を選択した。
Vivado_2016_4_ZYBO_0_5_161220.png

Remove Sources ダイアログで、Also delete project local files/directories from disk にチェックを入れておくとファイルもディスクから消してくれる。
Vivado_2016_4_ZYBO_0_6_161220.png

さて次にTCLスクリプトを起動してZYBO_0 ブロックデザインを作成する。
Tcl Console を選択して、 cd でプロジェクトのあるフォルダに移動する。
Vivado_2016_4_ZYBO_0_7_161220.png

次に source ZYBO_0.tcl コマンドでZYBO_0 ブロックデザインを再生成する。
Vivado_2016_4_ZYBO_0_8_161220.png

無事にブロックデザインが再生成された。
Vivado_2016_4_ZYBO_0_9_161220.png

Address Editor も前のままだ。
Vivado_2016_4_ZYBO_0_10_161220.png

これでビットストリームの生成を行ったところ、同様のエラーになってしまった。
やはりだめか。。。それじゃ、AXI4-Lite 用のAXI Interconnect を作り直してみよう。

AXI4-Lite 用のAXI Interconnect を削除した。
Vivado_2016_4_ZYBO_0_11_161220.png

Run Connection Automation をクリックして、表示されたダイアログで、All Automation をチェックした。
Vivado_2016_4_ZYBO_0_12_161220.png

AXI4-Lite 用のAXI Interconnect が生成された。
Vivado_2016_4_ZYBO_0_13_161220.png

しかし、Address Editor のアドレスが変わっているので、修正した。最初にアドレスがかち合うと変更できないので、すべて43DX_0000 に変更してから、以前のアドレスに修正した。
Vivado_2016_4_ZYBO_0_14_161220.png

修正後にビットストリームの生成を行った。成功した。
Vivado_2016_4_ZYBO_0_15_161220.png

最初のブロックデザインの再生成が無駄か?というと、そうではない。実は、前に一度Vivado 2016.2 から Vivado 2016.4 へのアップグレードをやっていて、逆の手順でやったのだが、AXI4-Lite 用のAXI Interconnect を消してから再度生成しても、違うエラーが出てしまっていた。それでブロックデザインを消して、再生成したのだった。

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

これで、最初はベアメタル・アプリケーションでテストしたが、GDB でRun してもエラーが出てRun できなかった。System Debugge を選択しないとRun ができなかった。

SDK でFSBL を作り、BOOT.bin を作成した。devicetree.dtb はそのままで、Micro SD カードの BOOT.bin だけ入れ替えて、ZYBO に挿入して電源ON した。Ubuntu 上でも超音波距離センサのアプリケーションが起動して正常に距離を測定できた。カメラも表示できたので、完璧だ。
これでVivado 2016.2 からVivado 2016.4 にアップグレードできたようだ。
  1. 2016年12月21日 04:56 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Vivado 2016.2 からVivado 2016.3 へアップグレード

Vivadoを使用してZYBO_0_163_6フォルダのプロジェクトにRGB2HSV IPを追加3(SDK2)”でVivado 2016.3 への乗り換えはあきらめたはずだったが、ツィッターで複数に人に新規作成してアップグレードすることを勧められたのもあって、プロジェクトを新規作成してVivado 2016.3 へアップグレードすることにした。道のりは結構長かったです。。。

ブロックデザインを新規作成するととっても面倒なので、ブロックデザインを作成するTCLスクリプトを出力して、ブロックデザインを自動生成してもらおう。

最初に、Vivado 2016.2 のZYBO_0_162_6 フォルダのプロジェクトを開き、ブロックデザインを開いた。

File メニュー -> Export -> Export Block Design... を選択した。
vivado_2016_3_35_161024.png

Export Block Design ダイアログ。ZYBO_0.tcl という名前で出力される。
vivado_2016_3_36_161024.png

Vivado 2016.3 で ZYBO_0_163_6 プロジェクトを新規作成した。
vivado_2016_3_37_161024.png

先ほど出力したZYBO_0.tcl をZYBO_0_163_6 フォルダにコピー&ペーストした。
vivado_2016_3_38_161024.png

ZYBO_0.tcl を開いて、「set scripts_vivado_version 2016.2」を「set scripts_vivado_version 2016.3」に変更して、セーブした。
vivado_2016_3_39_161024.png

Vivado 2016.2 のZYBO_0_162_6 フォルダのIP フォルダをすべてZYBO_0_163_6 フォルダにコピーした。
vivado_2016_3_40_161024.png

IP Catalog を開いて、Add Repository を行った。先ほどコピー&ペーストしたIP をすべて選択した。
vivado_2016_3_41_161024.png

IP Catalog にすべてのIP が登録できた。
vivado_2016_3_42_161024.png

Tcl Console を開いて、ZYBO_0_163_6 フォルダに cd し、

source ZYBO_0.tcl

を起動した。
vivado_2016_3_43_161024.png

ZYBO_0 ブロックデザインが完成した。
vivado_2016_3_44_161024.png

Refresh IP Catalog をクリックした。
IP Status が表示された。すべてUpgrade できているのかな?
vivado_2016_3_45_161024.png

ZYBO_0 ブロックデザインのHDL Wapper を生成した。
vivado_2016_3_46_161024.png

ZYBO_0.xdc を新規作成して、ZYBO_0_162_6 フォルダのプロジェクトのXDC ファイルの中身をコピー&ペーストした。
vivado_2016_3_47_161024.png

論理合成、インプリメント、ビットストリームの生成を行った。
論理合成は、multiple block runs が最初に走って、各IP ごとに論理合成しているようだ。後で、AXI_IIC IP を更新して論理合成すると、そのIP だけを合成しているようだった。更新時の論理合成時間の短縮が図れているようだった。
vivado_2016_3_48_161024.png

インプリメントでエラー発生。LUT が足りないと言われている。どこかで見たエラーだ。
vivado_2016_3_49_161024.png

Utilization を見てみるとやはりAXI Interconnect のLUT 占有率が大きい。
vivado_2016_3_50_161024.png

Vivado 2016.2 のプロジェクトをVivado 2016.3 にアップグレードすると動作しなかった2(解決編)”と同様に、AXI Interconnect を削除して、もう一度、Run Connection Automation でAXI Interconnect を入れなおすとインプリメントが通った。ビットストリームの生成も行った。結果を示す。
vivado_2016_3_51_161024.png

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

cam_disp_lgh.c を作成した。

ZYBO にビットストリームをダウンロードして、cam_disp_lgh.elf を起動したところ、カメラ画像が表示された。
vivado_2016_3_52_161024.png

長かったが、やっとVivado 2016.3 に移行できた。
IP を更新したときの論理合成が速くなっているようなので、やはりVivado 2016.3 を使いたい。でもバグがたくさんあるものとして注意深く使うことにしよう。

最後に、cam_disp_lgh.c を貼っておく。

/* * cam_disp_lgh.c * *  Created on: 2016/10/22 *      Author: Masaaki */

#include <stdio.h>
#include <stdlib.h>
#include "xil_io.h"
#include "xparameters.h"
#include "sleep.h"

#include "xdmaw4gabor.h"

#define NUMBER_OF_WRITE_FRAMES    3 // Note: If not at least 3 or more, the image is not displayed in succession.

#define HORIZONTAL_PIXELS    800
#define VERTICAL_LINES        600
#define PIXEL_NUM_OF_BYTES    4

#define FRAME_BUFFER_ADDRESS 0x10000000
#define ALL_DISP_ADDRESS    (HORIZONTAL_PIXELS*VERTICAL_LINES*PIXEL_NUM_OF_BYTES)

void cam_i2c_init(volatile unsigned *mt9d111_i2c_axi_lites) {
    mt9d111_i2c_axi_lites[64] = 0x2// reset tx fifo ,address is 0x100, i2c_control_reg
    mt9d111_i2c_axi_lites[64] = 0x1// enable i2c
}

void cam_i2x_write_sync(void) {
    // unsigned c;

    // c = *cam_i2c_rx_fifo;
    // while ((c & 0x84) != 0x80)
        // c = *cam_i2c_rx_fifo; // No Bus Busy and TX_FIFO_Empty = 1
    usleep(1000);
}

void cam_i2c_write(volatile unsigned *mt9d111_i2c_axi_lites, unsigned int device_addr, unsigned int write_addr, unsigned int write_data){
    mt9d111_i2c_axi_lites[66] = 0x100 | (device_addr & 0xfe);   // Slave IIC Write Address, address is 0x108, i2c_tx_fifo
    mt9d111_i2c_axi_lites[66] = write_addr;
    mt9d111_i2c_axi_lites[66] = (write_data >> 8)|0xff;         // first data
    mt9d111_i2c_axi_lites[66] = 0x200 | (write_data & 0xff);        // second data
    cam_i2x_write_sync();
}

int main(){
    XDmaw4gabor xdma4g;

    // axis_switch_1, 1to2 ,Select M00_AXIS
    // Refer to http://marsee101.blog19.fc2.com/blog-entry-3177.html
    Xil_Out32((XPAR_CAMERA_INTERFACE_AXIS_SWITCH_1_BASEADDR+0x40), 0x0);
    Xil_Out32((XPAR_CAMERA_INTERFACE_AXIS_SWITCH_1_BASEADDR+0x44), 0x80000000); // disable
    Xil_Out32((XPAR_CAMERA_INTERFACE_AXIS_SWITCH_1_BASEADDR+0x48), 0x80000000); // disable
    Xil_Out32((XPAR_CAMERA_INTERFACE_AXIS_SWITCH_1_BASEADDR+0x4C), 0x80000000); // disable
    Xil_Out32((XPAR_CAMERA_INTERFACE_AXIS_SWITCH_1_BASEADDR), 0x2); // Commit registers

    // axis_switch_0, 2to1, Select S00_AXIS
    // Refer to http://marsee101.blog19.fc2.com/blog-entry-3177.html
    Xil_Out32((XPAR_CAMERA_INTERFACE_AXIS_SWITCH_0_BASEADDR+0x40), 0x0);
    Xil_Out32((XPAR_CAMERA_INTERFACE_AXIS_SWITCH_0_BASEADDR), 0x2); // Commit registers

    XDmaw4gabor_Initialize(&xdma4g, 0);
    XDmaw4gabor_Set_frame_buffer0(&xdma4g, FRAME_BUFFER_ADDRESS);
    XDmaw4gabor_Set_frame_buffer1(&xdma4g, FRAME_BUFFER_ADDRESS);
    XDmaw4gabor_Start(&xdma4g);
    XDmaw4gabor_EnableAutoRestart(&xdma4g);

    // mt9d111_inf_axis_0, axi_iic_0, bitmap_disp_cntrler_axi_master_0
    volatile unsigned int *bmdc0_axi_lites;
    volatile unsigned int *bmdc1_axi_lites;
    volatile unsigned int *mt9d111_axi_lites;
    volatile unsigned int *mt9d111_i2c_axi_lites;

    bmdc0_axi_lites = (volatile unsigned *)XPAR_BITMAP_DISP_CNTRLER_AXI_MASTER_0_BASEADDR;
    bmdc1_axi_lites = (volatile unsigned *)XPAR_BITMAP_DISP_CNTRLER_AXI_MASTER_1_BASEADDR;
    mt9d111_axi_lites = (volatile unsigned *)XPAR_CAMERA_INTERFACE_MT9D111_INF_AXIS_0_BASEADDR;
    mt9d111_i2c_axi_lites = (volatile unsigned *)XPAR_CAMERA_INTERFACE_AXI_IIC_0_BASEADDR;

    bmdc0_axi_lites[0] = (volatile unsigned int)FRAME_BUFFER_ADDRESS; // Bitmap Display Controller 0 start
    bmdc1_axi_lites[0] = (volatile unsigned int)FRAME_BUFFER_ADDRESS; // Bitmap Display Controller 1 start
    mt9d111_axi_lites[0] = (volatile unsigned int)FRAME_BUFFER_ADDRESS; // Camera Interface start (Address is dummy)

    // CMOS Camera initialize, MT9D111
    cam_i2c_init(mt9d111_i2c_axi_lites);

    cam_i2c_write(mt9d111_i2c_axi_lites, 0xba, 0xf00x1);      // Changed regster map to IFP page 1
    cam_i2c_write(mt9d111_i2c_axi_lites, 0xba, 0x970x20);        // RGB Mode, RGB565

    mt9d111_axi_lites[1] = 0// One_shot_mode is disabled

    return(0);
}

  1. 2016年10月25日 04:30 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Vivado 2016.2 のプロジェクトをVivado 2016.3 にアップグレードすると動作しなかった2(解決編)

Vivado 2016.2 のプロジェクトをVivado 2016.3 にアップグレードすると動作しなかった”の続き。

前回は、ZYBO_0_5 プロジェクトをVivado 2016.2 からVivado 2016.3 にアップグレードすると、回路が動作しなかった。今回は原因を追究してみた。

まずは、論理合成後の使用率を比べてみた。
Vivado 2016.3 の論理合成後の使用率を示す。
vivado_2016_3_14_161019.png

LUT、LUTRAM と FF の使用率が高い。

次に、Vivado 2016.2 の論理合成後の使用率を示す。
vivado_2016_3_15_161019.png

hiyuh さんのアドバイスで各IP ごとの使用率を見た。
Open Synthesized Design をクリックして、Report Utilization をクリックした。
上の図がVivado 2016.3 、下の図がVivado 2016.2 のReport Utilization を示している。
vivado_2016_3_16_161019.png
vivado_2016_3_17_161019.png

AXI Interconnect の prcessing_system7_0_axi_periph の使用率が全く違う。Vivado 2016.3 では、Silce LUTsは8057、Slice Resisters は11112 だが、Vivado 2016.2 では、Silce LUTsは910、Slice Resisters は743 だ。違いすぎる。

そこで、prcessing_system7_0_axi_periph をダブルクリックしてMinimize Area にしてみたが、Silce LUTs が 6000 程度にしかならなかった。
vivado_2016_3_18_161019.png

次に、 prcessing_system7_0_axi_periph をいったん削除して、Run Connection Automation をクリックして、もう一度、インスタンスすることにした。下の図は、削除したところだ。
vivado_2016_3_19_161019.png

Run Connection Automation ダイアログで、All Automation にチェックを入れて、すべてのAXI4 Lite インターフェースを接続した。
vivado_2016_3_20_161019.png

ブロックデザインの完成図。prcessing_system7_0_axi_periph は名前が ps7_0_axi_periph になった。
vivado_2016_3_21_161019.png

論理合成後の使用率は正常に戻ったようだ。それでも多少、Vivado 2016.2 よりも使用率が大きい。
vivado_2016_3_22_161019.png

AXI Interconnect の ps7_0_axi_periph の使用率も正常に戻った。
vivado_2016_3_23_161019.png

インプリメント、ビットストリームの生成を行った。正常に終了した。使用率も正常だ。
vivado_2016_3_24_161019.png

ハードウェアをエクスポートして、SDK を立ちあがた。
ハードウエア・プラットフォームが新しく生成されたので、古いハードウエア・プラットフォームとアプリケーション・プロジェクトを削除して、cam_disp_axis プロジェクトを新規作成した。
vivado_2016_3_25_161019.png

ZYBO にビットストリームをダウンロードして、アプリを起動すると、待望のカメラ画像がディスプレイに表示された。
やっと、うまく行った。

今回のAXI Interconnect は、Master ポートが14 で、Slave ポートが 1 の大きいものだったので、アップグレードしたときにおかしくなったのかもしれない?
ポート数が少ないものはうまく行っていた。いずれにせよ。アップグレード・ツールのバグなんじゃないか?と思う。
  1. 2016年10月20日 04:56 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Vivado 2016.2 のプロジェクトをVivado 2016.3 にアップグレードすると動作しなかった

Vivado 2016.2 で作ってある
Zybot で Gabor filter を使うためのZYBO_0_5 プロジェクト1
Zybot で Gabor filter を使うためのZYBO_0_5 プロジェクト2
のプロジェクトをフォルダごと丸ごとコピーして、ペーストし、フォルダの名前を ZYBO_0_162_5 から ZYBO_0_163_5 に変更した。

ブロックデザインを示す。
vivado_2016_3_13_161018.png

ZYBO_0_163_5 のフォルダのVivado のプロジェクト・ファイルをVivado 2016.3 で開いて、IP をアップグレードした。IP のアドレスも同一だった。
Vivado 2016.2 のAddress Editor を示す。
vivado_2016_3_11_161018.png

Vivado 2016.3 のAddress Editor を示す。
vivado_2016_3_10_161017.png

Vivado 2016.3 で論理合成、インプリメント、ビットストリームの生成を行った。
ハードウェアをエクスポートして、SDK を起動した。
ハードウェアプラットフォームが新規作成されていたので、cam_disp3_axis アプリケーション・プロジェクトを作り直した。
ビットストリームをダウンロードして、ソフトウェアをRun したが動作しなかった。
ZYBO の電源をOFFして、もう一度、ビットストリームをダウンロードして、ソフトウェアをDebug Run したが、やはり動かない。
どうやら、ビットマップ・ディスプレイ・コントローラ 0 のレジスタに値を書き込むところでエラーになっているようだ。
vivado_2016_3_9_161017.png

もう一度、Vivado 2016.2 のSDKを立ち上げて、ビットストリームをダウンロードして、ソフトウェアをRun したら、問題なく動作してカメラ画像をVGA 出力で見ることができている。
vivado_2016_3_12_161018.png

なんででしょう?
もっと他のプロジェクトをアップグレードして、動作するかどうか?を見る必要があるだろう?
Vivado 2016.3 で新規にプロジェクトを作ってみて、動作するかを見る必要もあるだろう?
  1. 2016年10月18日 04:35 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

Vivado 2016.3が出ました

Vivado 2016.3 が出ました。

不思議なことに2016/10/15 AM7:30 時点では、まだXilinx Japan のサイトには2016.3 は出ていなくて、www.xilinx.com のダウンロード・サイトにしかVivado 2016.3 ないことです。どうしてでしょう?日本はそう重要ではないということでしょうか?

中国のサイトにもVivado 2016.3 がありました。となると、そういうことかもしれません?

Vivado 2016.3 で何が一番変わったか?というと、と言ってもVivado HLS 2016.3 しかまだ触っていませんが。。。

私的には、プロジェクトを作るときのDevice Selection Dialog で、ARMプロセッサ・シングルコアのxc7z014s, xc7z007s がダイアログに現れるようになったことです。
vivado_2016_3_1_161015.png

Spartan-7 はダイアログになかったので、まだしばらくは出ないのだと思います。

これから、Vivado 2016.3 を使っていこうと思います。
リリース・ノートです。
Vivado Design Suite User Guide Release Notes, Installation, and Licensing
UG973 (v2016.3) October 5, 2016
  1. 2016年10月15日 07:46 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:2

Vivado 2016.2 が出ました

Vivado 2016.2 が出たので、インストールしました。
Vivado_2016_2_160610.png

リリースノートによると、デバイスサポートが増えたくらいのようです。

Vivado HLS 2016.2 もリリースノートの新機能に記述がなかったので、変更点は無いようです。
Vivado_HLS_2016_2_160610.png

たぶん、多少、バグフィックスはされていると思うので、2016.2 を使うことにしようと思います。
  1. 2016年06月10日 04:15 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0
»