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