isimをcliで呼んでみた

ISEについているisimは実はcommand line interfaceがある。これを使ってguiを使わずにシミュレーションしようぜっていう話。ISim User GuideとかISim In-Depth Tutorialとかを参考にしている。

isimはGUI modeとCLI modeがあって、CLI modeだとtclの対話環境があってそれを使う。走らせるtestが事前にあるならbatch scriptを走らせることもできる。そうじゃなくても短ければ標準入力からpipeとかで与えると動く。何も考えなければ

run all

とか

run 10ms

とか与えればよい。終わったら exit で抜けられる。

これだと波形が見れないが、debugするのであれば波形を見たい。vcdファイルを吐けば良いが、isimのvcd出力はverilog用っぽくて情報が欠けているようだ。そこでisimの波形のフォーマット(?)のwcfgとwdbを使うと良い。

こういうtclのbatchを書いて、(fadd_sim.tclとする)

$ ./fadd_sim -wdb fadd.wdb -tclbatch fadd_sim.tcl

のようなことをするとfadd_sim.wcfgとfadd.wdbが生成される。波形を見たいときはこんな感じで見ることができる。

$ isimgui -open fadd.wdb -view fadd_sim.wcfg