Xcelium とは?
Cadence 社が2017年に発表したシミュレーター。2016年に買収した Rocketick 社の並列シミュレーション技術を取り入れたらしいです。シングルコアとマルチコアの2つの実行モードがあり、シングルコアは従来(Incisive)の1.5~2倍、マルチコアだと3~10倍の高速化を実現できるとのこと。大規模開発や画像系の開発においてシミュレーションの高速化は非常にありがたいですね。Xcelium には新しい機能もいくつか追加されているようですが、今回はスルーします。
Incisive から Xcelium へ移行
Xcelium のドキュメントはほぼ読めていませんが、とりあえず実行コマンドが xrun なのは理解できました。習うより慣れろの精神でやってみます。Incisive Version: 15.2
Xcelium Version: 19.03
(1) Library を Xcelium 用にリコンパイル
今回試した環境では Xilinx Vivado 2018.2 でコンパイルした Library を使用していたので、Xcelium 用にコンパイルし直します。
Vivado 2018.2 を立ち上げて Tools → Compile Simulation Libraries... を選択。
Compile Simulation Libraries ウィンドウにて
Simulator: から Xcelium Parallel Simulator を選択。
Advanced の Simulator executable path: に xrun の実行パス (/<Xcelium install path>/tools.lnx86/bin) を指定。
その他は Incisive の時と同じ。
(2) cds.lib と hdl.var
Incisive 環境で使用していた cds.lib, hdl.var を (1) で作られた新しい cds.lib, hdl.var に置き換えます。
(3) 実行スクリプトを編集する
Xcelium のパスを通しておきます。今回は実行スクリプト内で環境変数を指定しました。
bash でしたので以下の一文を追加。
export PATH=/<Xcelium install path>/tools.lnx86/bin:$PATH
あとは実行コマンドを irun から xrun に書き換えただけです。
余談ですが、ncXXXX コマンドは xmXXXX に名前が変わっているようです。
例) ncvlog → xmvlog
(4) 実行してみる
xrun: *W,OPDEPRREN: Command Line Option (-XXXX) is deprecated. Use (-YYYY) instead.
上記のようなオプションが非推奨である旨の warning が出ましたが、正常に動いたと思われます。オプションの指定方法がいくつか変わっているようですね。現状はそのままでも認識してくれるようですが、Xcelium のバージョンが上がると認識しなくなるかもしれません。
移行はできたけれど
Incisive でおよそ50分かかっていたシナリオを Xcelium で実行したところ…なんと!45分で終わりました!ほとんど変わっていない…何故??とりあえず実行はできたので今回は良しとしておきます。
0 件のコメント:
コメントを投稿