virtualenvが入っていなかったので、
% sudo apt-get install python-virtualenv
にてインストールする必要がありました。
シミュレータは、lib.simulator.Simulatorの第二引数で設定すれば変更できるようですが、残念ながら、iverilogのみのようです。
もうちょっと追ってみたところ、
lib/python3.4/site-packages/veriloggen/lib/simulator.pyのrun関数を他のシミュレータに対応すればいいのですね!
iveriliogに対しては、
def _run_verilog(self, display=False, outputfile='a.out', include=None, define=None):が実行されますね。
この中で、includeとdefineのiverilogの引数に追加し、テンポラリファイルにVerilog HDLコードを吐き出し、そのVerilog HDLをiverilogでコンパイルし、outputfileで指定した"a.out"として実行ファイルを生成します。
その後、この実行ファイル(a.out)を実行しているようです。
同じことを、他のシミュレータ用にやれば、vcsやmodelsimでもできそうですね。
追記)(2015.11.08:11:20)
ということで、ModelSim ASEでもシミュレーションできるようにしてみました。
ということで、ModelSim ASEでもシミュレーションできるようにしてみました。
options = {'sim': "modelsim"} # {'sim': "vsim"} sim = lib.simulation.Simulator(test, **options)のように、第二引数に使用するシミュレータをして、modelsim あるいは vsim を指定できるようにしました。
また、テストベンチのトップ階層で
m = Module('top')のように'test'以外にも対応できるように
options = {'sim': "modelsim", 'top': 'top'}のように、'top':で指定できるようにしました。