2019年4月10日水曜日

Incisive の環境を Xcelium に移行してみた

Incisive Enterprise Simulator(IES) 15.2 が2020/12/31にサポート終了予定とのことで、Xcelium Parallel Simulator への移行を試みました。Xcelium の読み方はエクセリウムかな。



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 件のコメント:

コメントを投稿