WindowsにVivado19.2を入れて、UVMを動かしてみた

先日、vivado 19.2が出たということで調べてみと、なんとSimulatorがUVM1.2対応してました。 そうとなれば、Vivadoを使わないといけないので、 備忘録として、Vivadoのインストールから、UVM simulationするまでの手順を以下にまとめます。

OS: Windows 10 Pro
Terminal: Power shell (本当はWSLを使いたかったが。。)

Vivadoインストール

  1. Xilinxのアカウントをサインイン、ログイン
  2. Xilinx Unified Installer 2019.2: Windows Self Extracting Web Installerをダウンロード
  3. ↑のインストーラを起動し、セットアップ
    • Webpackにすること(無料)
    • 12GBくらいダウンロードするので、2時間はかかると思います
    • USBドライバインストールはUSB ケーブル刺さってると停止する?ようなので外して置くこと

Downloadサイト: https://www.xilinx.com/support/download.html

Vivado simulator起動

以下参考サイトの通りに進めます! ただ、今回はWindowsなので、以下に示すrun.batを作成して実行しています。 (batスクリプトの仕様で、callがないと、xvlog(bat)に飛んで帰ってこないのでxvlogで停止してしまいます。)

参考元: Vivado シミュレータ (XSIM) が UVM をサポート - tkata117’s blog

  • run.bat
SET PATH=C:\Xilinx\Vivado\2019.2\bin;C:\Xilinx\Vivado\2019.2\lib\win64.o;%PATH%
SET XILINX_VIVADO=C:\Xilinx\Vivado\2019.2

call xvlog -sv tb_top.sv -L uvm
call xelab tb_top -L uvm
call xsim tb_top -R
  • tb_top.sv
module tb_top;
`include "uvm_macros.svh"
    import uvm_pkg::*;

    initial begin
        `uvm_info("info", "Hello World!", UVM_LOW)
    end

endmodule // tb_top   

あとがき

本当はQuartusを使い続けようかとも思ってたんですが、 持っているデバイスがMAX 10だけだし、Simulatorがmodelsimだし、 Xilinxの方がShareが大きいし、さらには、家には眠っているzynqの評価ボードがあるし笑、ということが重なり、Vivadoが使いたくなったんです。